日本精品久久-日本精品二区-日本精品二区-日本极品少妇-成人欧美一区二区三区黑人免费-成人欧美一区二区三区黑人免费

基于單片機的點陣式LED滾動漢字顯示屏仿真設計

來源:網絡

點擊:1371

A+ A-

所屬頻道:新聞中心

關鍵詞:點陣式,LED顯示屏,單片機,AT89C51

          1.引言

      點陣式LED組成的漢字顯示屏在公共場所應用非常廣泛。例如,車站發車時間提示、股票大廳中的股票價格顯示板、商場的活動廣告欄、候機廳的起飛時間表。點陣顯示器的特點是可以按照需要的大小、形狀和顏色進行組合,用單片機控制實行各種文字或圖型的變化,達到廣告宣傳和提示的目的。

      Proteus是一款新穎的嵌入式系統軟硬件設計仿真平臺,特別適用于單片機仿真,能夠在線、實時仿真多種類型的單片機,諸如MCS-51系列單片機、PIC單片機、AVR單片機等,能夠像硬件仿真器一樣進行軟硬件調試,而沒必要花錢去購買和維護價格不菲的仿真器,對于初學單片機的人來說,既減少了學習成本,又達到了良好的學習效果。

      2.硬件電路設計

      點陣式LED滾動漢字顯示屏硬件電路設計框圖如圖1所示。電路包括單片機、電源電路、時鐘電路、復位電路、驅動電路和LED點陣電路等。本設計的核心是利用單片機讀取顯示字型碼,通過驅動電路對16×16 LED點陣進行動態列掃描,以實現漢字的滾動顯示。本設計選用的單片機為ATMEL公司的AT89C52,顯示屏采用16×16 LED點陣。電源電路通過變壓整流元件為單片機和其他電路提供穩定的+5V工作電壓。時鐘電路是單片機的驅動電路,復位電路可在需要時,手動使單片機程序計數器復位清零。通過陽極驅動電路向16×16點陣送字型碼,本設計采用74LS273。通過陰極驅動電路對16×16點陣進行列掃描,本設計采用74HC138。

    圖1 LED顯示屏硬件電路設計框圖

    圖1 硬件電路設計框圖

      利用Proteus軟件設計點陣式LED滾動漢字顯示屏硬件電路原理圖如圖2所示。在Proteus軟件中,單片機模型本身包含了工作電源和可改變的工作頻率,因此在仿真時無需設計電源電路和時鐘電路。需要說明的是在Proteus軟件目前版本中還沒有1616點陣模塊,本設計中采用Proteus軟件中現有的8×8點陣模塊組合成一個16×16點陣模塊。從圖2中可以看出,1616點陣的陽極驅動由P0口經輸出緩沖器74LS273構成,在本設計中需要用兩片,分別送出上8行和下8行的字型碼。1616點陣的陰極驅動由P2口經74HC138譯碼后動態掃描16×16點陣的各列,本設計中需要四片74HC138譯碼器,循環掃描各列,顯示一個完整的漢字需要掃描32次。RP3為排阻,含有8個電阻,作P0口各位的上拉電阻,以保證P0口能夠輸出高電平。復位電路的作用是,在任何時刻可以手動復位單片機,使程序重新執行。

    圖2.LED顯示屏硬件電路原理圖

    圖2.硬件電路原理圖

      3. 軟件設計

      AT89C51單片機是8位機,每次只能送出8位數據,因此要向16×16點陣送出16行陽極驅動,需要送兩次,或先送上8行,或先送下8行,為了能夠實現每一列字型碼的完整顯示,采用74LS273進行鎖存,否則會出現字型殘缺現象。根據設計要求并結合圖2的硬件連接進行程序設計,程序設計流程圖如圖3所示。

      利用單片機C語言實現“2008北京歡迎您!”10個字的滾動顯示,阿拉伯數字和標點符號按16×8點陣編碼,漢字按16×16點陣編碼, “2008北京歡迎您!字型碼表如下:

      {0x00,0x00,0x0C,0x1C,0x10,0x24,0x10,0x24,0x10,0x44,0x10,0x84,0x0F,0x0E,0x00,0x00},

      {0x00,0x00,0x07,0xF0,0x08,0x08,0x10,0x04,0x10,0x04,0x08,0x08,0x07,0xF0,0x00,0x00},

      {0x00,0x00,0x07,0xF0,0x08,0x08,0x10,0x04,0x10,0x04,0x08,0x08,0x07,0xF0,0x00,0x00},

      {0x00,0x00,0x0E,0x38,0x11,0x44,0x10,0x84,0x10,0x84,0x11,0x44,0x0E,0x38,0x00,0x00},

      {0x00,0x00,0x0E,0x04,0x08,0x0C,0x08,0x0C,0x08,0x08,0x08,0x10,0xFF,0xFE,0x00,0x00},

      {0x00,0x00,0x3F,0xFC,0x41,0x02,0x42,0x02,0x06,0x02,0x0E,0x06,0x0C,0x0C,0x00,0x00},

      {0x00,0x00,0x20,0x04,0x20,0x08,0x27,0x98,0x24,0xB0,0x24,0x82,0xA4,0x81,0x64,0xFE},

      {0x24,0x80,0x24,0x80,0x24,0xA0,0x27,0xB0,0x60,0x1C,0x20,0x08,0x00,0x00,0x00,0x00},

      {0x28,0x04,0x24,0x08,0x22,0x32,0x21,0xC2,0x26,0xC2,0x38,0x34,0x04,0x04,0x18,0x08},

      {0xF0,0x30,0x17,0xC0,0x10,0x60,0x10,0x18,0x14,0x0C,0x18,0x06,0x10,0x04,0x00,0x00},

      {0x02,0x02,0x82,0x04,0x73,0xF8,0x20,0x04,0x00,0x02,0x3F,0xE2,0x20,0x42,0x40,0x82},

      {0x40,0x02,0x3F,0xFA,0x20,0x02,0x20,0x42,0x20,0x22,0x3F,0xC2,0x00,0x02,0x00,0x00},

      {0x01,0x00,0x02,0x04,0x0C,0x1C,0x3F,0xC0,0xC0,0x1C,0x09,0x02,0x16,0x02,0x60,0x92},

      {0x20,0x4A,0x2F,0x82,0x20,0x02,0x24,0x0E,0x22,0x00,0x31,0x90,0x20,0x0C,0x00,0x00},

      {0x00,0x00,0x00,0x08,0x1F,0xDC,0x3F,0x08,0x3C,0x00,0x30,0x00,0x00,0x00,0x00,0x00},

      {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}。

    圖3. LED顯示屏程序流程圖


    (a)主程序流程圖                    (b)中斷服務程序流程圖

    圖3. 程序流程圖

      動態掃描顯示程序代碼如下:

      while (1)

      {for (i=0;i<8;i++) //顯示左半邊屏幕

      { P0=*(p+offset+2*i);

      P2=i|0x90; //P2.4=1,P2.3=0 選中U3, 輸出掃描碼給U7

      delay();

      P0=*(p+offset+2*i+1);

      P2=i|0x08; //P2.4=0,P2.3=1 選中U2, 輸出掃描碼給U6

      delay(); }

      for (i=8;i<16;i++) //顯示右半邊屏幕

      { P0=*(p+offset+2*i);

      P2=(i-8)|0xC0; //P2.6=1 P2.5=0, P2.4=0 選中U5,輸出掃描碼U9

      delay();

      P0=*(p+offset+2*i+1);

      P2=(i-8)|0x20; //P2.5=1 P2.4=0, P2.3=0 選中U4,輸出掃描碼U8

      delay();

      } }

      4. 調試與仿真

      Proteus仿真時,單片機需要加載程序,加載程序為.HEX文件。本設計利用Keil &mu;Vision2, 在新建Keil項目時選擇AT89C52單片機作為CPU,將C語言源程序導入,在&ldquo;Options For Target&rdquo;對話窗口中,選中&ldquo;Output&rdquo;選項中的&ldquo;Create HEX File&rdquo;,編譯鏈接后就可以生成.HEX文件。在Proteus ISIS中,選中AT89C52并單擊鼠標左鍵,對AT89C52進行設置,設置單片機時鐘頻率為12MHz,按照正確的文件路徑加載.HEX文件。對單片機設置完畢后就可以開始仿真了。仿真過程中如有硬件問題可在Proteus ISIS中直接修改,如有軟件問題可在Keil &mu;Vision2中直接修改,通過Keil與Proteus的聯合調試就可以得到滿意的結果。本設計的仿真結果如圖4所示。

    圖4. LED顯示屏仿真結果

    圖4. 仿真結果

      5.結論

      利用Proteus實現了對點陣式LED滾動漢字顯示屏的仿真,完成了&ldquo;2008北京歡迎您!&rdquo;10個字的滾動顯示,達到了良好的設計效果。該仿真電路接近實際電路,可以直接由該電路利用相關軟件設計印制電路板,加上電源電路和時鐘電路,就可以制作出實際的點陣式LED滾動漢字顯示屏。通過前期仿真縮短了開發周期,降低了開發成本,達到事半功倍之成效。

      6.本文作者創新點

      本文作者創新點在于:在深入研究嵌入式系統軟硬件設計仿真平臺Proteus的基礎上,成功完成了對點陣式LED滾動漢字顯示屏的設計仿真,為單片機設計開發提供了一種新的方法和手段。

      參考文獻

      [1].韓志軍等.單片機應用系統設計[M].機械工業出版社,2004

      [2].周潤景等. Proteus在MCS-51&ARM7系統中的應用百例[M].電子工業出版社,2006

      [3].馬忠梅等.單片機的C語言應用程序設計[M].北京航空航天大學出版社,2006

      [4].劉樹中,孫書膺,王春平.單片機和液晶顯示驅動器串行接口的實現[J].微計算機信息,2007,02:137-138。

     

    (審核編輯: 智匯張瑜)

    聲明:除特別說明之外,新聞內容及圖片均來自網絡及各大主流媒體。版權歸原作者所有。如認為內容侵權,請聯系我們刪除。

    主站蜘蛛池模板: 福建省地图高清版全图可放大| 52bb| 张月个人资料| 黑势力| cctv16节目单| 韩绛| 石田亚由美| 她的伪装 电视剧| 高野人母美| 黄婉伶| 女生被艹网站| 红色诗集手抄报简单又漂亮| 柳堡的故事演员表| 周末父母电视剧cctv免费网| 如如123| 九龙城寨在线观看| 邵雨薇电影| 假面骑士01| 爆操女人逼| 尸语者 电视剧| 大浴女电视剧所有演员表| 《剪窗花》童谣| 男同视频在线| 辰巳ゆい| 三年电影免费完整版| 崔在焕| 哥哥啊啊啊| 内蒙古电视台节目表| 黎明电影| 《身边有特点的人》作文| 龅牙兔八哥| 假如爱有天意| 镍多少钱一公斤| 秦皇岛电视台| 花样厨神 电影| 邓为个人简历| 深流 电视剧| 金旭| 美女亲热视频| 男同性恋免费视频| 金马电影网|