《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于CPLD和Embedded System的LED點陣顯示系統的實現
基于CPLD和Embedded System的LED點陣顯示系統的實現
謝 敏 黃海星 陳廣賢 覃
摘要: 采用自頂向下的設計思想,綜合運用EDA技術、CPLD技術和共享式雙口RAM,解決了大屏幕LED點陣顯示屏無閃爍顯示的技術難題。給出了系統設計方法及實際電路。
Abstract:
Key words :

    摘 要: 采用自頂向下的設計思想,綜合運用EDA技術、CPLD" title="CPLD">CPLD技術和共享式雙口RAM" title="雙口RAM">雙口RAM,解決了大屏幕LED點陣顯示屏無閃爍顯示的技術難題。給出了系統設計方法及實際電路。
    關鍵詞: CPLD  雙口RAM  掃描" title="掃描">掃描  大屏幕LED點陣顯示屏

 

    LED點陣顯示屏是顯示公共信息的一種重要顯示終端,其中大屏幕LED點陣顯示屏在許多場合得以應用。大屏幕顯示所采用的技術比中小屏幕顯示難度更大,因為其屏幕大、LED點數多,要求在極短的時間內刷新每個點,使得其掃描速率必須非常高,所以只有設計合理的控制電路才能達到這個要求。本文著重解決大屏幕LED點陣顯示這一技術難題。通過采用自頂向下的設計思想,綜合運用高速CPLD、雙口RAM等技術和芯片,設計出了大、小屏幕皆適合的顯示控制電路。特別是利用單片機、CPLD與雙口RAM的無縫結合,將復雜的任務分配給不同的硬件處理,滿足了對實時性的要求。本系統不僅給大屏幕LED點陣顯示提供了優良的控制電路,而且為CPLD器件和EDA技術提供了切實的應用實例。其中,共享雙口RAM的應用,為高速總線與低速總線的通信提供了一個新的解決方案。
1 硬件設計
    顯示系統由信號處理電路和掃描電路兩大塊構成,其系統原理框圖如圖1所示,實際電路框圖如圖2所示。微處理器MCU采用8位單片機AT89C51,它通過串口接收來自PC機的待顯示數據。由于PC機串行總線標準RS232的邏輯電平與單片機電路使用的TTL電平不同,所以PC機與MCU之間的通信數據必須經過RS232電平轉換芯片MAX232進行轉換。從PC機接收到的數據存放在8K字節的電可擦寫存儲器EEPROM 28C64中,這樣可方便地隨時修改待顯示的信息,并且在掉電情況下不至于丟失數據。由于系統軟件要進行大批量的數據處理,所以擴充了單片機緩存區大小,采用了8K字節的外部靜態RAM 6264。

 

 


1.1 雙口RAM的應用
    采用雙口RAM是本設計的一個主要特色。一般的RAM(如6116)只有一套地址總線、數據總線和控制總線,在同一時間只能執行同一總線操作。而標準雙口RAM有左側和右側兩套地址總線、數據總線和控制總線,可供兩套總線對其進行訪問。在本系統中,單片機通過共享的雙口RAMIDT7132與CPLD通信,單片機將數據寫入IDT7132中,而CPLD則從IDT7132中讀取數據并通過掃描邏輯電路輸出出去。
    由于CPLD掃描模塊可以達到很高的掃描速率,而單片機的運行速度則相對較低,并且兩個模塊間需要有大量的數據交換,為此選擇雙口RAM芯片IDT7132SA35JS,它的速度等級是35ns,完全滿足兩個模塊實時通信的要求。雙口RAM是兩個數據模塊間的數據通道,必須是共享的,它在本設計中起到了關鍵作用。
1.2  基于CPLD的獨立掃描模塊
    顯示部分的點陣模塊采用雙色LED共陰點陣模塊(實際上可顯示紅、黃、綠三色)。8塊8×8點陣模塊連接成32×32點陣。為易于控制,將公共接口作為行控制,且行的接地引腳經過一個開關三極管接地(設計中簡稱行掃描管),實現對相應列的控制。因為一個行掃描管同時控制著一行中多個LED的通斷,所以它承載較大電流。以每個發光二極管流過的電流為10mA計算,一個128列的點陣屏中,每個行掃描管所承受的電流是10mA×128=1.28A,為此選用高速中功率達林頓管TIP127,它的集電極吸收電流最大可達5A,保證了行的驅動能力。由于顯示點陣的每一行都需要用一個三極管來控制,所以32×32點陣共需要32個TIP127。
    行掃描電路采用通用數字電路譯碼輸出來控制。在32×32點陣顯示時,掃描輸出需要大量的I/O端口,而ATMEL公司生產的CPLD芯片ATF1508AS15JC84(與ALTERA公司的MAX7128SLC84-15功能及封裝等完全兼容)的外部I/O端口不夠用,所以采用兩片CPLD,一片專用于行掃描,另一片用于讀取雙口RAM IDT7132中的數據并進行列掃描。
    列掃描電路的功能是在選中某行時送該行對應的列數據,由于采用的是8位微處理器,一次只能送一個字節的數據,即每次只能掃描8列。本設計中,采用8550三極管矩陣驅動方式,從而節省了大量控制信號引腳資源。
    獨立掃描模塊的功能是以雙口RAM為中介將單片機送來的數據在LED點陣顯示屏上顯示出來,其電路原理圖如圖3所示。單片機總線將處理好的待顯示數據存放在U5(雙口RAM IDT7132SA35JS)中,然后U6(CPLD芯片ATF1508AS15JC84,用Verilog HDL語言編寫其總線讀邏輯)讀取存放在U5中的待顯示數據并驅動顯示屏。整個顯示屏為128×32點陣,一次掃描一個字節即8位,為此全屏顯示需要128×32÷8=512字節。將地址線A9R、A10R接地,這樣只允許訪問U5中的低512K字節。CA0~CA8是CPLD輸出到U5中的地址總線,CD0~CD7是從U5讀出數據的數據總線。J1是行掃描信號接口,CH0~CH4為行掃描計數器輸出信號,時鐘信號可從CLK輸出給行掃描計數器。J2為列掃描控制信號V0~V7輸出接口。DR0~DR15為一色的列選通控制信號輸出,由于I/O端口引腳不夠,所以另一色的列選通信號采用譯碼電路譯碼輸出,用J3的四線輸出。CON1為JTAG接口,J6為時鐘源選擇接口,可接單片機的ALE信號,也可接有源晶振CR2的輸出。有源晶振CR2相當于一信號產生電路,只要其2腳接地,4腳接電源,3腳就有額定的輸出波形。

 


    由于采用CPLD設計掃描邏輯,所以掃描邏輯的關鍵不再取決于硬件連接,而是取決于芯片的設計。
1.3 基于單片機的通信與信號處理電路
    本系統采用ATMEL公司的8位單片機AT89C52,主要完成數據處理、存儲和通信功能,其原理圖如圖4所示。

 


    U4是AT89C51單片機;U3是地址鎖存器,用來鎖存單片機的低8位地址信號。因為要顯示的數據量很大,特別是當設計復雜的顯示效果時需要處理的數據量更大,而AT89C51內部緩存容量不足,所以擴展外部RAM,采用容量為8K字節的HM6264,即U7。U2是容量為8K字節的EEPROM 28C64,用來存儲字模數據,而不用作程序存儲器。U5是雙口RAM,U1是將RS232電平轉換為TTL電平的電平轉換器。
    PC機將欲顯示的字或圖形的點陣數據通過串口送到單片機,單片機將其存儲在EEPROM(U2)中,然后再根據顯示要求對這些數據進行特定的處理,處理完后存儲在雙口RAM(U5)的特定地址,供掃描模塊掃描取數進行顯示。為了便于編寫串行通信程序,使用振蕩頻率為11.0592MHz的晶振CR1和C5、R1及SW1組成的復位電路。
2 軟件設計和編寫
2.1 主控電路CPLD芯片設計與調試
    主控電路的功能是讀取雙口RAM中的數據并通過譯碼邏輯電路將數據顯示在LED點陣顯示屏的特定位置上。因為只用到單片機的一部分功能,所以使用CPLD芯片將MCU中的總線讀控制器及其外圍譯碼邏輯電路集成在一起。如若采用傳統方案,就必須采用多片芯片;而使用CPLD后,只用一片芯片就可以實現所要的功能??偩€讀控制器是產生時序的電路,需根據存儲器的讀時序進行設計,只有保證正確的時序才能讀出數據。雙口RAM的讀寫時序和普通RAM的讀寫時序基本相同,如圖5所示。在片選信號從高變低之前必須輸出地址信號給雙口RAM,然后再用讀信號去控制數據總線上的數據有效,即可控制讀出數據并譯碼輸出。

 


    復雜的時序電路用硬件描述語言描述,一般是用有限狀態機來描述。有限狀態機是時序電路通用模型,任何時序電路都可以表示成有限狀態機。從本質上講,有限狀態機是由寄存器與組合邏輯構成的時序電路,各個狀態之間的轉移總是在時鐘的觸發下進行的。針對圖5所示的讀時序,可列出如圖6所示的各種狀態的轉換圖。用Verilog HDL語言描述時可用帶有always語句的case語句建模,狀態信息存儲在寄存器中,case語句的多個分支包含每個狀態的行為。在這里將讀時序分為S0、S1、S2、S3四個狀態,其工作方式如下:
    步驟S0 在RAM的片選CE使能之前輸出地址;
    步驟S1 選中RAM,輸出讀信號;
    步驟S2 行計數器輸出,讀出RAM的數據并反相輸出;
    步驟S3 片選禁止,讀禁止,地址計數器加1。
    譯碼輸出邏輯電路主要是提取地址計數器的計數輸出。在某個狀態下,行地址計數器輸出低5位數據,位譯碼輸出高4位數據并譯碼輸出16個位選信號。
    時序電路中一般留有復位信號,當復位端為1時,地址計數器復零,地址輸出復零,片選、讀控制信號置1,使狀態機回到狀態S0。
2.2 行譯碼CPLD芯片設計
    行譯碼器的功能較主控電路來講相對簡單,它是將主控電路的行計數器輸出的5位二進制數據譯成32行的行選通信號,去控制行驅動管驅動行輸出。這是一個純組合邏輯電路,使用Verilog HDL語言描述的always語句和case多分支語句即可實現此功能。
2.3 單片機的C程序設計
    在本系統中,單片機的功能主要是負責通信與數據處理。通信即通過串口接收來自PC機的數據并存儲在EEPROM中;數據處理即從EEPROM中取出數據并根據要顯示的效果進行軟件處理,再存放在雙口RAM中。在本系統中,因單片機及外圍電路只負責通信和數據處理,對實時性要求不高,因此用前后臺系統進行軟件設計就能達到要求。本系統采用嵌入式操作系統RTX51TNY(KEIL C平臺自帶的免費的微實時內核)。軟件主要由PROCESS.C和SERIAL.C兩個文件組成。PROCESS.C包含三個任務:任務0,初始化;任務1,靜態顯示;任務2,左移顯示。SERIAL.C是串口中斷程序。靜態顯示的算法較簡單,只要將EEPROM中的字模數據存放到雙口RAM中的特定位置即可。左移顯示則需要將字模數據每個字節左移,然后存放在雙口RAM的特定位置。
    注:本項目是廣西大學科研基金資助項目
參考文獻
1 王金明,楊吉斌.數字系統設計與Verilog HDL.北京:電子工業出版社,2002.1
2 林明權. VHDL控制系統設計范例. 北京:電子工業出版社,2003.1
3 袁俊泉.Verilog HDL數字系統設計及其應用.西安:西安電子科技大學出版社,2002.11
4 何立民.單片機應用技術選編5.北京:北京航空航天大學出版社,1997.10
5 馬忠梅. 單片機的C語言應用程序設計.北京:北京航空航天大學出版社,1999.1

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
一区二区三区四区五区在线| 久久久久久一区| 久久久亚洲精品一区二区三区| 亚洲福利国产| 中国女人久久久| 亚洲狼人综合| 亚洲欧洲精品一区二区| 亚洲国产你懂的| 亚洲风情亚aⅴ在线发布| 亚洲成人在线| 亚洲丁香婷深爱综合| 亚洲福利视频网站| 国产亚洲aⅴaaaaaa毛片| 国产精品一区二区你懂得 | 亚洲国产另类 国产精品国产免费| 玖玖玖国产精品| 久久精品日产第一区二区三区| 亚洲欧洲精品一区二区三区| 欧美亚洲视频在线看网址| 亚洲一品av免费观看| 亚洲一区二区成人| 亚洲欧美日韩国产综合在线| 亚洲欧美国产不卡| 午夜精品一区二区三区在线视 | 久久野战av| 久久精品国产亚洲a| 久久国产精品一区二区| 久久精品国产亚洲精品| 久久久久天天天天| 免费在线欧美视频| 欧美久久综合| 国产精品国产三级国产专播精品人| 久热成人在线视频| 毛片一区二区三区| 欧美成人精品在线| 欧美日韩国产综合网| 欧美亚洲成人免费| 国产日韩久久| 怡红院精品视频| 亚洲人成艺术| 亚洲精品视频一区二区三区| 一区二区电影免费观看| 亚洲影院在线| 欧美专区日韩专区| 亚洲精品一区二区三| 亚洲一区二区精品视频| 欧美一区二区三区在线免费观看| 91久久精品日日躁夜夜躁国产| 亚洲影视综合| 欧美在线视频a| 亚洲美女啪啪| 午夜精品久久久久| 免费观看一级特黄欧美大片| 欧美日韩在线一区二区| 国产精品久久久亚洲一区| 国产一区二区三区精品欧美日韩一区二区三区 | 亚洲男女自偷自拍| 亚洲国产精品成人| 99在线视频精品| 羞羞色国产精品| 欧美1区视频| 国产精品区一区| 一区在线免费| 中文国产一区| 亚洲第一精品久久忘忧草社区| 久久gogo国模裸体人体| 亚洲免费高清| 午夜视频在线观看一区二区| 免费看黄裸体一级大秀欧美| 国产精品久久久久一区二区三区| 国产精品久久久久久超碰| 韩国av一区二区| 在线午夜精品自拍| 亚洲高清资源| 亚洲少妇最新在线视频| 久久久久久亚洲精品杨幂换脸 | 欧美日韩精品福利| 国产麻豆成人精品| 日韩一级精品| 亚洲欧洲精品一区| 香蕉成人啪国产精品视频综合网| 午夜日韩激情| 欧美乱人伦中文字幕在线| 国产亚洲va综合人人澡精品| 欧美成人精品h版在线观看| 欧美一区二区在线播放| 一区二区三区产品免费精品久久75 | 伊人影院久久| 亚洲摸下面视频| 一二三区精品| 麻豆乱码国产一区二区三区| 国产欧美丝祙| 国产精品99久久99久久久二8| 亚洲无线视频| 亚洲日本中文字幕免费在线不卡| 亚洲精品欧美| 久久精品夜色噜噜亚洲a∨| 欧美日韩视频不卡| 亚洲国内自拍| 最新成人av网站| 久久精品国产亚洲高清剧情介绍| 免费亚洲电影| 国产一区三区三区| 亚洲欧美另类在线观看| 亚洲新中文字幕| 欧美另类一区| 亚洲激情啪啪| 最新国产成人av网站网址麻豆 | 亚洲伦理网站| 亚洲精品少妇网址| 久久综合久久88| 国语自产精品视频在线看抢先版结局| 伊人成人网在线看| 欧美一区二区精品| 久久精品国产2020观看福利| 国产精品h在线观看| 日韩香蕉视频| 中文亚洲免费| 欧美午夜不卡在线观看免费 | 精品99一区二区| 欧美专区日韩专区| 久久久亚洲欧洲日产国码αv| 欧美激情va永久在线播放| 一区精品在线| 亚洲精品激情| 欧美精品在线观看91| 亚洲人成小说网站色在线| 国产精品久久毛片a| 亚洲精品中文字幕有码专区| 久久久av水蜜桃| 国内精品久久久久久影视8| 欧美一区二区免费视频| 久久国产高清| 黄色国产精品一区二区三区| 久久精品日韩欧美| 免费成人av在线| 亚洲激精日韩激精欧美精品| 亚洲精品日韩激情在线电影| 欧美精品一区二区三区四区 | 亚洲国产成人午夜在线一区| 亚洲国产精品尤物yw在线观看| 亚洲一区免费网站| 欧美亚一区二区| 午夜精品视频一区| 久久欧美中文字幕| 亚洲国产欧美在线| 一区二区三区成人精品| 国产精品免费看| 欧美一区视频| 欧美成人综合一区| 亚洲精品一区二区三区婷婷月| 久久精品亚洲一区| 欧美 日韩 国产精品免费观看| 国产欧美日韩视频| 久久精品99无色码中文字幕| 欧美va天堂va视频va在线| 亚洲精品在线三区| 亚洲天堂网在线观看| 国产精品午夜av在线| 亚洲高清视频在线| 欧美巨乳在线| 午夜精品一区二区三区在线播放| 亚洲视频电影图片偷拍一区| 国产精品久久久一区二区三区| 亚洲激情在线观看| 99www免费人成精品| 国产精品久久中文| 亚洲二区精品| 欧美亚州在线观看| 亚洲电影免费观看高清完整版在线| 欧美一区二区网站| 激情国产一区| 夜夜嗨av色一区二区不卡| 国产精品久久久久9999高清| 欧美影院成年免费版| 欧美大片免费看| 亚洲男人av电影| 免费日本视频一区| 亚洲先锋成人| 美女精品国产| 在线亚洲美日韩| 狂野欧美激情性xxxx欧美| 欧美一级理论片| 午夜日韩在线| 久久久午夜电影| 亚洲精品一区中文| 久久精品人人爽| 精品动漫一区二区| 一区二区高清| 国产在线不卡精品| 一二三区精品福利视频| 国产精品免费网站在线观看| 最新精品在线| 国产农村妇女精品一二区| 日韩一区二区久久| 国产亚洲午夜| 亚洲视频在线一区| 国色天香一区二区| 亚洲在线观看免费| 亚洲国产精品成人|