娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

歷史上的今天

今天是:2025年07月10日(星期四)

2018年07月10日 | stm32f030串口與flash讀寫一起使用時發生卡機現象

發布者:心靈舞動 來源: eefocus關鍵字:stm32f030  串口與flash讀寫  機現象 手機看文章 掃描二維碼
隨時隨地手機看文章

   在使用stm32f030f4芯片時,用到串口和內部flash讀寫。無論串口(中斷方式和查詢方式)還是flash讀寫,在單獨使用時都沒有問題。可一旦兩者一起使用,便會出現芯片卡死現象。

   通過測試發現,一旦出現卡死現象,就無法完成flash擦除函數,因此首先推斷是在flash擦除函數FLASH_ErasePage(Erase_FlashAddr)內部出現死機現象,在進入該函數內部后,發現沒有任何語句會產生死機,與此發現推斷錯誤。

   突然想到flash操作需要一定的時間完成,如果有中斷不停的產生,也會出現卡機現象,而且flash操作也將無法進行。于是開始檢查是否有相關中斷沒有關閉。

      終于發現下面這個USART1->ISR寄存器中的ORE位: 

Bit 3 ORE: Overrun error
    This bit is set by hardware when the data currently being received in the shift register is
ready to be transferred into the RDR register while RXNE=1. It is cleared by a software,
writing 1 to the ORECF, in the USARTx_ICR register.
 An interrupt is generated if RXNEIE=1 or EIE = 1 in the USARTx_CR1 register.
 0: No overrun error
 1: Overrun error is detected
 Note: When this bit is set, the RDR register content is not lost but the shift register is
 overwritten. An interrupt is generated if the ORE flag is set during multibuffer
communication if the EIE bit is set.
 This bit is permanently forced to 0 (no overrun detection) when the OVRDIS bit is set in
the USARTx_CR3 register. 

 通過上面紅色字體我們可以發現,當RXNEIE = 1 OR EIE =1時,會只要出現Overrun情況,就能產生一個中斷!剛好串口接收中斷開啟條件符合!也就是說當我們開啟串口接收中斷后, 只要出現Overrun現象,就會產生一個ORE中斷,而其標志位OREVCF是通過software清0的,而這個標志位我并沒有在程序中清0!這個就是問題所在。

  在中斷中清除ORE標志位后,程序終于正常。

  在上面說明中可以注意到,通過置位OVERDIS標志位,就能強制清除ORE標志位。

  最后需要說明的是,ORE中斷其實和RXNE中斷是一樣的,都是void USART1_IRQHandler(void);這個也是通過測試發現的。這也是為什么之前一開始沒有懷疑中斷卡死的情 況,因為最開始測試時發現每次都能進入到void USART1_IRQHandler(void)中,但沒想到是那時進入的ORE中斷,而不是RXNE中斷產生的。

   最開始也測試到卡死時RXNEIE會被清零,所以很長時間一直糾結在重啟RXNEIE上面,而這個是沒有效果的。


關鍵字:stm32f030  串口與flash讀寫  機現象 引用地址:stm32f030串口與flash讀寫一起使用時發生卡機現象

上一篇:STM32入門學習之USART中斷(STM32F030F4P6基于CooCox IDE)
下一篇:STM32F030 中斷太頻繁導致死機

推薦閱讀

從行業需求來看:汽車和半導體等電子設備對機器人的需求增長顯著 從不同行業對工業機器人的需求來看,汽車以及設備(半導體等)領域增長顯著。但與此同時,其他行業對機器人的需求也一直攀升。 從工業機器人類型來看:驅動型和組裝、搬運型機器人最受青睞 從各行業所需要的機器人的類型來看,驅動型機器人、組裝和搬運型機器人使用最多。與此同時,和...
AMD最近的風頭可以說是一時無兩的,剛剛發布不久的第三代Ryzen CPU和Radeon顯卡除了受到消費者的熱捧外,AMD的股價也出現一輪強勢的上漲,并且分析師認為AMD股價還會有上漲的苗頭。有專業人士認為這些新產品加上即將推出的EPYC“羅馬”處理器足以將AMD推向更高的股價。新的CPU和APU將幫助AMD維持其臺式機處理器市場份額增長勢頭,推動場份額從2019年3月季...
性能的進化,都是智能座艙發展道路的一部分,而其中的引領者,一定是在行業領先的智能座艙相關零部件供應商——比如我們今天要聊的即將投入市場的延鋒XiM21智能座艙。延鋒,這家企業可能消費者并不熟悉,但它卻是全球最大的汽車供應商之一,在全球汽車零部件企業排行榜中排名第15。汽車內外飾、座艙電子、被動安全等,延鋒均有涉及,而智能座艙就是延鋒多...

史海拾趣

問答坊 | AI 解惑

PLC與變頻器關系

1、引言 在工業現場控制領域,可編程控制器(PLC)一直起著重要的作用。隨著國家在供水行業的投資力度加大,水廠運行自動化水平不斷提高,PLC在供水行業應用逐步增多。觸摸屏與PLC配套使用,使得PLC的應用更加靈活,同時可以設置參數、顯示數據、 ...…

查看全部問答∨

電子設計_深入淺出SPCE061A.rar

本帖最后由 paulhyde 于 2014-9-15 09:04 編輯 電子設計_深入淺出SPCE061A.rar  …

查看全部問答∨

大飛機計劃指南RTCA/DO-254

  隨著大飛機項目的立項,中國的航空事業掀開了嶄新的一頁。民用航空產品要投入運營,就必須取得適航當局頒發的適航證。     RTCA/DO-254《機載電子設備設計保障指南》是美國聯邦航空局(FAA)、歐洲航空安全局(EASA)、中 ...…

查看全部問答∨

無線數字音頻收發

誰有無線音頻收發電路圖(51單片機+WM8731數字A/D數字D/A+NRF24L01或其他NRF系列的),程序源代碼的,或著開發板的等等,如有,請與本人聯系.如需要人民幣交易的可以談談!謝謝!!!!QQ:525636485  …

查看全部問答∨

求Wince下的GraphEdit及MP4 codec

哪位好心人有請幫幫忙呀! MP4 codec只做測試用,非商業用途! Email:lovelife_821106@163.com…

查看全部問答∨

串口發送的數據全部變成0了,好奇怪!!頂也有分啊

定義了一個數組 xdata unsigned char ComInit[17]=0x02,0x00,0x11,0x03,0xAA,0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0xB9,0x03}; 每秒發送一次給PC機 sendString(ComInit, 17);  //發送函數 本來一切都正常,后來工程中 ...…

查看全部問答∨

在用鼎陽示波器什么情況下需要進行自校正?自校正有多大作用,它的精度能達到多少?

在用鼎陽示波器什么情況下需要進行自校正?自校正有多大作用,自校正后,精度能達到多少?…

查看全部問答∨

復習S3C2440+LINUX計劃

從大三開始一直在學習嵌入式LINUX,但是這學期開始就忙著找工作和其他的一些事情,所以就沒怎么弄了,準備寒假好好復習一下知識,包括2440的裸機程序,初步定為用KEILL開發,因為ADS著實有些太老了;嵌入式LINUX的應用程序,嵌入式LINUX的內核開發 ...…

查看全部問答∨

MSP-EXP430FR5739實驗板計劃

最近想做個USB轉ZIGBEE的通訊設備,計劃購買個MSP-EXP430FR5739實驗板接CC2520,呵呵,各位有否建議!…

查看全部問答∨
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 贵阳市| 江北区| 册亨县| 夏河县| 连平县| 浦东新区| 汶上县| 大姚县| 会昌县| 保亭| 永德县| 宜良县| 绿春县| 依安县| 洪江市| 瓦房店市| 亳州市| 新宁县| 长阳| 临沂市| 泽普县| 阳信县| 东方市| 江源县| 开阳县| 南康市| 华蓥市| 沙雅县| 宁波市| 北海市| 辽阳县| 盐边县| 青海省| 苗栗市| 城固县| 沁阳市| 黑河市| 宾阳县| 高要市| 石林| 弋阳县|