|
|||||||||||
| 技術(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 |
240的C語言通信程序,進(jìn)不了中斷? |
| 作者:iehome 欄目:DSP技術(shù) |
我在做240的通信時(shí),編寫了下面一個(gè)簡(jiǎn)單的測(cè)試程序,讓 *SCITXBUF=' '了,卻始終進(jìn)不了中斷.查了幾遍也不知道為什么?大家能幫忙看看嗎?謝謝! #include "f240regc.h" #include "ioports.h" #define LEDS port000C ioport unsigned port000C; void initial() { *IFR=0x0ffff; asm(" setc SXM"); asm(" clrc OVM"); asm(" clrc CNF"); *CKCR1=0x00BB; *CKCR0=0x00C3; *SYSCR=0x40C0; *WDCR =0x006F; } void sci_init() { *SCICCR=0x17; /*外部接收/發(fā)送數(shù)據(jù) */ *SCICTL1=0x13; /*設(shè)定無同位,8個(gè)數(shù)據(jù)位,1個(gè)停止位 */ *SCICTL2=0x03; /*響應(yīng)RX中斷,TX中斷 */ *SCIHBAUD=00; *SCILBAUD=64; /*19200bps */ *SCIPC2=0x22; *SCICTL1=0x33; *SCIPRI=0x00; /*高優(yōu)先級(jí)中斷 */ } void interrupt INT1_ISR() { if(*SYSIVR==6)LEDS=0x0AA; enable(); } main() { disable(); initial(); kick_dog(); sci_init(); *IFR=0x0ffff; *IMR=0x01; //響應(yīng)INT1中斷 enable(); *SCITXBUF=' '; while(1); } |
| 2樓: | >>參與討論 |
| 作者: cj607 于 2005/9/17 21:48:00 發(fā)布:
一點(diǎn)看法 我也是最近學(xué)dsp,沒有自己編過程序,可我覺得你寫的程序和書上寫的不同,你可以照得書上的寫寫。 |
|
| 3樓: | >>參與討論 |
| 作者: cysmwander 于 2005/9/17 23:28:00 發(fā)布:
你在用C51的模式來寫DSP的程序! 你在用C51的模式來寫DSP的程序! 怎么可能會(huì)對(duì)啊! 240的中斷好象不是這樣寫的吧! |
|
| 4樓: | >>參與討論 |
| 作者: iehome 于 2005/9/18 11:29:00 發(fā)布:
240的中斷應(yīng)該如何寫 那240的中斷應(yīng)該如何寫呢?請(qǐng)高手指教.我是仿照2407來做的啊? |
|
| 5樓: | >>參與討論 |
| 作者: iehome 于 2005/9/19 14:20:00 發(fā)布:
240的C語言通信程序,還是進(jìn)不了中斷? 剛才我把*SYSIVR改為等于7,還是不行啊?是不是中斷程序,還要對(duì)一些寄存器進(jìn)行預(yù)處理啊? |
|
| 6樓: | >>參與討論 |
| 作者: iehome 于 2005/9/19 14:36:00 發(fā)布:
急啊? 在查看窗口中 *SCITXBUF=32,但是*SYSIVR,x=0x0020就不知道是為什么了? |
|
|
|
| 免費(fèi)注冊(cè)為維庫電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào) |