国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

KW01的無線LED顯示屏控制系統(tǒng)的設(shè)計(jì)

2016-01-26 09:40:20陸偉國龐馥珊

陸偉國,龐馥珊

(1.蘇州大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,蘇州 215000, 2.蘇州經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院)

?

陸偉國1,龐馥珊2

(1.蘇州大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,蘇州 215000, 2.蘇州經(jīng)貿(mào)職業(yè)技術(shù)學(xué)院)

摘要:設(shè)計(jì)了一套基于KW01芯片的無線LED顯示屏控制系統(tǒng),內(nèi)嵌實(shí)時(shí)操作系統(tǒng)MQX,可以用來無線控制LED顯示屏的字符顯示等。整個(gè)系統(tǒng)包括一塊128×256點(diǎn)陣的LED顯示屏、主控模塊和轉(zhuǎn)發(fā)模塊、PC上位機(jī)軟件等。本系統(tǒng)以飛思卡爾公司的KW01芯片作為無線通信節(jié)點(diǎn)的收發(fā)芯片,其內(nèi)部集成了一個(gè)UHF射頻收發(fā)器SX1233,每個(gè)節(jié)點(diǎn)配以一個(gè)擴(kuò)展底座引出其功能引腳,通過無線射頻(Sub-1 GHz頻段)實(shí)現(xiàn)PC端與主控端的數(shù)據(jù)傳輸。經(jīng)反復(fù)測試,該系統(tǒng)具有靈活性強(qiáng)、通信穩(wěn)定、操作簡單等特點(diǎn)。

關(guān)鍵詞:LED顯示屏;KW01;無線射頻;MQX

引言

傳統(tǒng)LED顯示屏的控制方式有很多種:一種是通過數(shù)據(jù)線直接連接計(jì)算機(jī)和LED屏控制器,通常以RS232作為數(shù)據(jù)傳送標(biāo)準(zhǔn),這種做法不僅有距離限制(一般不超過十幾米),而且最高波特率一般不超過115 200 bps,較低的傳輸速率制約了LED顯示屏的及時(shí)更新,因而不能實(shí)現(xiàn)遠(yuǎn)程信息實(shí)時(shí)更新;一種是脫機(jī)方式(例如U盤式控制卡),如果需要更新顯示內(nèi)容,需要人工更換控制卡上的U盤或者信息存儲(chǔ)卡;另一種是基于GPRS無線通信的控制系統(tǒng),雖然很好地解決了遠(yuǎn)程信息發(fā)布和大規(guī)模組網(wǎng)等技術(shù)難題,但其成本較高,而且穩(wěn)定性差[3]。

為此,本文提出了一種基于KW01的無線LED控制系統(tǒng),主要功能是無線更新LED顯示屏內(nèi)容,對(duì)無線LED控制的研究具有一定參考價(jià)值。

1總體設(shè)計(jì)

基于KW01的無線LED控制系統(tǒng)包括LED顯示屏、主控模塊、轉(zhuǎn)發(fā)模塊、PC上位機(jī)軟件。系統(tǒng)結(jié)構(gòu)框圖如圖1所示。其中,LED顯示屏由P10單元板通過數(shù)據(jù)線連接組成,共8行,每行8塊;主控模塊及轉(zhuǎn)發(fā)模塊各包括一個(gè)KW01節(jié)點(diǎn)和一個(gè)擴(kuò)展底座,兩個(gè)KW01節(jié)點(diǎn)應(yīng)該具有相同的硬件過濾地址。PC上位機(jī)軟件主要負(fù)責(zé)提取字模、發(fā)送數(shù)據(jù)幀。

圖1 LED控制系統(tǒng)框圖

2硬件設(shè)計(jì)

2.1LED顯示屏

2.1.174HC595D移位寄存器

采用74HC595DLED實(shí)現(xiàn)顯示屏列驅(qū)動(dòng)電路。74HC595D內(nèi)部集成一個(gè)8位的串行輸入移位寄存器和一個(gè)8位并行輸出鎖存器。每塊P10單元板有16個(gè)74HC595D芯片,每個(gè)芯片對(duì)應(yīng)4×8個(gè)點(diǎn)陣。其操作原理是:時(shí)鐘線SHCP產(chǎn)生一個(gè)上升沿,觸發(fā)數(shù)據(jù)線Ds引腳接收一位數(shù)據(jù),進(jìn)入該移位寄存器。如果此時(shí)接收到的數(shù)據(jù)超過了8位,那么74HC595D芯片將通過Q7′引腳將溢出的那位數(shù)據(jù)傳遞給下一個(gè)級(jí)聯(lián)芯片的Ds引腳,并移入74HC595D。鎖存線STcp產(chǎn)生一個(gè)上升沿,移位寄存器中的數(shù)據(jù)將鎖存并被發(fā)送至Q0~Q7引腳,準(zhǔn)備顯示。OE引腳是低電平使能,如果將使能線OE置低,結(jié)合行選信號(hào),則P10單元板在選中行顯示Q0~Q7引腳上的數(shù)據(jù)。其引腳分布圖略——編者注。

2.1.274HC138D譯碼器

圖2 74HC138D譯碼器引腳分布圖

74HC138D芯片用來實(shí)現(xiàn)LED顯示屏的行掃描電路,如圖2所示。74HC138D芯片可以分為3個(gè)部分:使能端、選擇端和輸出端。其功能就是接收來自12接口的A、B、C行選線信號(hào),對(duì)其特定含義進(jìn)行“翻譯”,轉(zhuǎn)換成相應(yīng)的行掃描信號(hào),低電平有效。

由于P10單元板屬于1/4掃描方式,所以在74HC138D的輸出端再接4片4953SS以增強(qiáng)行驅(qū)動(dòng)能力,從而驅(qū)動(dòng)一組發(fā)光二極管。事實(shí)上只用到了A、B兩條行選信號(hào)線,經(jīng)譯碼后產(chǎn)生4位輸出信號(hào),每次選擇一片4953SS,掃描對(duì)應(yīng)的一組4行的LED燈。

2.1.312接口

本系統(tǒng)使用的P10單元板是單紅色的,使用12接口,兩根數(shù)據(jù)線,僅使用到其中一根。在安裝LED顯示屏之前,應(yīng)該首先確定接口的類型,12接口和08接口直接相連。

實(shí)際上12接口相當(dāng)于連接KW01節(jié)點(diǎn)與P10單元板上相關(guān)芯片的一個(gè)橋梁。所以,只要對(duì)12接口對(duì)應(yīng)的引腳進(jìn)行編程,就可以實(shí)現(xiàn)主控制卡對(duì)LED顯示屏的控制。12接口和P10單元板上74HC595D和74HC138D芯片引腳的對(duì)應(yīng)關(guān)系略——編者注。

2.1.4工作原理

由于構(gòu)成顯示屏的LED燈數(shù)目較多,因此一般選擇掃描的方式進(jìn)行信息顯示。P10單元板屬于1/4掃描方式,即每次只掃一行,從第一行開始,按順序?qū)Ω餍羞M(jìn)行掃描,分4次掃描完成。一個(gè)掃描周期之后重新開始對(duì)第一行進(jìn)行掃描,只要刷新的頻率足夠快,由于視覺暫留,就不會(huì)感覺到掃描所造成的閃爍。

其驅(qū)動(dòng)主要分為行掃描驅(qū)動(dòng)和列掃描驅(qū)動(dòng),分別由74HC138D和74HC595D控制。顯示控制可以分為送數(shù)據(jù)過程和顯示過程,控制卡通過12接口將數(shù)據(jù)串行輸入至第一個(gè)74HC595D,并級(jí)聯(lián)至之后每個(gè)74HC595D。直到一整行數(shù)據(jù)接收完畢,才觸發(fā)鎖存信號(hào),將數(shù)據(jù)信號(hào)送上列線,配合上行選信號(hào),將當(dāng)前行的信息顯示出來。

2.2主控模塊

2.2.1MCU芯片選型

芯片的選型是一個(gè)關(guān)鍵的步驟,將直接影響到最終產(chǎn)品的整體性能及其可擴(kuò)展性。本系統(tǒng)中控制LED顯示屏的主控節(jié)點(diǎn)是以KW01芯片為基礎(chǔ)的,該芯片是一款基于ARM Cortex-M0+內(nèi)核的無線射頻芯片解決方案,支持290~340 MHz、424~510 MHz以及862~1020 MHz的無線頻段,具有低功耗、低成本、高度集成、通信穩(wěn)定等特點(diǎn),適用于諸如智能家居、智能城市等多種物聯(lián)網(wǎng)產(chǎn)品的研究與開發(fā)[4]。

2.2.2射頻模塊

KW01芯片內(nèi)部集成無線射頻收發(fā)器SX1233,工作于Sub-1 GHz無線頻段下,具有極低功耗,接收模式下的電流約為16 mA,待機(jī)模式下的電流約為100 nA。按照嵌入式系統(tǒng)硬件構(gòu)件化設(shè)計(jì)原則,且考慮到信號(hào)增益、低通濾波、信號(hào)反射和特性阻抗匹配等設(shè)計(jì)要素,采用二階橢圓函數(shù)低通濾波器,并結(jié)合雙L形匹配網(wǎng)絡(luò)的方式設(shè)計(jì)射頻前端電路[5],其Sub-1 GHz無線射頻前端電路設(shè)計(jì)見圖3。

圖3 無線射頻模塊

2.2.3主控模塊與12接口引腳連線

為了使KW01芯片引腳與12接口引腳相連,通過對(duì)引腳的編程實(shí)現(xiàn)控制整個(gè)128×256點(diǎn)陣的LED顯示屏,設(shè)計(jì)了一塊擴(kuò)展底板。其主要是對(duì)核心板的引腳進(jìn)行對(duì)接以及提供核心板的供電電源,基本包含了核心板對(duì)外的基本接口及功能。

本系統(tǒng)采用12接口連接方式,其與KW01芯片的引腳連接方式如圖4所示。

圖4 擴(kuò)展底座12接口

2.3電源供應(yīng)

主控節(jié)點(diǎn)的工作電壓為5 V,與P10單元板上的工作電壓相同,為了保證電壓穩(wěn)定,系統(tǒng)使用4個(gè)級(jí)聯(lián)的5 V、20 A的電源,每個(gè)電源為8塊P10單元板供電,同時(shí)給主控節(jié)點(diǎn)提供電源。

3軟件設(shè)計(jì)

軟件設(shè)計(jì)主要包括PC上位機(jī)程序以及主控節(jié)點(diǎn)程序。PC上位機(jī)與MCU之間的數(shù)據(jù)幀收發(fā)過程如圖5所示。

圖5 數(shù)據(jù)幀收發(fā)過程

3.1補(bǔ)發(fā)幀機(jī)制

在MCU軟件中設(shè)置標(biāo)記緩沖區(qū)flag_Buf[],共50 B,每一位的值1代表該數(shù)據(jù)幀接收成功;0則代表該幀數(shù)據(jù)丟失,需要補(bǔ)發(fā)。例如緩沖區(qū)第1個(gè)字節(jié)flag_Buf[0]第7位代表第1幀數(shù)據(jù)接收狀況,flag_Buf[0]第6位代表第2幀數(shù)據(jù),以此類推,flag_Buf[0]第0位代表第8幀。如圖6所示,第5、10、13幀丟失需要重發(fā)。

主控節(jié)點(diǎn)在成功接收到發(fā)來的數(shù)據(jù)后,寫入Flash空間的同時(shí)設(shè)置標(biāo)志緩沖區(qū):

flag_buf[(幀號(hào)-1)/8]=flag_buf[(幀號(hào)-1)/8]|(0x01<<(7-(幀號(hào)-1)%8))

在接收完所有數(shù)據(jù)后主控MCU反饋接收狀態(tài),然后PC上位機(jī)軟件根據(jù)收回的反饋幀找到丟失的幀號(hào),補(bǔ)發(fā)對(duì)應(yīng)幀,從而實(shí)現(xiàn)丟幀自動(dòng)補(bǔ)發(fā)的機(jī)制。

3.2位操作引擎

由于P10單元板的掃描方式是1/4掃的,所以一旦數(shù)據(jù)量變大,刷新的頻率不夠,人們就會(huì)感覺到屏幕上的字符在閃爍,為此用到了位操作引擎。

位操作引擎BME(Bit Manipulation Engine)為基于Cortex-M0+微控制器的外設(shè)地址空間的位進(jìn)行“讀—改—寫”操作提供了硬件支持,這種架構(gòu)又叫做封裝式存儲(chǔ)[6]。其目標(biāo)是使外設(shè)寄存器的n個(gè)位一起操作,可以通過普通的加載/存儲(chǔ)操作來對(duì)某一特定位進(jìn)行讀/寫[7],使得底層代碼的執(zhí)行效率有了大大提高。

對(duì)部分代碼反匯編進(jìn)行對(duì)比,可以發(fā)現(xiàn)使用BME技術(shù)比原有“讀—改—寫”方法占用代碼空間更小,執(zhí)行效率更高。代碼如下:

//BME操作,拉低LED_CLK引腳,即PORTE的19引腳。

U32temp=(*( volatile unsigned long int *)(unsigned long int) 0x4A6FF100);

5c2a: 4b1eldr r3, [pc, #120]; (5ca4 )

5c2c: 681cldr r4, [r3, #0]

//普通操作,首先找到PORTE的GPIO基地址,然后拉低輸出引腳

volatile uint_32 *PE=(uint_32*)0x400FF100u;

5c20: 4b22ldr r3, [pc, #136]; (5cac )

5c22: 60fbstr r3, [r7, #12]

*PE &= ~(1<<19);

5c2a: 68fbldr r3, [r7, #12]

5c2c: 681aldr r2, [r3, #0]

5c2e: 4b20ldr r3, [pc, #128];(5cb0 )

5c30: 401aands r2, r3

5c32: 68fbldr r3, [r7, #12]

5c34: 601astr r2, [r3, #0]

3.3MQX操作系統(tǒng)

圖6 幀標(biāo)記

MQX是1989年P(guān)recise Software Technologies公司開發(fā)的一款面向工業(yè)控制、汽車電子等領(lǐng)域的多任務(wù)、多處理器的嵌入式實(shí)時(shí)操作系統(tǒng)(RTOS)[8],具有代碼開源、成本低、可裁減性和可移植性、占用ROM空間少、外設(shè)驅(qū)動(dòng)豐富等特點(diǎn)[9]。

任務(wù)(TASK)是RTOS中最重要的操作對(duì)象,是操作系統(tǒng)的基本組成元素。任一時(shí)刻,有且僅有一個(gè)任務(wù)會(huì)處于運(yùn)行狀態(tài),控制CPU資源。把整個(gè)LED顯示屏任務(wù)主要分解成3個(gè)任務(wù):①task_led任務(wù),負(fù)責(zé)控制LED顯示屏顯示字符;②task_rf_recv任務(wù),負(fù)責(zé)接收PC端無線發(fā)送過來的數(shù)據(jù)并處理;③task_rf_send任務(wù),返回標(biāo)志緩沖區(qū)數(shù)據(jù)給PC端,判斷數(shù)據(jù)幀接收狀況。

MQX通過任務(wù)模板列表定義一組初始化模板(其中必須有一個(gè)自啟動(dòng)任務(wù)task_main),基于該模板,任務(wù)可以在處理器上被創(chuàng)建,每個(gè)任務(wù)都會(huì)有其優(yōu)先級(jí),有時(shí)優(yōu)先級(jí)可以改變。初始化時(shí),MQX查找任務(wù)模板的自啟動(dòng)任務(wù)并生成其他任務(wù)。

任務(wù)間的通信機(jī)制使得多任務(wù)間能夠相互同步和通信,從而協(xié)調(diào)各個(gè)任務(wù)調(diào)用的主要手段[10]。本設(shè)計(jì)主要用到了它的事件位機(jī)制,例如,主控模塊在接收到數(shù)據(jù)之后,會(huì)產(chǎn)生GPIO中斷,此時(shí)置RF接收事件位,通知task_rf_recv任務(wù)可以得到執(zhí)行,該任務(wù)狀態(tài)從阻塞態(tài)變?yōu)檫\(yùn)行態(tài),而之前正在執(zhí)行的任務(wù)將會(huì)被阻塞。

4實(shí)驗(yàn)與分析

在編寫程序之前,首先對(duì)硬件設(shè)備進(jìn)行了測試,確保電源電壓模塊正常,使用的LED顯示屏無壞點(diǎn),RF模塊通信正常。在整套系統(tǒng)建立好之后,就進(jìn)入了系統(tǒng)的測試環(huán)節(jié)。如圖7所示,打開軟件,單擊“打開串口”按鈕,自動(dòng)獲取星期及天氣狀況等信息;在文本框中,用戶可根據(jù)需要編輯內(nèi)容,然后單擊“一鍵發(fā)送”即可。接收框中返回LED顯示屏主控模塊的接收狀況。

結(jié)語

通過對(duì)以往LED顯示屏控制系統(tǒng)的傳輸控制方式、LED顯示屏的顯示原理進(jìn)行了分析與研究以后,設(shè)計(jì)了一種LED顯示屏控制系統(tǒng)??刂葡到y(tǒng)選用32位的KW01芯片作為主控芯片,實(shí)現(xiàn)了采用Sub-1 GHz進(jìn)行數(shù)據(jù)傳輸?shù)耐ㄐ欧绞剑栽龃髷?shù)據(jù)傳輸量、簡化字符更新操作、節(jié)約人力成本,用戶可隨時(shí)對(duì)控制卡進(jìn)行操作。另外,后期將根據(jù)光敏傳感器所采集的光線強(qiáng)度數(shù)據(jù)來調(diào)整亮暗的顯示時(shí)間占空比,從而根據(jù)應(yīng)用環(huán)境,自動(dòng)更新LED顯示屏的亮度。經(jīng)多次測試表明,該系統(tǒng)通信穩(wěn)定、抗干擾能力強(qiáng)、具有良好的市場前景。

參考文獻(xiàn)

[1] 高敏.LED 顯示屏發(fā)展綜述[J].電子制作, 2015(8).

[2] 路微.LED 顯示屏的特點(diǎn)與發(fā)展趨勢[J].電子世界, 2014(14):9.

[3] 彭俊.基于無線數(shù)據(jù)傳輸?shù)腖ED顯示屏設(shè)計(jì)與實(shí)現(xiàn)[D].長沙:湖南大學(xué), 2013.

[4] Freescale.MKW01RM.[EB/OL].[2015-07].http://www.freescale.com/,2013.

[5] 胡宗棠.基于Cortex-M0+內(nèi)核Kinetis無線射頻模塊的應(yīng)用研究[D].蘇州:蘇州大學(xué), 2014.

[6] 王宜懷等.嵌入式技術(shù)基礎(chǔ)與實(shí)踐—ARM Cortex-M0+ Kinetis L系列微控制器[M].北京:清華大學(xué)出版社,2013.

[7] Freescale.KEA128 Sub-Family Reference Manual Rev 2,2014.

[8] Wikipedia.MQX[EB/OL].[2015-07].http://en.wikipedia.org/wiki/MQX.

[9] Freescale.Freescale MQX RTOS 4.0.0 Release Notes[EB/OL].[2015-07].http://www.freescale.com/mqx.

[10] 程玉娟.嵌入式實(shí)時(shí)操作系統(tǒng)MQX的內(nèi)核分析及應(yīng)用研究[D].蘇州:蘇州大學(xué), 2011.

陸偉國(研究生)、龐馥珊(講師),從事嵌入式研究工作。

Lu Weiguo1,Pang Fushan2

(1.Compnter Science and Technology, Soochow University, Suzhou 215000, China; 2.Suzhou Institute of Trade)

Abstract:A wireless LED screen control system based on KW01 chip is designed,which is embedded the RTOS MQX and can be used to wireless control the LED display.The system uses Freescale’s KW01 chip as the wireless communication node’s transceiver chip,which integrates a UHF radio transceiver SX1233.Each node comes with a docking that can lead to its function pins.The design can achieve the data transmission between the PC and the master module with the radio frequency(Sub-1 GHz band).The test results prove that the system is flexible,stable to communicate,easy to operate.

Key words:LED screen;KW01;radio frequency;MQX

收稿日期:(責(zé)任編輯:楊迪娜2015-07-20)

中圖分類號(hào):TP302.1

文獻(xiàn)標(biāo)識(shí)碼:A

剑河县| 类乌齐县| 苏尼特右旗| 龙南县| 靖江市| 祥云县| 钦州市| 富锦市| 望城县| 富平县| 阳曲县| 济南市| 巴南区| 隆德县| 甘孜| 英吉沙县| 呼伦贝尔市| 茶陵县| 老河口市| 平原县| 广德县| 准格尔旗| 苗栗市| 县级市| 红河县| 武汉市| 永吉县| 永胜县| 腾冲县| 龙井市| 鹤庆县| 肇东市| 合江县| 大田县| 永昌县| 昌黎县| 谷城县| 老河口市| 汕头市| 江门市| 新泰市|