關 閉

        新聞中心

        EEPW首頁 > 安全與國防 > 設計應用 > LED顯示屏動態顯示和遠程監控的實現

        LED顯示屏動態顯示和遠程監控的實現

        作者: 時間:2009-11-15 來源:網絡 收藏

        一般情況下,PC要與多個單片機89C51系統進行主從式通訊,為了區分各單片機系統,可以使89C51采用串口工作方式3,即11位異步接收/發送方式,該方式的有效數據為9位,其中第9位為地址/數據信息的標志位,其作用是使從機據此判斷發送的數據是否為地址,從而實現多機操作。但現在由于采用的是MSCOMM控件來實現PC機和單片機之間的通訊,這是一種標準的10位串口通信方式,即8位標準數據位和該數據的起始位、停止位各1位。因此二者格式不相符,故很難利用上述方案。因此可考慮將單片機串口設為工作方式1,即改為10位異步接收/發送方式來解決,其通訊流程如下:

          首先發通信開始標志,接著發送需要操作的單片機系統地址,然后發送顯示工作命令字,該命令包括2個字節,前一字節用于設定顯示方式和滾動方向,后一字節則用于設定顯示速度。再往下是傳送顯示內容的點陣數據,最后對數據進行校驗。該通訊規約非常簡便,能夠較好的解決上述問題,從而實現PC機與多單片機之間的主從式通訊及對顯示的控制。

          需要注意的是,當顯示內容需要改變時,為了避免在單片機串行中斷接收數據時,顯示屏出現亂碼,應使顯示屏暫不顯示(處于“黑屏”狀態),直到數據接收完全,串行中斷處理結束時再顯示。

          漢字字模的提取非常關鍵,本文的字模數據取自UCDOS下的字庫文件HZK16。關于這方面的介紹較多,文獻[2]給出了較為具體的在VC下提取漢字字模的方案,這里不再贅述。對于特殊字符或圖形點陣數據的提取,簡便的方法可以先做一個BMP文件,然后用一些取模軟件(如字模提取v2.1)來獲得。為了顯示方便,點陣數據的格式應為n×(16×8),不足要求的則應以0數據補充。

        b.動態效果模擬顯示。

          為了方便調節的顯示效果,筆者在PC機的控制界面上設計了顯示屏的模擬顯示,它同實際的顯示效果完全一樣。用戶可以設定顯示的模式,并調節顯示速度,然后在界面上對顯示效果進行預覽,同時還可以隨時修改和設定參數,因而十分方便簡捷。

          為此,可先在界面上描繪出虛擬的顯示屏,由于實際的顯示屏為160×16點陣,故須在界面 上設定相同的區域。

          實現效果的方法和以上幾種基本類似,這里以滾動顯示為例作一說明。對于需要滾動的文字,可以將其設置為位圖格式,暫存于內存中,然后利用VC 提供的位圖拷貝函數BitBlt將位圖復制到顯示位置。對于特殊字符或圖形,則可以直接利用BitBlt函數調用到顯示位置。然后在類CLEDDlg的 OnTimer函數中調用該函數,以實現文字的滾動顯示。另外,也可以通過設定不同的響應時間間隔來改變文字的滾動速度。

        4、結束語

        本文提出的實現LED點陣顯示屏的和控制的解決方案,已成功地應用于實際系統。如將該系統聯入計算機網絡,還可實現對顯示屏的


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 中宁县| 东平县| 郸城县| 马关县| 城步| 灵武市| 威海市| 张北县| 海阳市| 晋州市| 东辽县| 龙口市| 金山区| 兴山县| 桐庐县| 广州市| 分宜县| 宝清县| 兴和县| 凉山| 玉林市| 余干县| 铁岭县| 太保市| 泌阳县| 洮南市| 佛山市| 二连浩特市| 高唐县| 且末县| 夏邑县| 措美县| 汕尾市| 永清县| 江永县| 枣强县| 保德县| 长汀县| 胶南市| 安义县| 淮北市|