Matlab GUI的上位機與智能車的兩種實時通信
3 單片機與PC機串行通信
3.1 設(shè)計思想
MCA8HCS12G128單片機的軟件設(shè)計需要實現(xiàn)對程序的初始化、接收與發(fā)送串口信號、速度和位置數(shù)據(jù)的采集等功能。為了保證上位機采集數(shù)據(jù)的可靠性和穩(wěn)定性,防止出現(xiàn)丟包事件,在通信過程中約定了雙方的握手方法。在程序初始化以后,等待fwrite命令發(fā)送的握手信號0xFF。當單片機第一次接收到的信號為0xFF時,則握手成功,并開始運行電機和激光頭等子程序。在實驗過程中發(fā)現(xiàn)存在發(fā)送的第一組數(shù)據(jù)第一個字節(jié)丟失的現(xiàn)象,為了增強數(shù)據(jù)的可靠性,首先判斷數(shù)據(jù)包的前兩個字節(jié)是否為0xFF,是則剔除相應(yīng)字節(jié),分離出有效的數(shù)據(jù),再在回送的速度、激光傳感器的數(shù)據(jù)中嵌入兩個字節(jié)的握手信號0xFF,Matlab接收到串口的數(shù)據(jù)后進行相應(yīng)的處理。智能車控制器通信的總程序流程如圖3所示。本文引用地址:http://cafeforensic.com/article/170624.htm
數(shù)字通信相關(guān)文章:數(shù)字通信原理
通信相關(guān)文章:通信原理
評論