|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
大家?guī)涂纯春脝,我?251中斷怎么一點(diǎn)反映都沒(méi)有啊 |
| 作者:ccjchen 欄目:嵌入式系統(tǒng) |
這是我編的第一個(gè)程序,但是都快一個(gè)月了,還是沒(méi)有反應(yīng),請(qǐng)大家一定幫看看!其中硬件部分是沒(méi)有問(wèn)題的,因?yàn)橛腥擞脜R編實(shí)現(xiàn)過(guò)這個(gè)程序是用8251擴(kuò)展串口與電腦通信,其中用8251的Txrdy和Rxrdy或非產(chǎn)生中斷信號(hào)接89C52的T0端 #define _TEST_C_ #include "reg52.h" #include "stdlib.h" #include "absacc.h" #include "intrins.h" #include "test.h" #define uCHAR unsigned CHAR #define uint unsigned int #define COM8251 XBYTE[0x8701] #define DAT8251 XBYTE[0x8700] uCHAR data_temp[10]={0xAA,10,22,32,0,0}; uCHAR i = 0; uCHAR s; void initmcu(void); void wait(uCHAR p,q); void Trans8251() interrupt 1 using 2 { do { s = COM8251; }while((s&0x01)==0); DAT8251 = data_temp[i];//寫 i++; if (i==4) { i = 0; } } void main(void) { EA = 0; wait(11,82);//8251工作速度慢,每送一個(gè)控制字,等待一會(huì)兒延時(shí)2ms COM8251 = 0x00; wait(11,82); COM8251 = 0x00; wait(11,82); COM8251 = 0x00; wait(11,82); COM8251 = 0x40;//以上為8251復(fù)位部分 wait(11,82); COM8251 = 0x4e;//9600baud,1停止位,無(wú)校驗(yàn),8位數(shù)據(jù),X16 wait(11,82); COM8251 = 0x37; initmcu(); EA = 1; } void wait(uCHAR p,q) { uCHAR i,j; //(2*j+3)*i+4 for (i=p;i>0;i--) for (j=q;j>0;j--); } void initmcu(void) { TMOD = 0x06; //9600波特11.0592MHZ,方式2 TL0 = 0XFF; TH0 = 0XFF; IT0 = 0; IP = 0x02; TR0 = 1;ET0 = 1; } |
| 2樓: | >>參與討論 |
| 作者: ccjchen 于 2007/3/3 14:26:00 發(fā)布:
大哥們,救救我吧 我又在 中斷中加了TH0 = 0XFF;TL0 = 0XFF;這兩句話重載計(jì)數(shù)初值依然沒(méi)反應(yīng),天了,救救我吧! |
|
|
|
| 免費(fèi)注冊(cè)為維庫(kù)電子開(kāi)發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào) |