国产精品成人网站,日韩视频二区,亚洲成人手机电影,怡红院国产

產(chǎn)品推薦:水表|流量計(jì)|壓力變送器|熱電偶|液位計(jì)|冷熱沖擊試驗(yàn)箱|水質(zhì)分析|光譜儀|試驗(yàn)機(jī)|試驗(yàn)箱


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

歡迎聯(lián)系我

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

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

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

免責(zé)聲明

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

客服熱線: 15267989561

加盟熱線: 15267989561

媒體合作: 0571-87759945

投訴熱線: 0571-87759942

關(guān)注我們
  • 下載儀表站APP

  • Ybzhan手機(jī)版

  • Ybzhan公眾號(hào)

  • Ybzhan小程序

企業(yè)未開通此功能
詳詢客服 : 0571-87759942