新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 采用PIC單片機的LED點陣手寫屏設計

        采用PIC單片機的LED點陣手寫屏設計

        作者: 時間:2011-10-06 來源:網絡 收藏

          本文采用PIC 16F877A單片機為主要核心控制元件,設計了一個32×32 LED點陣模塊的書寫顯示屏。它主要由光筆模塊和點陣顯示模塊組成,光筆模塊利用光敏電阻的光電特性,實現微亮檢測功能。光筆反饋信號經放大器LM324比較后,送給單片機處理。32×32點陣顯示模塊、驅動模塊由74HC595外設驅動陣列和8位串行輸入/輸出移位寄存器ULN2803A組成。光筆通過顯示屏微亮掃描尋找坐標值,按鍵和LED指示燈可實現“點亮、劃亮、反顯、整屏擦除、筆畫擦除、連寫多字、對象拖移”等書寫顯示功能。

          系統系統總體構成

          本系統設計包括三大部分:PIC 16F877A單片機主控器、光筆控制器、點陣顯示屏。系統的結構如圖1所示。

         圖1 系統結構圖

          PIC系列單片機是完全集成的混合信號系統級芯片,具有與8051兼容的微控制器內核,與MCS-51指令集完全兼容。其內部還集成了數據采集和控制系統中常用的模擬部件和其他數字外設及功能部件,并包括A/D和D/A模塊,執行速度快,功能強大。

          光筆選用光敏電阻作為感應器件,根據光敏電阻的光電特性,光敏電阻兩瑞電壓因光電阻的變化而變化。電壓值經電壓比較器LM324比較后可輸出高/低電平。光電特性非線性易調節,且靈敏度較好。

          LED與數碼管同步使用,LED用于功能指示燈,數碼管用于32×32點陣LED模塊書寫顯示屏當前光筆所在的行/列坐標值。

          分析與計算

          (1)光筆選取與參數設計

          點陣用微亮的光進行掃描,光筆用來感應。當光筆感應到光時,通過程序可獲當前點陣光對應的坐標值。從而做出相對應的處理。光筆起著關鍵作用,其感應器件是光敏電阻。光敏電阻的光電特性如圖2所示。

          圖2 光敏電阻光電特性

          光敏電阻安裝在光筆筆頭,用于感應點陣掃描光。光筆電路圖如圖3所示。電路經過放大器LM324進行正相輸入/反相輸入電壓比較,輸出高低電位。經測量可知,在光照條件下,LM324輸出端為0V(RB0),光敏電阻兩端電壓為0V;無光時,光敏電阻兩端電壓為2.8V,LM324輸出端為高電位。由分壓公式可得出RP阻值為7360Ω。當光筆接收到不同光線時,只需調節電位器,光筆正常工作。所以,在不同環境下,只需調節電位器,點陣顯示屏一樣正常工作。

          圖3 光筆電路圖

          點陣屏驅動參數設計無現成的32×32點陣LED模塊,因此采用16塊8×8點陣拼成32×32點陣。但這樣占用單片機I/O過多,必須對其進行擴展。點陣工作電壓在1.5V~2.2V左右,驅動電流較大。

          (2)屏亮自動調節設計

          屏亮自動調節設計采用光敏電阻和LM317(三端可調正電壓穩壓器)實現屏亮自動調節。由光敏電阻光電特性原理可知,光敏電阻在不同光線照射下,阻值不一樣。根據此原理,光敏電阻與LM317可調電阻并聯。當光線不一樣時,LM317輸出不一樣的電壓阻值。屏亮自動調節電路如圖4所示。

          圖4 LID屏亮度自動調節電路

          LM317輸出電壓計算,Vout由調節端的總電阻R和電流I共同決定。其輸出電壓計算公式為:。這里通過改變電阻而改變電壓。

          (3)超時關顯示節電設計

          當光筆長時間(1~5min時間可由控制器輸入設定)未接觸顯示屏,能自動關閉顯示并進入休眠狀態。進入休眠狀態由程序控制,單片機進入休眠后,消耗電流在2mA以下。

          電路設計

          (1)點陣顯示屏電路設計

          32×32點陣LED顯示屏共有32個端口,如不驅動點陣,占用單片機I/O過多。這里采用74HC595(八外設驅動陣列)、ULN2803A(8位串行輸入/輸出移位寄存器)點陣行驅動和74HC154、7404點陣列驅動。共同完成32×32點陣LED顯示屏驅動。顯示屏行驅動電路如圖5所示、列驅動電路圖如圖6所示。僅僅用到8個I/O口,點用資源少,易控制并且顯示效果很好。

          圖5 顯示屏行驅動電路圖

          圖6 顯示屏列驅動電路圖

          (2)坐標顯示電路設計

          根據題目要求,在“點亮”功能下,光筆接融到顯示屏某點時,控制板同步顯示該點的坐標值。坐值標為數字,所以可采用四個數碼管作為顯示器件。采用74LS164擴展單片機I/O口,其電路如圖7所示。共有四套這樣的電路,其中兩套用于X軸顯示,另外兩套用于Y軸顯示。

         圖7 坐標顯示電路

          軟件設計

          該系統對軟件設計要求高,大部分功能只能由軟件完成。因程序量大,時間有限,采用C語言編程,這樣就大大提高了程序移值性問題,提高了編程效率。編程關鍵點在于微亮掃描與捕捉儲存,如圖8所示。

          圖8 掃描與儲存部分流程圖

          總結

          本文所設計的32×32點陣LED模塊書寫顯示屏,應用光敏電阻的光電特性,對光進行檢測感應,反饋給單片機,通過處理可實現“點亮、劃亮、反顯、整屏擦除、筆畫擦除、連寫多字、對象拖移”等書寫顯示功能。



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 丹寨县| 靖江市| 右玉县| 开平市| 蒙自县| 平远县| 苍溪县| 菏泽市| 蒲城县| 七台河市| 承德县| 巴东县| 布拖县| 开原市| 平舆县| 福泉市| 丘北县| 宝山区| 嘉善县| 林州市| 连州市| 贡觉县| 田东县| 长顺县| 郧西县| 内乡县| 伊春市| 澳门| 化德县| 浙江省| 金山区| 稷山县| 岳池县| 郓城县| 特克斯县| 富源县| 财经| 三亚市| 环江| 缙云县| 荥阳市|