新聞中心

EEPW首頁 > 光電顯示 > 設(shè)計(jì)應(yīng)用 > 基于PSoC的精簡尺寸型LED點(diǎn)陣系統(tǒng)設(shè)計(jì)方案

基于PSoC的精簡尺寸型LED點(diǎn)陣系統(tǒng)設(shè)計(jì)方案

作者: 時(shí)間:2012-07-10 來源:網(wǎng)絡(luò) 收藏

圖2 LED顯示屏工作原理

1.2.5 與PC 機(jī)之間的通信

與PC機(jī)之間的通信如圖3 所示,采用Si4432無線收發(fā)模塊通信,在這里采用的是Si4432 芯片是Silicon Labs 公司推出的一款高集成度、低功耗、多頻段的EzRadioPRo 系列無線收發(fā)芯片。其工作電壓為1.9~3.6 V,可工作在315/433/868/915 MHz 四個(gè)頻段;內(nèi)部集成分集式天線、功率放大器、喚醒定時(shí)器、數(shù)字調(diào)制解調(diào)器、64 字節(jié)的發(fā)送和接收數(shù)據(jù)FIFO,以及可配置的GPIO 等。Si4432 在使用時(shí)所需的外部元件很少,僅需30MHz 的晶振、幾個(gè)電容和電感就可組成一個(gè)高可靠性的收發(fā),簡單,且成本低。

Si4432 的接收靈敏度達(dá)到-117 dB,可提供極佳的鏈路質(zhì)量,在擴(kuò)大傳輸范圍的同時(shí)將功耗降至最低;最小濾波帶寬達(dá)8 kHz,具有極好的頻道選擇性;在240~960 MHz 頻段內(nèi),不加功率放大器時(shí)的最大輸出功率就可達(dá)+20dBm,良好時(shí)收發(fā)距離最遠(yuǎn)可達(dá)2km.

Si4432 可適用于無線數(shù)據(jù)通信、無線RS485/RS232 數(shù)據(jù)通信等諸多領(lǐng)域。

圖3 基于PSoC 的多功能精簡尺寸型LED 點(diǎn)陣系統(tǒng)和PC 機(jī)通信的硬件框圖

圖3 的多功能 和PC 機(jī)通信的硬件框圖

組成了一個(gè)星型網(wǎng)絡(luò),PC 與多個(gè) 顯示屏間的通信屬于多機(jī)通信。采用主從式結(jié)構(gòu):主機(jī)是PC 機(jī)通過查找相應(yīng)的地址控制不同的從機(jī),作為從機(jī)的PSoC 控制無線收發(fā)模塊不主動(dòng)發(fā)送命令或數(shù)據(jù),由主機(jī)控制并且在一個(gè)多機(jī)系統(tǒng)中,只有一臺主機(jī)即PC 機(jī),各臺從機(jī)之間不相互通信,即使要信息交換也必須經(jīng)過主機(jī)轉(zhuǎn)發(fā)。最后經(jīng)過無線收發(fā)模塊以數(shù)據(jù)包的形式,發(fā)送到 顯示屏。本系統(tǒng)定義的數(shù)據(jù)包格式如下表2 所示:其中,前導(dǎo)碼是0XFFAA55.

數(shù)據(jù)包在傳輸過程中會(huì)在每個(gè)包的前面加上可設(shè)置好長度的前導(dǎo)碼;接收端為了識別幀的到來,需要前導(dǎo)碼進(jìn)行幀同步,從而確定收發(fā)系統(tǒng)之間何時(shí)發(fā)送和接收數(shù)據(jù)。同步字在前導(dǎo)碼之后,要用設(shè)定好的同步字作為同步模式的標(biāo)志碼。本系統(tǒng)設(shè)定的同步字為2 個(gè)字節(jié),同步字內(nèi)容為0x2DD4,接收端在檢測到同步字后才開始接收數(shù)據(jù)。數(shù)據(jù)載荷長度為1 字節(jié),有效數(shù)據(jù)載荷是用戶所發(fā)送的數(shù)據(jù)。CRC 校驗(yàn)和由內(nèi)置CRC 校檢。Si4432 內(nèi)部集成有調(diào)制/解調(diào)、編碼/解碼等功能,從而前導(dǎo)碼、同步字、數(shù)據(jù)載荷長度和CRC校驗(yàn)和都通過硬件自動(dòng)加上去的,用戶只需設(shè)定數(shù)據(jù)包的組成結(jié)構(gòu)和部分結(jié)構(gòu)的具體內(nèi)容如前導(dǎo)碼和同步字就可以。

表2 數(shù)據(jù)包格式

表2 數(shù)據(jù)包格式

1.3 系統(tǒng)軟件

利用中斷分時(shí)處理的原理構(gòu)成系統(tǒng)主程序和中斷服務(wù)程序。其中主程序如圖4,該主程序不斷的判斷相應(yīng)的flag 是否為1 只要flag 等于1 就通過中斷進(jìn)入相應(yīng)的子程序。中斷子程序(Timer8 Interrupt), 作時(shí)間間斷、計(jì)數(shù)器標(biāo)志單元為70H、每當(dāng)?t=100ms 到了就是相應(yīng)的flag 置1.

1.4 主機(jī)應(yīng)用程序

應(yīng)用程序如圖5 所示是利用Delphi 開發(fā)編制。

Delphi 是Windows 平臺下簡單、易學(xué)、強(qiáng)大、簡便易用和代碼執(zhí)行速度快、高效的可視化開發(fā)環(huán)境(IDE),其具有所見即所得的可視化界面設(shè)計(jì)風(fēng)格和面向?qū)ο蟮某绦蛟O(shè)計(jì)等特點(diǎn),已廣泛應(yīng)用于各個(gè)領(lǐng)域。

Delphi 提供了良好的界面設(shè)計(jì)能力,在PC 串口通信方面也有很強(qiáng)的功能。

圖5 上位機(jī)軟件界面之一

圖5 上位機(jī)軟件界面之一

1.4.1 取模

顯示漢字必然要用到漢字的字形信息, 也叫做漢字的字模。即漢字字形的數(shù)字化。根據(jù)漢字的顯示清晰度,本應(yīng)用軟件多種字模供用戶選擇。以16×6字模來舉例,每一個(gè)字由16 行16 列的點(diǎn)陣組成顯示。即國標(biāo)漢字庫中的每一個(gè)字均由256 點(diǎn)陣來表示。

我們可以把每一個(gè)點(diǎn)理解為一個(gè)像素,而把每一個(gè)字的字形理解為一幅圖像。事實(shí)上這個(gè)顯示屏不僅可顯示漢字, 也可顯示在256 像素范圍內(nèi)的任何圖形。通過建立位圖的方法來取??煞奖泔@示各種特殊字符。

取模方式可分成橫向,縱向取模,供用戶選擇。

1.4.2 Delphi 環(huán)境下串口通信實(shí)現(xiàn)方法

本系統(tǒng)選用了MSComm 控件,它通過串行端口傳送和接收數(shù)據(jù)為應(yīng)用程序提供基本的串口通信功能,使得程序員不必花費(fèi)大量的時(shí)間去了解較為復(fù)雜的API 函數(shù)。本系統(tǒng):采用的是發(fā)送二進(jìn)制數(shù),需要使用Variant變量矩陣,矩陣大小自動(dòng)調(diào)節(jié)mscomm1.Settings :='9600,N,8,1';//參數(shù)設(shè)置,返回波特率、奇偶校驗(yàn)、數(shù)據(jù)位、停止位mscomm1.SThreshold:= 0;//一次發(fā)送所有數(shù)據(jù)mscomm1.PortOpen:=true; // 打開端口mscomm1.RThreshold := 16;//設(shè)置接收多少字節(jié)并產(chǎn)生OnComm 事件,捕獲并處理通信中發(fā)生的事件或錯(cuò)誤。

2 結(jié)論

采用PSoC 芯片設(shè)計(jì)的多功能型LED 點(diǎn)陣系統(tǒng)的功能強(qiáng)大,硬件設(shè)計(jì)簡單,軟件編程只需要調(diào)用API 函數(shù)而且系統(tǒng)可配置可以靈活多變無需外加芯片從而大大提高了性價(jià)比。


上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉