新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 一種基于狀態機的串口通信協議的設計與實現

        一種基于狀態機的串口通信協議的設計與實現

        作者: 時間:2012-05-18 來源:網絡 收藏

        3

        下位機采用ATMEL公司的AVR系列單片機ATmega168作為其核心控制單元;上位機軟件采用Delphi 7.0編寫,Delphi 7.0是Borland公司開發的Windows平臺的面向對象的快速應用程序開發工具。本上位機程序采用Delphi開發,主要考慮到Delphi易于多線程編程。另外,Delphi開發程序的簡單、高效,也是上位機軟件選擇其作為開發工具的重要原因。

        包括發送與接收兩部分。在本系統中,下位機負責發送數據,上位機負責接收數據,而另一種情況:下位機接收、上位機發送,其處理方法與前面一種相似。因此,這里僅介紹下位機發送數據、上位機負責接收數據的

        下位機發送程序由于不考慮機,實現較為簡單,其示例代碼如下:

        j.jpg

        c.JPG

        上位機軟件中,當接收到數據時,控件會觸發一個事件,在事件處理代碼中應及時將收到的數據存入接收沖區,同時不應該把串口協議接收部分的代碼放置在此事件中,否則后面到來的數據可能因為前面先到的數據沒有及時處理完畢而被沖掉,導致數據丟失。因此,在上位機軟件運行時,應該啟動一個Windows線程,用于不斷檢測接收緩沖區是否為空,不為空時則對緩沖中的數據進行處理,創建一個名為TBufferThread的線程類:

        e.JPG

        f.JPG

        數字通信相關文章:數字通信原理


        通信相關文章:通信原理




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 泗阳县| 满城县| 墨江| 张家港市| 兰考县| 泽州县| 临泉县| 遂平县| 双流县| 锦州市| 屏南县| 普格县| 安康市| 崇信县| 太保市| 徐汇区| 延寿县| 邢台市| 印江| 房产| 皮山县| 棋牌| 绥宁县| 永城市| 西青区| 壶关县| 大名县| 韶关市| 阿坝| 蓬溪县| 二连浩特市| 哈尔滨市| 清水县| 和平县| 和顺县| 滁州市| 绵阳市| 临夏市| 鹰潭市| 贵德县| 正定县|