|
|||||||||||
| 技術(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 |
初學(xué)51急~~幫幫我啊~~ |
| 作者:zhk_xbox 欄目:單片機(jī) |
幫我看看 我寫的程序 串口傳輸有問(wèn)題啊 =>我想 讓其他東西通過(guò)串口發(fā)東西給51,51在發(fā)回來(lái)。(自己剛開始學(xué)習(xí)C51所以隨便寫一個(gè)串口通訊的程序試試) 串口程序我是想用中斷完成,可是編譯后寫入51里串口中斷程序不能用,用軟件模擬也有問(wèn)題,板子上的串口通訊燈也不閃,我又在網(wǎng)上下了一個(gè)串口通訊的程序都可以用:(大家?guī)蛶兔Π。?br>void serial_interface(void) interrupt 4 using 3 { ACC=0x00; if(TI==1) { TI=0; ACC=0x00; } if(RI==1) { ACC=SBUF; RI=0; ACC++; TI=0; ES=0; SBUF=0X00; ES=1; _nop_(); _nop_(); _nop_(); _nop_(); TB8=RB8; SBUF=ACC; _nop_(); _nop_(); _nop_(); _nop_(); TI=0; } } void main(void) { TH0=0xfd; TL0=0xfd;//定時(shí)器0位波特率發(fā)生位9600@11.0592MHZ TMOD=0x12;//定時(shí)器1位波特率產(chǎn)生(方式2),定時(shí)器0用于定時(shí)10ms中斷(方式1) TCON=0x05;//外部中斷(如果要用的話)位負(fù)脈沖跳變出發(fā)方式 IE=0xff; //開中斷T0、T1、INT1. ET0=0; PCON=0x00;//電源管理為全工作狀態(tài), IP=0x00; //中斷優(yōu)先級(jí)為初始優(yōu)先級(jí) SCON=0xf0;//串行通訊位11位可變UART多機(jī)通訊,開接收 P0=0; P1=0;//接觸器初始狀態(tài):關(guān)斷 TR0=1;//開定時(shí)器0 TR1=1;//開定時(shí)器1 while(1){} } |
| 2樓: | >>參與討論 |
| 作者: kanprin 于 2005/12/12 8:27:00 發(fā)布:
定時(shí)器1的設(shè)置無(wú)初值,而且沒(méi)中斷服務(wù)(計(jì)數(shù)初值重裝載)。 |
|
| 免費(fèi)注冊(cè)為維庫(kù)電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào) |