基于雙工方式的PC機與單片機之間的串行通信實現
(3)無線收發部分
無線收發部分由CC1100收發器組成,它將接收到的數據通過天線發射出去或從天線接收發送過來的數據。
(4)液晶顯示模塊
此處選用LCDl602液晶模塊,其內部的字符發生存儲器已經存儲了160個不同的點陣字符圖形,這些字符有:阿拉伯數字、英文字母的大小寫、常用的符號和日文假名等,每一個字符都有一個固定的代碼。
(5)鍵盤輸入模塊
在鍵盤中按鍵數量較多時,為了減少I/O口的占用,通常將按鍵排列成矩陣形式。在矩陣式鍵盤中,每條水平線和垂直線在交叉處不直接連通,而是通過一個按鍵加以連接。這樣,一個端口(如P1口)就可以構成4×4=16個按鍵,比之直接將端口用于鍵盤多出了一倍。由此可見,在需要的鍵數比較多時,采用矩陣法來做鍵盤是比較好的。矩陣式鍵盤的按鍵識別方法為行掃描法。此處選用4×4的矩陣鍵盤來輸入O~9的數字和a~f的字母。
3 軟件設計
本系統的軟件設計方面包括上位機程序和單片機程序的設計。上位機程序要實現的功能是在電腦上顯示一個操作界面,它可代替串口調試工具。
3.1 上位機程序
上位機程序可以用VB,VC++等語言來編程,但本方案采用比較方便的C#來編程實現,其流程圖如圖3所示。

3.2 單片機程序
單片機程序主要包括主程序、單片機發送子程序、單片機接收子程序、液晶顯示子程序、鍵盤輸入子程序五部分,均采用C語言進行模塊化編程。由于篇幅原因,下面只給出了單片機發送子程序和接收子程序,如圖4,圖5所示。

評論