日韩在线不卡免费视频一区,日韩欧美精品一区二区三区经典,日产精品码2码三码四码区,人妻无码一区二区三区免费,日本feerbbwdh少妇丰满

關(guān)于使用定時器延時的溢出問題

使用的模板時硬漢的modbus rtu的從站代碼。硬件環(huán)境GD32F303,使用485通信。

問題描述:在115200波特率下,接收代碼的時候,會產(chǎn)生數(shù)據(jù)丟失的現(xiàn)象,基本2-3次會出現(xiàn)一次。在9600波特率下數(shù)據(jù)直接被打斷,數(shù)據(jù)沒有接收完成就會觸發(fā)定時器,導致接收完成。

分析結(jié)果:在定時器設(shè)置時,定時器設(shè)置最大的計數(shù)值為2000,會導致計數(shù)溢出,比較通道的定時器中斷直接被觸發(fā),導致數(shù)據(jù)不能正常接收。

解決方案:將定時器的計數(shù)上限改為最大值。疑問:在最大值的情況下,長時間運行的話也有可能產(chǎn)設(shè)在計數(shù)到上限附近的時候,也會產(chǎn)生溢出。

尷尬,寫的時候有想到了,因為定義的時16bit的變量,所以變量和計數(shù)值會同步溢出。

聲明:本內(nèi)容為作者獨立觀點,不代表電子星球立場。未經(jīng)允許不得轉(zhuǎn)載。授權(quán)事宜與稿件投訴,請聯(lián)系:editor@netbroad.com
覺得內(nèi)容不錯的朋友,別忘了一鍵三連哦!
贊 3
收藏 2
關(guān)注 11
成為作者 賺取收益
全部留言
0/200
成為第一個和作者交流的人吧