• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于ATmega128單片機的點陣廣告屏設(shè)計

      2015-04-12 00:00:00朱志強包軍衛(wèi)仲博朱凈霞王瑞
      現(xiàn)代電子技術(shù) 2015年2期

      摘 "要: 為了實現(xiàn)AVR單片機對LED點陣顯示系統(tǒng)的控制,采用ATmega128作為下位機MCU,通過接收上位機發(fā)送的顯示內(nèi)容和顯示模式的串行信號,實現(xiàn)16×32高亮點陣屏的一行多個文字或符號的顯示。系統(tǒng)實際運行穩(wěn)定,顯示效果良好,便于多塊點陣屏的擴展,作為高職學(xué)生的大學(xué)生實踐創(chuàng)新有較高的實踐意義。

      關(guān)鍵詞: LED顯示屏; AVR單片機; 上位機; 串行通信

      中圖分類號: TN964?34 " " " " " " " " " 文獻(xiàn)標(biāo)識碼: A " " " " " " " " " " " " " "文章編號: 1004?373X(2015)02?0056?03

      Design of LED matrix advertisement screen based on ATmega128 MCU

      ZHU Zhi?qiang, BAO Jun?wei, ZHONG Bo, ZHU Jing?xia, WANG Rui

      (Department of Electronic Information Engineering, Jiangyin Polytechnic College, Jiangyin 214400, China)

      Abstract: In order to control LED matrix screen systems by AVR SCM, the display of characters and symbols in one line on 16×32 highlight matrix screen was realized by using ATmega128 as the lower computer MCU, and receiving the display content and display mode serial signal form host computer. The system is stable and its display effect is good. It is convenient for expansion of more lattice display screen, and has high practical significance for innovative practice of higher vocational college students.

      Keywords: LED screen; AVR MCU; host computer; serial communication

      0 "引 "言

      隨著高亮LED技術(shù)的發(fā)展,LED點陣屏以其使用壽命長,顯示內(nèi)容方便靈活,性能穩(wěn)定等優(yōu)勢已經(jīng)逐步替換了傳統(tǒng)廣告牌,成為主流的廣告顯示產(chǎn)品[1]。目前高職應(yīng)用電子技術(shù)專業(yè)在開設(shè)單片機原理課程時大多使用51系列單片機作為載體,但51系列單片機只適合用作常規(guī)教學(xué),幫助學(xué)生理解單片機基本工作原理。本設(shè)計采用AVR單片機做為主控制器,設(shè)計并制作16×32點陣屏,不僅提高了學(xué)生對單片機的學(xué)習(xí)興趣,且作為創(chuàng)新實踐項目加深了學(xué)生對單片機系統(tǒng)的理解。

      1 "系統(tǒng)設(shè)計方案

      本系統(tǒng)采用PC端上位機通過串口通信控制下位機的方式進(jìn)行相應(yīng)內(nèi)容的顯示。通過PC端發(fā)送顯示方式的控制命令及顯示內(nèi)容的16進(jìn)制字模編碼,下位機實現(xiàn)相應(yīng)內(nèi)容的顯示。

      由于下位機是8位系統(tǒng),為節(jié)約資源顯示采用了行列掃描的動態(tài)顯示方式,且通過列線擴展本系統(tǒng)可以方便地構(gòu)成多塊點陣的大屏幕顯示。本系統(tǒng)只占用少量I/O口資源,為后續(xù)升級預(yù)留了空間,系統(tǒng)整體方案如圖1所示。

      lt;E:\王芳\現(xiàn)代電子技術(shù)201502\Image\02t1.tifgt;

      圖1 系統(tǒng)整體設(shè)計方案

      2 "硬件系統(tǒng)設(shè)計

      2.1 "下位機單片機選擇

      單片機是下位機系統(tǒng)的核心器件,也是整個顯示系統(tǒng)的核心控制部分。單片機的任務(wù)是和上位機進(jìn)行通信,并處理上位機發(fā)送的控制命令和顯示的具體內(nèi)容,再通過合適的掃描顯示方式經(jīng)驅(qū)動電路驅(qū)動LED點陣屏顯示[2],因此單片機的性能直接決定了該顯示系統(tǒng)的先進(jìn)程度。目前作為教學(xué),51系列的單片機是各大院校教學(xué)首選,通過學(xué)習(xí)51單片機主要讓學(xué)生理解單片機的片上資源和工作流程,雖此模式從20世紀(jì)90年代持續(xù)到現(xiàn)在,但仍是一個非常優(yōu)秀的教學(xué)模型。為培養(yǎng)學(xué)生的創(chuàng)新實踐能力,從系統(tǒng)的先進(jìn)性、靈活性、穩(wěn)定性角度出發(fā),應(yīng)該鼓勵學(xué)生采用更高級的單片機系統(tǒng),通過實踐,AVR系列單片機中的ATmega128單片機是比較可行的選擇。

      ATmega128單片機的功能基本上是AVR8位單片機中最強大的一款,學(xué)生掌握了這一款,其他型號也能觸類旁通。

      ATmega128單片機特點如下[4]:

      (1) 先進(jìn)的RISC結(jié)構(gòu),大多數(shù)指令可在1個時鐘周期內(nèi)完成;

      (2) 128 KB的可編程FLASH ROM,4 KB的E2PROM,4 KB的SRAM;

      (3) 通過JTAG接口對FLASH、E2PROM的編程;

      (4) 通過設(shè)置寄存器直接PWM輸出;

      (5) 8路10位精度的ADC;

      (6) 兩個可編程的通用串行口。

      結(jié)合以上優(yōu)點,下位機系統(tǒng)采用ATmega128能進(jìn)一步培養(yǎng)學(xué)生的創(chuàng)新實踐能力。

      2.2 "顯示電路設(shè)計

      LED點陣屏由多個發(fā)光二極管組成,本系統(tǒng)顯示為32×16點陣,分別由2個16×16點陣模塊擴展組成。一個16×16點陣模塊由四個8×8 LED基本模塊構(gòu)成,顯示模塊如圖2所示。

      lt;E:\王芳\現(xiàn)代電子技術(shù)201502\Image\02t2.tifgt;

      圖2 點陣顯示模塊

      由于點陣數(shù)目較多,為節(jié)約資源,本系統(tǒng)采用了行掃描和列掃描的顯示模式。

      列掃描電路采用的是串并轉(zhuǎn)換器74LS164[3],如果不采用譯碼電路完全依靠單片機的端口輸出來控制16×16的LED點陣屏顯示,需要32個端口。而采用譯碼電路后僅僅需要7~9個端口便可實現(xiàn)控制顯示,大大減少了I/O口的占用數(shù)目。行驅(qū)動電路采用8550PNP三極管,在驅(qū)動電路中起到提供驅(qū)動電流和選通開關(guān)的作用。本系統(tǒng)列掃描驅(qū)動電路采用串入并出的通用集成電路74HC595來作為數(shù)據(jù)鎖存。如圖3所示。74HC595是OD結(jié)構(gòu)的8位CMOS移位寄存器,輸出端具有可控的三態(tài)輸出鎖存結(jié)構(gòu),不但能用作串入并出,還能串行輸出控制下一級級聯(lián)芯片實現(xiàn)16~32路的擴展。

      lt;E:\王芳\現(xiàn)代電子技術(shù)201502\Image\02t3.tifgt;

      圖3 列掃描電路的級聯(lián)

      將4片74HC595進(jìn)行級連,共用同一移位CP及鎖存信號。于是,當(dāng)?shù)谝恍写@示的內(nèi)容經(jīng)過64個移位時鐘后便可將其全部移入74HC595中,此時便產(chǎn)生1個鎖存信號,用來將數(shù)據(jù)鎖在74HC595中,并在使能信號作用下,將串行輸入的數(shù)據(jù)并行輸出。由行掃描控制電路產(chǎn)生的信號使第1行LED導(dǎo)通,相當(dāng)于第1行LED的陽極都接1,因此第1行LED管的亮滅取決于74HC595中的鎖存信號。在第1行LED點亮的同時,再在74HC595中移入第2行需要顯示的數(shù)據(jù),隨后將其鎖存,同時由行掃描控制電路將第1行LED陽極接0關(guān)閉而接通第2行,使第2行LED做好點亮的準(zhǔn)備,如此循環(huán),當(dāng)?shù)?6行掃描過后再回到第1行,只要掃描的頻率能克服人眼的視覺殘留,就可形成一幅完整的文字或圖像。

      2.3 "通信電路設(shè)計

      本系統(tǒng)上位機和下位機通過串行口進(jìn)行通信,ATmega128單片機內(nèi)部有兩個可編程的通用串行口,本系統(tǒng)只需一個即可,只占用兩根口線即可實現(xiàn)通信,為了實現(xiàn)PC到單片機的通信,必須再加一個電平轉(zhuǎn)換器,由于本系統(tǒng)通信距離不是很遠(yuǎn),故選用RS 232標(biāo)準(zhǔn)總線接口,因此電平轉(zhuǎn)換器采用MAX 232實現(xiàn)TTL電平到RS 232電平的雙向轉(zhuǎn)換。通信電路如圖4所示[5]。

      3 "軟件系統(tǒng)設(shè)計

      系統(tǒng)的軟件設(shè)計要實現(xiàn)功能包括了上位PC機的顯示內(nèi)容的發(fā)送、下位機控制點陣屏輸出及與PC的通信。

      lt;E:\王芳\現(xiàn)代電子技術(shù)201502\Image\02t4.tifgt;

      圖4 串行通信電平轉(zhuǎn)換電路

      3.1 "上位機軟件設(shè)計

      為了縮短開發(fā)周期,在測試階段將待顯示的內(nèi)容通過字模軟件轉(zhuǎn)換成16進(jìn)制代碼串,上位機采用串口調(diào)試助手即可進(jìn)行串口通信。在與下位機進(jìn)行通信時,雙方都必須嚴(yán)格遵守相同的數(shù)據(jù)幀格式和波特率[6]。本系統(tǒng)在調(diào)試時數(shù)據(jù)的幀格式為1幀10位,包括1位起始位、8位數(shù)據(jù)位,1位停止位,發(fā)送時低位在前,高位在后。

      3.2 "下位機軟件設(shè)計

      AVR單片機主程序開始以后,首先是系統(tǒng)進(jìn)行初始化,包括設(shè)置串口通信的方式和波特率、設(shè)置定時器和中斷方式;然后以“從右移入滾動”效果顯示文字。由于單片機沒有停機指令,所以可以設(shè)置系統(tǒng)程序不斷的循環(huán)執(zhí)行上述顯示效果,程序流程如圖5所示。

      lt;E:\王芳\現(xiàn)代電子技術(shù)201502\Image\02t5.tifgt;

      圖5 下位機子程序流程

      8×8單元顯示屏接收上位機發(fā)送的數(shù)據(jù)信息和命令信息,并可將這些數(shù)據(jù)信息和命令信息不經(jīng)任何變化地再傳送到下一級顯示模塊單元中,因此顯示板可擴展至更多的顯示單元,用于顯示更多的顯示內(nèi)容,顯示子程序流程如圖6所示。

      lt;E:\王芳\現(xiàn)代電子技術(shù)201502\Image\02t6.tifgt;

      圖6 顯示驅(qū)動流程

      以顯示功能為例,程序?qū)崿F(xiàn)如下:

      void display() " " " " " " " " " " " " " " " " " " " " "http://顯示子函數(shù)

      {

      unsigned char i,ia,j,tmp;

      DATAOUT=0XFF; " " " " //置位高電平做準(zhǔn)備

      AB=0; " " " " " "http://將行數(shù)據(jù)位清0,準(zhǔn)備移位

      for(i=0;ilt;16;i++)

      { " " " " " " " " " " " " " " " " " //16行數(shù)據(jù)循環(huán)輸出

      SCK=0; " " " " " " " " //為行移位做準(zhǔn)備

      SCLT=0; " " " " "http://為列鎖存做準(zhǔn)備

      for(ia=4;iagt;0;)

      { " " " " " " " " " " " " //每行32個點,循環(huán)位移4 B

      ia??; " " " " " " " " " " " " " nbsp; " " //循環(huán)4次

      tmp=~cache[i*2+ia];

      for(j=0;jlt;8;j++)

      { " " " " " " " " " " " "http://循環(huán)兩次,每次移1 B,

      SCLH=0; " //為列移位做準(zhǔn)備

      DATA=tmpamp;0x01;

      tmpgt;gt;=1;

      //將數(shù)據(jù)緩沖右移一位,為下次輸出做準(zhǔn)備

      SCLH=1; //將DATA上的數(shù)據(jù)移入寄存器

      } " //移入單字節(jié)結(jié)束

      } " " " " " " "http://移入2 B結(jié)束

      SCK=1;

      SCLT=1;

      AB=1;

      }

      j=32;

      while(j??);

      SCK=0;

      SCK=1; " " " " " " " " "http://將最后1行數(shù)據(jù)移出

      }

      4 "結(jié) "語

      本系統(tǒng)設(shè)計時以AVR單片機為核心控制器,在上位機的發(fā)送命令下能實現(xiàn)32×16的點陣屏動態(tài)顯示,系統(tǒng)整體運行效果良好,顯示穩(wěn)定,達(dá)到設(shè)計要求。下位機MCU采用Atmega128單片機,程序編寫的靈活性和穩(wěn)定性優(yōu)于51單片機,對高職學(xué)生的大學(xué)生實踐創(chuàng)新有較高的實踐價值。

      參考文獻(xiàn)

      [1] 徐振方,孟艷花,王艷.基于AVR 單片機的LED顯示屏控制系統(tǒng)的研究[J].照明工程學(xué)報,2010,21(2):77?80.

      [2] 王靜霞.單片機應(yīng)用技術(shù)(C語言版)[M].北京:電子工業(yè)出版社,2009.

      [3] 李秀忠.基于單片機的LED顯示屏控制電路設(shè)計[J].現(xiàn)代電子技術(shù),2010,33(15):200?202.

      [4] 鄒清平,盧森幸.一種基于 ATmega32 控制MP3播放器的設(shè)計與實現(xiàn)[J].中國科技信息,2012(24):118?120.

      [5] 李朝青.PC機及單片機數(shù)據(jù)通信技術(shù)[M].北京:北京航空航天大學(xué)出版社,2001.

      [6] 張立科.單片機通信技術(shù)與工程實踐[M].北京:人民郵電出版社,2005.

      达尔| 威信县| 宁远县| 黄骅市| 菏泽市| 陈巴尔虎旗| 清徐县| 黄大仙区| 清水县| 丹巴县| 贡觉县| 基隆市| 滕州市| 盐津县| 海南省| 安庆市| 乌拉特后旗| 兴仁县| 农安县| 张掖市| 华安县| 井研县| 黎城县| 龙南县| 贡嘎县| 太谷县| 北海市| 阜宁县| 天峨县| 保康县| 巩留县| 元氏县| 霍州市| 内江市| 巴楚县| 徐闻县| 巴中市| 金华市| 曲水县| 松原市| 秭归县|