<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 光電顯示 > 設計應用 > SIM300實(shí)現無(wú)線(xiàn)LED顯示屏控制系統

SIM300實(shí)現無(wú)線(xiàn)LED顯示屏控制系統

作者: 時(shí)間:2012-03-21 來(lái)源:網(wǎng)絡(luò ) 收藏

  引言

  針對目前LED 點(diǎn)陣顯示屏的廣泛應用以及GPRS 網(wǎng)絡(luò )全國覆蓋的優(yōu)勢, 提出基于GPRS技術(shù)的無(wú)線(xiàn)LED 顯示屏方案。詳細介紹的系統結構、軟硬件設計過(guò)程和通信協(xié)議的制定。此設計在多LED 顯示屏組網(wǎng)控制,而LED 屏又分布范圍較廣時(shí)優(yōu)勢較明顯,可以拓寬LED 顯示屏的應用領(lǐng)域,具有一定的應用價(jià)值。

  1 系統工作原理

  本系統主要由上位機和下位機組成。上位機為安裝有LED 屏管理軟件而且能連接Internet 或GPRS 網(wǎng)絡(luò )的設備,例如PC、移動(dòng)設備等。下位機為以AVR 單片機控制模塊為主的LED 屏無(wú)線(xiàn)控制器。系統拓撲結構如圖1 所示。

  

LED顯示屏無(wú)線(xiàn)控制系統拓撲結構

  系統主要利用GPRS 模塊作為無(wú)線(xiàn)Modem, 實(shí)現了LED 顯示屏無(wú)線(xiàn)控制器(作為客戶(hù)端)撥號上網(wǎng),與Internet 網(wǎng)絡(luò )上的上位機(作為服務(wù)端)進(jìn)行TCP 無(wú)線(xiàn)通信,實(shí)現數據傳輸,完成對LED 屏的無(wú)線(xiàn)數據更新。

  2 下位機硬件設計

  如圖2 所示,LED 屏無(wú)線(xiàn)控制器主要由四部分組成: 電源模塊、GPRS 模塊、AVR 單片機控制模塊、。

  

LED顯示屏無(wú)線(xiàn)控制的硬件電路框圖

  2.1 AVR 單片機控制模塊

  為了保證通信數據的實(shí)時(shí)性和效率, 又能兼顧驅動(dòng)LED 顯示屏, 所以本模塊采用的MCU 是擁有雙串口的ATMEL 公司的ATmega 162.它是一款基于A(yíng)VRRISC 的低功耗CMOS 的8 位單片機,其穩定性、可靠性非常高, 能適應各種環(huán)境, 適用于各種不同的無(wú)線(xiàn)LED 顯示屏使用環(huán)境。

  本模塊主要處理GPRS 模塊接收到的信息, 并將接收到的屏顯信息傳送給LED 屏,同時(shí)通過(guò)串口發(fā)出AT 指令監視GPRS 模塊是否有新消息。一旦有,立刻進(jìn)入串口中斷,對數據進(jìn)行處理。在TCP/IP 協(xié)議下,數據采用十六進(jìn)制的方式傳輸,不需要進(jìn)行漢字解碼,大大簡(jiǎn)化了系統外圍電路的設計。

  2.2 GPRS 模塊電路

  GPRS 模塊采用了SIMCOM 公司的.該模塊體積小巧,性能突出,可廣泛應用于無(wú)線(xiàn)語(yǔ)音傳輸、車(chē)載系統、遠程抄表、安全監控、遙控遙測、手持設備等領(lǐng)域。

   模塊具有功能完備的系統接口,在內部集成了TCP/IP 協(xié)議棧,擴展了TCP/IP AT 指令,可以通過(guò)串口對其提供的AT 指令進(jìn)行交互操作。這樣可以降低開(kāi)發(fā)難度,易于實(shí)現數據傳輸,而且成本較低,系統的可擴展性好。

   需要外接SIM 卡卡座,其串口與單片機的串口相連,將GPRS 模塊接收到的信息傳送給單片機,然后進(jìn)行數據處理。而AVR 單片機則控制SIM300 模塊的開(kāi)關(guān),AVR 單片機與SIM300 模塊的連接示意圖如圖3 所示。

  

SIM300實(shí)現無(wú)線(xiàn)LED顯示屏控制系統

  2.3 LED 屏驅動(dòng)電路

  本系統的LED 條屏采用比較經(jīng)典的74HC595 作為點(diǎn)陣輸出的列驅動(dòng),采用ULN2803 作為行驅動(dòng)。此方案的驅動(dòng)電路設計軟硬件設計簡(jiǎn)單,而且功耗低、驅動(dòng)能力強、占用的I/O 口線(xiàn)較少,是一種造價(jià)低廉、應用靈活的設計方案。

  3 通信協(xié)議設計

  由于本系統采用了GPRS 網(wǎng)絡(luò )的通信模式, 所以上位機設置一個(gè)LED 控制器管理平臺來(lái)管理所有的LED 控制器。這個(gè)LED 控制器管理平臺(即"上位機軟件")通過(guò)TCP/IP 協(xié)議與LED 屏無(wú)線(xiàn)控制器進(jìn)行通信,而且可以同時(shí)控制多臺。上位機軟件與LED 屏無(wú)線(xiàn)控制器之間采用GPRS 方式進(jìn)行連接, 它們之間的連接關(guān)系如圖4 所示。

  

上位機軟件與LED屏控制器的連接關(guān)系

  LED 屏無(wú)線(xiàn)控制器是客戶(hù)端, 其數據的收發(fā)通過(guò)上位機軟件控制。當LED 屏控制器上電運行后,會(huì )主動(dòng)向上位機軟件建立連接并握手,登錄成功后,上位機軟件與LED 控制器才能進(jìn)行數據傳輸。

  上位機軟件與各LED 屏無(wú)線(xiàn)控制器之間通信協(xié)議是以TCP 協(xié)議為基礎協(xié)議, 并自定義了一個(gè)STCP協(xié)議層用于封裝PDU(數據單元)數據層協(xié)議。STCP 協(xié)議層只為PDU 的承載框架, 提供安全可靠的傳輸過(guò)程。通信網(wǎng)絡(luò )層結構圖如圖5 所示。

  

通信網(wǎng)絡(luò

  圖5 通信網(wǎng)絡(luò )層結構圖

  在自定義的STCP 通信協(xié)議中,制定了一系列管理無(wú)線(xiàn)LED 顯示屏控制器的通信指令,主要為上位機軟件的編程提供具體的通信結構和規范。通信包格式如表1所示:

表1 通信包格式

  

通信包格式

  注:

  完整數據長(cháng)度: 整型字節(4 個(gè)字節長(cháng)度),整個(gè)通信包的長(cháng)度;

  命令字: 根據無(wú)線(xiàn)LED 顯示屏控制器通信指令表,見(jiàn)表2;

  顯式控制字: 0-無(wú);1-上移;2-下移;3-左移;4-右移;5-靜止;6-閃爍;7-刪除;

  數據內容:需要顯示信息內容;

  校驗和: 全部數據累加校驗和;

  根據無(wú)線(xiàn)LED 顯示屏控制器實(shí)際運用需要,制定了發(fā)送、刪除、顯示、連接、斷開(kāi)指令等。這些指令的代碼和主要作用如表2 所示。

  表2 通信指令表

  

通信指令表

  上位機軟件通過(guò)Internet 網(wǎng)絡(luò )將數據發(fā)送到無(wú)線(xiàn)LED 顯示屏控制器后,LED 顯示屏控制器需要對收到的數據進(jìn)行處理。根據指令的不同,可以控制LED 顯示屏的顯示內容及顯示模式(例如上移、下移、左移、右移、靜止、閃爍、刪除等)。

  4 軟件設計

  本系統的軟件設計包括兩部分: 上位機軟件和AVR 單片機的控制程序。上位機軟件完成與GPRS 模塊的通信, 控制LED 顯示屏上顯示的數據信息;AVR單片機的控制軟件主要完成系統初始化,GPRS 網(wǎng)絡(luò )連接,接收上位機發(fā)送的信息,分析接收信息內容,完成指令, 并按需將發(fā)布信息轉換為點(diǎn)陣信息, 送到進(jìn)行顯示。

  4.1 AVR 單片機的控制程序

  AVR 單片機的控制程序主要完成以下功能:連接GPRS 網(wǎng)絡(luò )、數據傳輸、控制LED 屏顯示。

  (1)初始化系統及SIM300 模塊,連接GPRS 網(wǎng)絡(luò );(2)依照顯示屏控制器與上位機的通信協(xié)議,與上位機通信握手,接收指令,解析指令,并將顯示數據等信息存儲與處理;(3)通過(guò)串口驅動(dòng)LED 屏,進(jìn)行信息的顯示等。

  下面簡(jiǎn)單介紹SIM300 模塊與上位機實(shí)現TCP/IP無(wú)線(xiàn)通信流程。

  AT+CGDCONT=1,"IP","CMNET" --注冊中國移動(dòng)網(wǎng)絡(luò )

  OK

  AT+CGCLASS? --顯示GPRS 信息移動(dòng)的類(lèi)型

  +CGCLASS: "B"

  OK

  AT+CGATT? --GPRS 服務(wù)附加/分離

  +CGATT: 1

  OK

  AT+CGACT=1,1 --環(huán)境激活

  OK

  AT +CIPSTART = "TCP","202.196.87.7","2020" -- 啟動(dòng)

  TCP 連接(上位機IP 地址及端口號)

  OK

  CONNECT OK --連接成功

  AT+CIPSEND --通過(guò)TCP 發(fā)送數據

  > HELLO

  SEND OK --發(fā)送成功

  4.2 上位機軟件

  本系統的上位機軟件主要采用VC 設計一個(gè)通信界面,實(shí)現與LED 遠程控制器通信。用戶(hù)界面部分采用MFC 框架基于Dialog 實(shí)現。在利用Visual C++進(jìn)行通過(guò)TCP/IP 協(xié)議網(wǎng)絡(luò )傳輸數據開(kāi)發(fā)時(shí), 采用IOCP 框架來(lái)實(shí)現Windows Socket 的完成端口模型。

  IOCP 即I/O 完成端口(I/O Completion Port),是一個(gè)異步I/O 的API,它可以高效地將I/O 事件通知給應用程序。一個(gè)套接字在被創(chuàng )建后,與一個(gè)完成端口進(jìn)行關(guān)聯(lián)。當一個(gè)事件發(fā)生的時(shí)候,此完成端口就將被操作系統加入一個(gè)隊列中, 然后應用程序可以對核心層進(jìn)行查詢(xún)以得到此完成端口。當某項I/O 操作一旦完成, 某個(gè)可以對該操作結果進(jìn)行處理的工作線(xiàn)程就會(huì )收到一則通知。在此應用程序中創(chuàng )建一定數量的工作線(xiàn)程來(lái)處理重疊I/O 請求的通知。

  IOCP 框架的啟動(dòng)流程如圖6 所示。

  

SIM300實(shí)現無(wú)線(xiàn)LED顯示屏控制系統

  IOCP 框架的實(shí)現步驟如下:

  (1)初始化Winsock 工作環(huán)境,并創(chuàng )建完成端口,創(chuàng )建完成端口線(xiàn)程,建立一個(gè)監聽(tīng)套接字,使套接字與完成端口關(guān)聯(lián)起來(lái);


上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: SIM300 LED顯示屏 控制系統

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>