|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
請問各位PIC高手,在使用PIC USART異步方式時, |
| 作者:mllzs 欄目:單片機(jī) |
請問各位PIC高手,在使用PIC USART異步方式時,標(biāo)志OERR及FERR報錯與 讀取RCREG的數(shù)據(jù)如何協(xié)調(diào)? 我自己寫了一段代碼請大家指點(diǎn)一二: UartBuf:為串口緩沖區(qū) comflag.wrtpt:為向串口寫指針 comflag.rdpt:為從串口緩沖區(qū)讀取數(shù)據(jù)指針 void UartRc (void) { unsigned CHAR TEMP=0; if(RCSTAbits.OERR) { RCSTAbits.CREN=0; RCSTAbits.CREN=1; return; } TEMP=RCREG; TEMP=RCREG; if((unsigned CHAR)((comflag.wrtpt+1)%MAXUARTBUF)==comflag.rdpt) //緩沖區(qū)滿 return; UartBuf[comflag.wrtpt]=TEMP; comflag.wrtpt=(comflag.wrtpt+1)%MAXUARTBUF; } |
| 2樓: | >>參與討論 |
| 作者: bolofeng 于 2003/12/16 13:00:00 發(fā)布:
幀格式錯,讀RCREG返回即可。 if(RCSTAbits.FREE) { RCREG=RCREG; return; } |
|
| 3樓: | >>參與討論 |
| 作者: mllzs 于 2003/12/16 13:37:00 發(fā)布:
To bolofeng 如果OERR出錯,是象我這樣處理的嗎? |
|
| 4樓: | >>參與討論 |
| 作者: bolofeng 于 2003/12/17 15:39:00 發(fā)布:
對 |
|
|
|
| 免費(fèi)注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |