資料介紹
調(diào)研:一、經(jīng)過調(diào)研:1.1 客戶除了使用USART做串口通信,還開啟了定時(shí)器中斷來進(jìn)行數(shù)據(jù)采集.1.2 定時(shí)器的優(yōu)先級比串口接收的優(yōu)先級高.1.3 定時(shí)器處理數(shù)據(jù)操作也比較頻繁.1.4 客戶使用的STM32F1標(biāo)準(zhǔn)庫(版本V3.5.0).二、經(jīng)過問題復(fù)現(xiàn)和使用ST-LINK在線調(diào)試和定位發(fā)現(xiàn):2.1 在出現(xiàn)這個(gè)問題的時(shí)候,程序不斷的進(jìn)入串口接收中斷,不能夠運(yùn)行到main主函數(shù)處理其他任務(wù)了.2.2 發(fā)現(xiàn)ORE標(biāo)志為‘1’,也就說明程序是發(fā)生了串口溢出錯(cuò)誤.2.3 客戶在進(jìn)入串口中斷后會(huì)調(diào)用USART_GetITStatus(USART2, USART_IT_RXNE)來獲取RXNE的值.如果RXNE為1則去讀取DR數(shù)據(jù)寄存器的數(shù)據(jù),讀取后RXNE為0,但是ORE的標(biāo)志依然為1,依然進(jìn)入了串口中斷.三、經(jīng)過分析以及我們可以通過我們芯片的用戶手冊可以得到以下信息:3.1 程序不斷進(jìn)入串口中斷是因?yàn)镺RE標(biāo)志始終為1,沒有被用戶清除掉:從上圖紅色部分我們可以看到,如果串口接收中斷開啟了,那么ORE為1時(shí)就會(huì)產(chǎn)生中斷.3.2.從下圖我們可以看到,順序執(zhí)行對USART_SR和USART_DR的操作就會(huì)清除ORE的標(biāo)志,客戶在中斷中執(zhí)行了以下操作,那為什么ORE標(biāo)志還沒有被清除呢?(R1執(zhí)行了讀USART_SR操作,R2執(zhí)行了讀USART_DR操作).3.3 我們可以看手冊中下表的解釋:3.3.1 ORE表征的是一個(gè)歷史事件,當(dāng)ORE為1時(shí),表明至少有1個(gè)數(shù)據(jù)已經(jīng)丟失.3.3.2這有2種可能發(fā)生的情況,RXNE為1的情況R3和RXNE為0的情況R4,如下圖中的解釋.3.3.3我們從上圖可以看出,3.2圖中的R1+R2操作只能處理RXNE為1的情況;當(dāng)RXNE為0的特殊情況, 就是在讀序列器件(在USART_SR寄存器讀訪問和USART_DR讀訪問之間)接收到新的數(shù)據(jù),數(shù)據(jù)SR雖然被讀過了,但是overrun事件依然發(fā)生了,以上操作是不能夠處理的:3.4 因此我們要在應(yīng)用中對ORE標(biāo)志進(jìn)行處理,即當(dāng)判斷發(fā)生ORE中斷的時(shí)候,我們再讀一次USART_DR的值,這樣如果沒有新的Overrun溢出事件發(fā)生的時(shí)候,ORE會(huì)被清除,然后程序就不會(huì)因?yàn)镺RE未被清除一直不斷的進(jìn)入串口中斷了,代碼處理如下:結(jié)論:對于這種情況,我們可以看到USART串口接收中斷使能了,那ORE中斷也就開啟了;為了消除在通過讀序列(USART_SR/USART_DR)的過程中產(chǎn)生的溢出錯(cuò)誤,我們可以嘗試在應(yīng)用程序中需要針對ORE標(biāo)志做一個(gè)處理來清除ORE標(biāo)志,使得串口通信可以正常的繼續(xù)工作.建議客戶在做串口通信時(shí)需要增加幀檢驗(yàn)功能,如CRC校驗(yàn)等...,當(dāng)發(fā)生ORE時(shí),幀校驗(yàn)肯定是通不過的,不會(huì)造成從機(jī)誤響應(yīng).(mbbeetchina)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 一種無源諧波抑制裝置設(shè)計(jì) 0次下載
- 嵌入式:初次了解STM32的USART串口通訊(中斷方式)
- 一種無參考彩色噪聲圖像質(zhì)量評價(jià)方法 1次下載
- USART中斷方式接收無響應(yīng)問題的情況及其處理方法 5次下載
- 一種對4/5G鄰區(qū)缺失問題核查方法資料下載
- 中斷驅(qū)動(dòng)多任務(wù)--- 單片機(jī)(MCU) 下的一種軟件設(shè)計(jì)結(jié)構(gòu)資料下載
- 51單片機(jī)外部中斷的兩種觸發(fā)方式資料下載
- 教你一種抑制EMI的簡單方法資料下載
- 一種帶核方法的判別圖正則非負(fù)矩陣分解算法 30次下載
- 一起學(xué)習(xí)中斷處理程序資料下載
- STM32的中斷:搶占優(yōu)先級和響應(yīng)優(yōu)先級資料下載
- 使用6種中斷方法點(diǎn)亮一個(gè)LED的程序資料合集免費(fèi)下載
- 使用51單片機(jī)的中斷方式實(shí)現(xiàn)串口數(shù)據(jù)發(fā)送與接收的程序免費(fèi)下載
- 一種實(shí)時(shí)穩(wěn)像方法及其電路設(shè)計(jì) 7次下載
- 一種快速瞬態(tài)響應(yīng)的無片外電容LDO_孫建偉 5次下載
- 詳解單片機(jī)串口高效收發(fā)數(shù)據(jù)的實(shí)現(xiàn)方法 1695次閱讀
- 一種高效的串口收發(fā)思路及方案 574次閱讀
- 一種工業(yè)上常用改善動(dòng)態(tài)響應(yīng)的控制方法 875次閱讀
- 人工智能是一種改進(jìn)數(shù)據(jù)控制和處理的方法 3035次閱讀
- 一種通過組合天線接收無線電信號的接收系統(tǒng)設(shè)計(jì)方法詳解 3233次閱讀
- STM32單片機(jī)的USART接收數(shù)據(jù)問題解決方案 5967次閱讀
- 8051單片機(jī)的中斷響應(yīng)過程解析 9342次閱讀
- 單片機(jī)實(shí)現(xiàn)利用中斷復(fù)位的兩種方式 9390次閱讀
- 【新專利介紹】一種無磁感應(yīng)水表及其使用方法 3216次閱讀
- 一文詳解USART模塊接收中斷的問題處理 7628次閱讀
- 一文詳解ARM單片機(jī)三種中斷返回情況 2904次閱讀
- 一種制備近紅外光響應(yīng)的動(dòng)態(tài)褶皺的方法 6417次閱讀
- 介紹學(xué)習(xí)一種模擬信號的處理方式:對數(shù)處理 1w次閱讀
- ARM單片機(jī)三種中斷返回情況的分析與解決 1274次閱讀
- 一種提高系統(tǒng)響應(yīng)速度的SoC系統(tǒng)架構(gòu) 1163次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費(fèi)下載
- 0.00 MB | 1491次下載 | 免費(fèi)
- 2單片機(jī)典型實(shí)例介紹
- 18.19 MB | 95次下載 | 1 積分
- 3S7-200PLC編程實(shí)例詳細(xì)資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 11次下載 | 免費(fèi)
- 6100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 7基于單片機(jī)和 SG3525的程控開關(guān)電源設(shè)計(jì)
- 0.23 MB | 4次下載 | 免費(fèi)
- 8基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
- 0.11 MB | 4次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費(fèi)
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費(fèi)
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費(fèi)
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33562次下載 | 免費(fèi)
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費(fèi)
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費(fèi)
- 8開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21539次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537793次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191183次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183277次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138039次下載 | 免費(fèi)
評論
查看更多