• <del id="qqie6"><sup id="qqie6"></sup></del>
  • <tfoot id="qqie6"></tfoot>
  • <ul id="qqie6"></ul>
  • 產(chǎn)品推薦:水表|流量計|壓力變送器|熱電偶|液位計|冷熱沖擊試驗箱|水質(zhì)分析|光譜儀|試驗機|試驗箱


    儀表網(wǎng)>技術中心>技術原理>正文

    歡迎聯(lián)系我

    有什么可以幫您? 在線咨詢

    基于單片機和可編程邏輯器件的LED顯示屏顯示

       2012年05月23日 16:08  
      LED顯示屏主要由電流驅動電路及LED點陣陣列、控制系統(tǒng)和PC端管理軟件三部分構成(圖1)。控制系統(tǒng)負責接收、轉換和處理各種外部信號,并實現(xiàn)掃描控制,然后驅動LED點陣顯示需要的文字或圖案。控制系統(tǒng)作為LED顯示屏的核心部分,直接決定了顯示屏的顯示效果和性能的優(yōu)劣。本文詳細分析采用VerilogHDL對ATF1508AS進行編程,實現(xiàn)雙口RAM訪問和產(chǎn)生LED點陣驅動電路所需的各種時序信號。
      
      1、LED顯示屏的基本結構及關鍵技術
      
      本系統(tǒng)設計中,控制系統(tǒng)采用單片機+CPLD的方案來實現(xiàn),整個控制系統(tǒng)可分為:信號接收及處理模塊和CPLD的掃描控制模塊和LED點陣驅動模塊,如圖1所示。本系統(tǒng)的關鍵技術是使用雙口RAM和CPLD芯片,解決LED顯示屏中高速數(shù)據(jù)傳輸和快速掃描控制的難題,大大提高了動態(tài)顯示的刷新率。
      
      信號接收與處理模塊的功能是AT89S52單片機通過串口接收PC送來的點陣信息,同時對點陣信息做各種不同的處理。利用雙口RAMIDT7007在單片機和ATF1508AS之間以共享的方式建立高速的數(shù)據(jù)交換通道。
      
      CPLD的掃描控制模塊采用ATF1508AS芯片實現(xiàn)。其功能是從雙口RAM讀取點陣信息,串行化后送顯示掃描驅動電路,同時輸出各種所需的控制信號。CPLD具有掃描速度快,延時短等特點,克服了單片機由于傳輸速率慢而造成在大屏幕顯示時產(chǎn)生的閃爍效應。
      
      2、基于CPLD的掃描控制模塊的設計
      
      2.1設計思想
      
      本模塊的功能是從存儲器中讀取數(shù)據(jù),將數(shù)據(jù)輸送到顯示屏體上,同時產(chǎn)生各種控制信號。時序產(chǎn)生模塊由兩部分構成,一是產(chǎn)生訪問雙口RAM的時序,二是產(chǎn)生LED顯示屏接口所需的各種信號。
      
      硬件電路我們采用較常見的CPLD芯片ATF1508來實現(xiàn)控制系統(tǒng)中的時序產(chǎn)生部分。CPLD是一種具有豐富的可變成I/O引腳的可編程邏輯器件,不僅可以實現(xiàn)常規(guī)的邏輯器件功能,還可以實現(xiàn)復雜而*的時序邏輯功能。軟件我們采用VerilogHDL語言來進行設計。VerilogHDL是用于邏輯設計的硬件描述語言,已成為IEEE標準。利用VerilogHDL語言對ATF1508AS進行編程,實現(xiàn)掃描控制模塊所需的功能。
      
      掃描控制部分的原理電路如圖2所示,ATF1508AS是核心部分,需要根據(jù)系統(tǒng)需要定義ATF1508AS的各個I/O端口,下面是I/O端口定義和內(nèi)部寄存器定義的VerilogHDL語言代碼。
      
      moduleLedSequ(color,datain,addrout,CE,OE,SEMR,RWC,sdr,sdb,sck,le,oe1,cs,clk,counter);
      
      inputclk;//系統(tǒng)時鐘
      
      input[7:0]datain;//RAM數(shù)據(jù)輸入
      
      input[1:0]color;//顏色控制
      
      output[13:0]addrout;//地址輸出口
      
      outputSEMR,RWC;
      
      outputCE,OE,sdr,sdb,sck,le,oe1,cs;
      
      output[3:0]counter;
      
      reg[3:0]hcnt;//38譯碼器計數(shù)器
      
      reg[7:0]data1;//數(shù)據(jù)寄存器
      
      reg[3:0]counter;//38翻碼器輸出端
      
      regSEMR,RWC;
      
      regSDA,SDC;
      
      reg[13:0]addrout,addr;//addr地址計數(shù)器
      
      reg[3:0]state;//狀態(tài)寄存器
      
      reg[2:0]shcnt;//移位脈沖讀數(shù)器
      
      regCE,OE,sdr,sdb,sck,le,oe1,cs;
      
      reg[8:0]byte;
      
      parameters0=1'd0,s1=1'd1,s2=1'd2,s3=1'd3,s4=1'd4,s5=1'd5;//狀態(tài)常量
      
      2.2訪問雙口RAM時序的產(chǎn)生
      
      IDT7007是具有32KB的雙口RAM電路,與ATF1508AS的連接電路如圖2所示,其中:為片選信號,為讀寫控制信號,為輸出使能信號,A0R-A13R為右端口地址總線,D0R-D7R為右端口數(shù)據(jù)總線,其右端口讀寫時序如圖4所示。我們采用有限狀態(tài)機實現(xiàn),其基本工作原理是:S0狀態(tài)進行初始化,S1狀態(tài)時ATF1508AS首先輸出地址信號addrout,然后置相有效,S2狀態(tài)讀取雙口RAM的數(shù)據(jù),并存儲到內(nèi)容寄存器datain中,從而完成雙口RAM的讀數(shù)據(jù)過程。下面給出ATF1508AS讀取雙口RAM數(shù)據(jù)的主要代碼:
      
      always@(posedgeclk)
      
      begin//每個時鐘周期,狀態(tài)變化一次
      
      case(state)
      
      s0:begin//初始化狀態(tài)
      
      CE=1'b0;//IDT7007片選
      
      OE=1'b1;//IDT7007讀選通
      
      le=1'b0;
      
      oe1=1'b0;
      
      cs=1'b0;
      
      addr=14'b0;
      
      SEMR=1'b1;//IDT7007置1有
      
      RWC=1'b1;//寫控制1
      
      hcnt=4'b0000;
      
      counter=4'b0000;
      
      state=s1;
      
      end
      
      s1:begin//輸出RAM地址
      
      CE=1'b0;
      
      addrout=addr;//輸出地址
      
      OE=1'b0;
      
      SEMR=1'b1;
      
      RWC=1'b1;
      
      shcnt=3'b000;
      
      state=s2;
      
      end
      
      s2:begin//讀雙口RAM數(shù)據(jù)
      
      oe1=1'b0;
      
      data1=datain;
      
      state=s3;
      
      end
      
      ……(顯示掃描及LED驅動代碼部分)
      
      endcase
      
      end
      
      2.3LED顯示驅動時序信號的產(chǎn)生
      
      CPLD與LED點陣的驅動電路接口如圖所示,其中:CS為3-8譯碼器片選信號;OE為BMI5026輸出使能信號,控制LED點陣是否能被點亮;LE為驅動芯片數(shù)據(jù)鎖存信號;sck為移位脈沖,將CPLD串行輸出的紅綠數(shù)據(jù)串行移入MBI5026(移位寄存器);A-D為雙3-8譯碼器構成的4-16譯碼器的數(shù)據(jù)輸入,實現(xiàn)顯示行選通控制;sdr為紅數(shù)據(jù)信號線;sdb為綠數(shù)據(jù)信號線。
      
      其工作過程為:S3狀態(tài),sck脈沖置0,sdr和sdb分別輸出一位數(shù)據(jù);S4狀態(tài)時,sck置1,紅和綠數(shù)據(jù)分別移入相應移位寄存器BMI5026,若不足8位時,返回S3狀態(tài),若不足一行時,返回S1狀態(tài),讀下一個字節(jié),若完成一行數(shù)據(jù)移位過程,則轉S5狀態(tài);S5狀態(tài)時,置le為0,將BMI5026的緩沖寄存中一個顯示行的點陣數(shù)據(jù)送輸出寄存器,同時置cs1有效,控制第hcnt行的點陣顯示,然后判斷一屏內(nèi)容是否顯示完成,返回s1狀態(tài)。圖4為完整的有限狀態(tài)機的狀態(tài)圖。
      
      下面給出LED顯示屏體驅動時序信號對應的VerilogHDL程序代碼:
      
      s3:begin
      
      sck=1'b0;
      
      sdr=SDA&&color[0];
      
      sdb=SDC&&color[1];
      
      OE=1'b1;CE=1'b1;
      
      state=s4;
      
      end
      
      s4:begin//移位輸出到LED顯示屏
      
      sck=1'b1;
      
      shcnt=shcnt+1'b1;
      
      if(shcnt==0)
      
      begin
      
      addr=addr+1'b1;//讀完一個字節(jié)地址記數(shù)器加1
      
      byte=byte+8'b1;
      
      if(byte==nrow)//如果讀完一行數(shù)據(jù)
      
      begin
      
      oe1=1'b1;//關LED顯示
      
      cs=1'b1;
      
      le=1'b0;//驅動芯片寫入數(shù)據(jù)
      
      byte=8'b0;
      
      state=s5;//讀完一行數(shù)據(jù)則顯示
      
      end
      
      elsestate=s1;
      
      end
      
      elsestate=s3;//當前字節(jié)移位輸出
      
      end
      
      s5:begin
      
      sck=1'b0;
      
      le=1'b0;
      
      counter=hcnt;
      
      OE=1'b1;
      
      CE=1'b0;
      
      if(addr==nscreen)
      
      addr=0;
      
      oe1=1'b0;
      
      cs=1'b0;
      
      state=s1;
      
      end
      
      4、系統(tǒng)測試及仿真
      
      系統(tǒng)的開發(fā)調(diào)試環(huán)境是:單片機部分在KeilC51下調(diào)試,CPLD部分在Maxplus10下調(diào)試。LED顯示屏的掃描控制模塊的VerilogHDL源程序編寫完成后,在ALTERA公司Maxplus10可以*行軟件仿真,以觀察各信號是否符合硬件電路所需的時序要求。圖5為掃描模塊CLPD仿真結果,符合設計要求。通過JTAG接口下載到ATF1508AS后,系統(tǒng)工作正常。
      
      5、結束語
      
      基于VerilogHDL實現(xiàn)的LED顯示屏掃描控制模塊,應用于我們開發(fā)LED大屏幕電子信息顯示屏系統(tǒng),簡化了系統(tǒng)結構,提高性了性價比。該LED顯示屏在實際應用中具有良好的顯示效果,畫面清晰、性能穩(wěn)定,已經(jīng)在學校的多個部門得到應用。

    免責聲明

    • 凡本網(wǎng)注明“來源:儀表網(wǎng)”的所有作品,均為浙江興旺寶明通網(wǎng)絡有限公司-儀表網(wǎng)合法擁有版權或有權使用的作品,未經(jīng)本網(wǎng)授權不得轉載、摘編或利用其它方式使用上述作品。已經(jīng)本網(wǎng)授權使用作品的,應在授權范圍內(nèi)使用,并注明“來源:儀表網(wǎng)”。違反上述聲明者,本網(wǎng)將追究其相關法律責任。
    • 本網(wǎng)轉載并注明自其它來源(非儀表網(wǎng))的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或和對其真實性負責,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉載時,必須保留本網(wǎng)注明的作品第一來源,并自負版權等法律責任。
    • 如涉及作品內(nèi)容、版權等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關權利。
    聯(lián)系我們

    客服熱線: 15267989561

    加盟熱線: 15267989561

    媒體合作: 0571-87759945

    投訴熱線: 0571-87759942

    關注我們
    • 下載儀表站APP

    • Ybzhan手機版

    • Ybzhan公眾號

    • Ybzhan小程序

    企業(yè)未開通此功能
    詳詢客服 : 0571-87759942
    主站蜘蛛池模板: 国产v片成人影院在线观看 | 国产成人一区二区动漫精品| 成人欧美一区二区三区在线观看| 毛片基地看看成人免费| 欧美成人三级一区二区在线观看| 99国产精品久久久久久久成人热 | 外国成人网在线观看免费视频| 天天躁日日躁成人字幕aⅴ| 国产成人涩涩涩视频在线观看免费| 国产成人无码aa精品一区| 免费观看一级成人毛片| 最新69成人精品毛片| 国产成人无码免费看片软件| 亚洲国产精品无码成人片久久| 日韩成人一区ftp在线播放| 国产成人天天5g影院| 欧美成人免费在线视频| 亚洲精品成人久久| 成人看免费一级毛片| 国产成人免费a在线视频色戒| 青春草国产成人精品久久| 国产69久久精品成人看| 成人免费福利电影| 中文国产成人精品久久久| 国产成人精品免高潮在线观看| 成人国内精品久久久久一区| WWW夜片内射视频日韩精品成人| 国产成人综合久久精品亚洲 | 在线观看成人免费视频| 欧美成人精品第一区二区三区| 国产成人免费av片在线观看 | 欧美成人免费全部色播| 亚洲国产成人精品无码区在线观看 | 成人免费视频网| 成人精品一区二区三区中文字幕| 亚洲av无码专区在线观看成人| 成人免费在线视频网站| 成人小视频在线观看| 日韩成人免费视频| 成人无码A级毛片免费| 欧美国产成人在线|