<abbr id="kc8ii"><menu id="kc8ii"></menu></abbr>
  • <input id="kc8ii"><tbody id="kc8ii"></tbody></input><table id="kc8ii"><source id="kc8ii"></source></table><kbd id="kc8ii"></kbd>
    <center id="kc8ii"><table id="kc8ii"></table></center>
  • <input id="kc8ii"></input>
    <abbr id="kc8ii"></abbr>
  • <abbr id="kc8ii"></abbr>
  • <center id="kc8ii"><table id="kc8ii"></table></center>
    <abbr id="kc8ii"></abbr>
    你的位置:首頁 > 光電顯示 > 正文

    基于USB接口的LED顯示系統(tǒng)設計

    發(fā)布時間:2011-02-09 來源:維庫

    中心議題:

    • 基于USB接口的LED顯示系統(tǒng)設計

    解決方案:

    • 顯示和驅(qū)動設計
    • 控制設計
    • 固件程序設計
    • 驅(qū)動程序設計
    • 應用軟件設計


    配合驅(qū)動LED顯示屏實現(xiàn)高速數(shù)據(jù)傳輸。應用軟件處理文字信息,并與USB設備通信。本設計經(jīng)測試能動態(tài)地顯示文字信息。

    1 引 言

    LED顯示屏是由若干發(fā)光二極管排列組成的顯示器件。它采用低電壓掃描驅(qū)動,具有耗電省、使用壽命長、成本低、亮度高、視角大、可視距離遠、規(guī)格品種多等優(yōu)點,被廣泛地應用于許多公共場合的提示、說明、廣告等。

    本設計包括硬件和軟件。硬件包括LED顯示屏的驅(qū)動和控制。驅(qū)動部分負責根據(jù)行列選通信號向指定的LED發(fā)光器件提供合適的驅(qū)動電流;控制部分采用集成USB2. 0的微處理器CY7C68013A, 實現(xiàn)USB通信和對行列移位寄存系統(tǒng)的控制。軟件包括Keil C51環(huán)境下編寫的固件程序、驅(qū)動程序和應用軟件。固件程序控制硬件完成相應的功能;驅(qū)動程序提供了連接到計算機的硬件設備的軟件接口;應用軟件處理圖文信息并與USB設備通信。本設計的結(jié)構框圖如圖1所示。

    2 硬件設計

    2. 1 顯示和驅(qū)動設計

    本設計的LED顯示屏如圖1中64 ×16 LED點陣顯示屏所示,采用16塊8 ×8模塊,組成4個16 ×16點陣。每個16 ×16 點陣顯示一個漢字, 因此LED顯示屏可以顯示4個漢字。

    由于CY7C68013A I/O 口的個數(shù)有限( 5 個8位I/O口) ,也考慮到今后方便擴展的需要, LED顯示屏的行列驅(qū)動系統(tǒng)均選用8位串行輸入轉(zhuǎn)并行輸出移位寄存器芯片74HC595。其優(yōu)點是可以采用很少的I/O口控制盡量多的行或列,且可以克服直接采用I/O口控制或采用I/O口和譯碼器共同控制時難以克服的一些問題,如“鬼影”的消除。

    結(jié)構框圖

    由于I/O口的驅(qū)動能力有限,列驅(qū)動采用了PNP型晶體管。點亮每一個LED器件大約需要20mA驅(qū)動電流,為了滿足同時點亮16個LED大約需要320mA的驅(qū)動電流,采用PNP型晶體管的發(fā)射極接電源,集電極接LED陽極,基極經(jīng)限流電阻接74HC595輸出端。這樣利用晶體管的電流放大作用, 74HC595的輸出端僅需提供幾毫安的驅(qū)動電流就可控制對應LED的亮滅了。部分驅(qū)動電路如圖2所示。

    部分驅(qū)動電路

    [page]
    2. 2 控制設計

    本設計的USB接口采用集成USB2. 0的微處理器CY7C68013A,其優(yōu)點是集成了USB2. 0收發(fā)器、智能SIE、增強的8051微控制器和可編程的外圍接口, 數(shù)據(jù)傳輸率達到56MByte / s, 可以硬件處理USB1. 1和USB2. 0協(xié)議,從而減少開發(fā)時間、確保USB的兼容性、提高硬件的集成度和可靠性 。

    CY7C68013A的外圍電路主要包括供電( 5V -3. 3V轉(zhuǎn)換)電路,串行I2C總線電路以及復位和喚醒電路 。具體電路可參考文獻。

    LED顯示屏的基本工作原理是動態(tài)掃描。動態(tài)掃描又分為行掃描和列掃描兩種方式。本設計采用行掃描工作方式。

    同一行8個8 ×8點陣模塊的同名行控制引腳是接在一條線上的,共16條線,連接在行移位寄存系統(tǒng)上。同一列2個8 ×8點陣模塊的同名列控制引腳也是接在一條線上的,共64條線,連接在列移位寄存系統(tǒng)上。行移位寄存系統(tǒng)由2 片74HC595組成,列移位寄存系統(tǒng)由8片74HC595組成。

    以行移位寄存系統(tǒng)為例:將第一片的DS (串行數(shù)據(jù)輸入)端由一個CY7C68013A 的I/O 口控制;第一片和第二片74HC595的SH_CP (移位寄存器的時鐘脈沖) 、ST_CP (存儲寄存器的時鐘脈沖)和OE(輸出使能端)端分別接在一起,各由一個I/O口控制;第一片的Q7 (串行輸出)端與第二片的DS連接;MR (芯片復位)端接高電平; O1 - O7 (并行數(shù)據(jù)輸出)端分別與對應的LED行控制引腳相連接。

    CY7C68013A在SH_CP端產(chǎn)生連續(xù)的16個時鐘脈沖上升沿,將16位二進制數(shù)0x01依次送入兩個移位寄存器中,并鎖存在鎖存器中, 然后在ST_CP端產(chǎn)生1個時鐘脈沖上升沿,將0x01并行輸出到對應的16根行控制引腳線上,使得第一行LED陰極為低電平,其它行LED陰極均為高電平。此時將對應的字模送到列驅(qū)動系統(tǒng),若該列的LED陽極為高電平,則對應的LED被點亮,若該列的LED陽極為低電平,則對應的LED為暗。依次選擇第二至十六行,將對應的字模送到列驅(qū)動系統(tǒng), 點亮相應的LED。當顯示完第十六行的字模后,又從第一行開始顯示,這樣LED顯示屏就會顯示相應的漢字。

    按照這種工作方式, LED顯示屏是一行一行點亮的,每次都只有一行亮,但由于人眼視覺暫留時間最長為1 /16 s,只要設計的掃描周期時間(從第一列到最后一列所花費的時間)小于1 /16 s,看到的還是全屏穩(wěn)定的圖像。

    3 軟件設計

    3. 1 固件程序設計

    固件程序是指運行在設備CPU中的程序。只有在該程序運行時,外設才能被稱為具有給定功能的外部設備。固件程序在Keil C51環(huán)境下編寫。

    C51編譯器包可以用在所有的8051系列處理器上,可以在W INDOWS 32 位命令行中執(zhí)行 。本設計的固件程序流程圖如圖3所示。

    固件程序流程圖

    硬件設備上電/復位后,工作分配器函數(shù)TD _Init ( )完成對微處理器的初始化,然后通過調(diào)用工作分配器函數(shù)TD _Poll ( )啟動采樣,判斷是否有EP2OUT中斷發(fā)生。若有中斷發(fā)生,則進入中斷處理函數(shù)INT_Ep2out ( ) ,將上位機通過USB 總線傳來的數(shù)據(jù)放在EP2OUTBUF中,根據(jù)這些數(shù)據(jù)依次驅(qū)動LED顯示屏的行和列,更新LED 顯示。中斷處理完畢后又回到啟動采樣階段,重復判斷是否有中斷過程。若沒有中斷發(fā)生,則繼續(xù)保持LED的顯示,然后也回到啟動采樣階段,重復判斷是否有中斷過程。

    其中顯示第i行字模的函數(shù)如下:

      chooseraw_5950 ( i) ; / /選擇第i行

      chooseline_5951 ( a, b) ; / /第一個字對應第i行的字模

      chooseline_5951 ( c, d) ; / /第二個字對應第i行的字模

      chooseline_5952 ( e, f) ; / /第三個字對應第i行的字模

      chooseline_5952 ( g, h) ; / /第四個字對應第i行的字模

      stcp0 = 0; stcp1 = 0; stcp2 = 0;

      stcp0 = 1; stcp1 = 1; stcp2 = 1; / / st_cp 端產(chǎn)生一個脈沖上升沿,數(shù)據(jù)并行輸出

      delay_ms (3) ; / /延時3ms

      }

    3. 2 驅(qū)動程序設計

    采用DDK來開發(fā)驅(qū)動程序, DDK的編譯工具build來進行驅(qū)動程序的編譯,DriverStudio工具包中的SoftIce用來對驅(qū)動程序進行調(diào)試[ 5 ] 。

    驅(qū)動程序使用的例程包括:驅(qū)動程序入口例程、即插即用例程、分發(fā)例程、電源管理例程、卸載例程。

    驅(qū)動程序的編寫與固件中定義的USB 傳輸方式等信息有關,在固件中,采用端點EP2作為OUT方向的批量傳輸端點,負責儲存要發(fā)往外設的數(shù)據(jù)。

    3. 3 應用軟件設計

    因為涉及到與USB通信的問題,所以本設計采用了動態(tài)鏈接庫(DLL)和應用程序相結(jié)合的方式編寫應用軟件。動態(tài)鏈接庫利用驅(qū)動程序建立起與底層硬件的通信,應用程序為用戶提供一個直觀的軟件界面以方便操作。

    應用程序可采用不同的算法,實現(xiàn)文字的滾動顯示,如左移、右移、上翻、下翻等。

    4 結(jié)束語

    本設計的LED顯示系統(tǒng),采用USB總線通信,實現(xiàn)了文字的靜態(tài)和動態(tài)顯示,達到了設計要求。

    采用USB接口與串口相比能提高數(shù)據(jù)傳輸?shù)乃俾省?/p>

    LED顯示屏的行列驅(qū)動系統(tǒng)均選用串行輸入轉(zhuǎn)并行輸出移位寄存器,使得擴展變得很方便。調(diào)用不同的文字庫,本系統(tǒng)可以顯示不同字體的漢字、數(shù)字、字母和符號,還可以顯示自定義圖片。

    軟件界面如圖4所示。顯示效果如圖5所示。

    軟件界面

    要采購移位寄存器么,點這里了解一下價格!
    特別推薦
    技術文章更多>>
    技術白皮書下載更多>>
    熱門搜索
    ?

    關閉

    ?

    關閉

    国产亚洲精品无码拍拍拍色欲| 国产成人无码一区二区三区在线| 亚洲Av无码专区国产乱码DVD| 天堂网www中文天堂在线| 免费 无码 国产在线观看观| 日韩欧群交P片内射中文| a中文字幕1区| 中文字幕乱码无码人妻系列蜜桃 | 亚洲AV永久无码精品成人| 丰满人妻AV无码一区二区三区| 久热中文字幕无码视频| 国产午夜片无码区在线播放| 久久99精品久久久久久hb无码| 中文字幕aⅴ人妻一区二区| 亚洲av无码国产精品夜色午夜| 国产aⅴ激情无码久久| 亚洲AV无码专区日韩| 无码中文字幕av免费放dvd| 亚洲av无码一区二区三区不卡| 亚洲 日韩经典 中文字幕| 亚洲Av无码精品色午夜| 国产一区三区二区中文在线| 日韩AV无码一区二区三区不卡毛片 | 一区二区三区无码视频免费福利| 东京热人妻无码一区二区av| 亚洲Av无码国产情品久久| 色噜噜狠狠成人中文综合| 狠狠躁夜夜躁无码中文字幕| 亚洲毛片网址在线观看中文字幕| 中文字幕无码第1页| 亚洲VA中文字幕不卡无码| 久久精品无码一区二区无码| 无码人妻一区二区三区一| 亚洲中文字幕在线乱码| 国产精品无码不卡一区二区三区| 乱人伦中文无码视频在线观看| 中文精品久久久久人妻不卡 | 国产成年无码久久久久毛片| 日本无码WWW在线视频观看| √天堂中文官网在线| 亚洲国产综合无码一区二区二三区 |