基于Linux的ISA總線(xiàn)DMA的實(shí)現
三維圖像數據利用設備控制箱通過(guò)RS2232 串口后, 再利用紅外編解碼技術(shù)把數據傳到旋轉的LED驅動(dòng)板上, 其整個(gè)數據傳輸的通訊結構圖如圖2 所示。
在單片機串口模塊中選用電平轉換芯片MAX232 芯片實(shí)現TTL 電平與RS2232 電平的雙向轉換, 從而把三維圖像數據傳送到單片機的串行接收端口RXD 上, 然后單片機再通過(guò)其發(fā)送端口TXD把數據送出。圖中的調制與紅外發(fā)射模塊通過(guò)由N E555 芯片構成的多諧振蕩電路調制成38 kHz 的載波信號, 最后利用紅外發(fā)射管TSAL6238 以光脈沖的形式向外發(fā)送。為了保證紅外接收數據的準確性,N E555 產(chǎn)生的振蕩頻率要盡可能接近38 kHz,所以在選擇電阻電容時(shí)要選用精密的元件并保證電源電壓的穩定性。
數據傳輸電路中的紅外接收解調模塊選擇Vishay 公司的TSOP1738, 其內部電路功能已包括把接收到的載波頻率為38 kHz 的脈沖調制紅外光信號轉化為電信號, 并由前放大器和自動(dòng)增益控制電路進(jìn)行放大處理。然后, 通過(guò)帶通濾波器進(jìn)行濾波, 濾波后的信號由解調電路進(jìn)行解調。最后, 由輸出級電路進(jìn)行反向放大輸出。
所以, 選用此紅外接收模塊只要把其數據輸出直接送到FPGA 處理即可。經(jīng)實(shí)驗測定, 利用此紅外傳輸電路傳輸數據, 速率最高可達1 kB/ s。
1.4 角度編碼器與電機模塊電路
本系統立體顯示是通過(guò)快速顯示旋轉空間中的一系列二維截面來(lái)實(shí)現的, 把LED 屏旋轉一周分成180 個(gè)截面, 即每轉2°要刷新一次顯示屏。為了準確刷新顯示屏, 本系統選用角度編碼器來(lái)識別顯示屏轉過(guò)的角度, 角度編碼器通過(guò)測試電機旋轉發(fā)出脈沖可識別電機的旋轉角度。本系統選用的角度編碼器型號為ZSP38062022G2360B25224E。此編碼器旋轉一周可輸出360 個(gè)脈沖信號。這樣電機每轉2°, 角度編碼器便可發(fā)出2 個(gè)脈沖信號,LED 顯示屏控制系統通過(guò)計數采集的角度編碼器輸出脈沖數來(lái)控制刷新LED 屏。
同時(shí), 利用角度編碼器的輸出脈沖再通過(guò)單片機的處理可測出電機的旋轉速度, 并可送到數碼管顯示。此外, 單片機可對測得的電機速度進(jìn)行判斷,判斷其是否超出一定的范圍, 如超出范圍可通知由單片機控制的報警電路報警。其電機模塊電路圖如圖3 所示。
電路中所用的電機為無(wú)源電機, 所以需要電機的驅動(dòng)電路, 考慮電機在加負載時(shí)速度會(huì )減慢, 設計電機的速度可調, 其調節范圍為0~ 4 200 r/m in。電路中電機與角度編碼器套在一起, 其轉速v ( r/s ) 與角度編碼器的輸出脈沖頻率f (Hz) 具有如下關(guān)系:
v = f/360 (2)
通過(guò)此對應關(guān)系利用單片機可測出電機的旋轉速度并可送到數碼管顯示。同時(shí)利用設計的報警器可達到對電機旋轉速度的監控。
1.5 LED 尋址驅動(dòng)電路
LED 尋址驅動(dòng)控制電路主要是利用FPGA 芯片EP1C3 來(lái)控制LED的專(zhuān)門(mén)驅動(dòng)芯片BHL2000, 并且EP1C3 根據采集的角度編碼器的輸出脈沖數按時(shí)讀取存儲器中的三維圖像數據, 然后傳送給BHL 2000, 從而來(lái)驅動(dòng)LED 屏的列顯示。同時(shí), FP2GA 又將行掃描信號輸出經(jīng)后級放大來(lái)驅動(dòng)L ED 屏的行顯示, 其具體的原理框圖如圖4 所示。
由于LED屏在旋轉的過(guò)程中會(huì )造成亮度損失,所以FPGA 的行掃描信號輸出需經(jīng)過(guò)74HC245 和UDN2981 的放大, 這樣行信號輸出最大電流可達到500 mA。此外,BHL 2000 屬于灌電流型器件且每個(gè)數據輸出端電流可達到80 mA , 可直接驅動(dòng)L ED 顯示。驅動(dòng)電路中的存儲器選擇STC62WV 5128, 其容量為512 k×8 b it, 而本系統一幅三維圖像的數據量為6715 k×8 b it, 所以選擇STC62WV 5128 是足夠的。
值得說(shuō)明的是, EP1C3 對BHL 2000 的寫(xiě)數據是在BHL 2000 寫(xiě)入時(shí)鐘WR 的驅動(dòng)下, 數據從D in02D in7 輸入, 在內部移位寄存器中串行移位16 次后,由級聯(lián)口SHO02SHO7移出。同時(shí)BHL 2000 行、場(chǎng)控制信號HS、VS確定數據在存儲器中的存儲位置, 最多可存8×16×32 個(gè)字節。此外,BHL 2000 的輸出行、場(chǎng)控制信號HCL K 和CLR 確定取數位置, 在讀出時(shí)鐘CLK控制下進(jìn)行灰度調制, 輸出脈寬信號O02O15, 從而驅動(dòng)LED顯示屏。
linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)
評論