1、設置串口
開啟串口中斷
2、設置定時器
已知在freemodbus中默認定義:當波特率大于19200時,判斷一幀數據超時時間固定為1750us,當波特率小于19200時,超時時間為3.5個字符時間。這里移植的是115200,所以一幀數據超時時間為1750us
這里采用TIM2,TIM2掛載在ABP1上,主頻為72MHz。我們此處取預分頻系數72-1,可以得到對應的分頻頻率為1MHz,即0.000001s=0.001ms=1us,自動重載值設置為1750,得到超時時間1750us
開啟定時器的中斷
3、設置串口中斷優先級大于定時器中斷