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

?

LED點(diǎn)陣顯示屏字符信息顯示方法及應(yīng)用

2012-07-24 09:28李志強(qiáng)郭麒肖尊興陳海明
中國新技術(shù)新產(chǎn)品 2012年2期
關(guān)鍵詞:控制卡PC機(jī)字符

李志強(qiáng) 郭麒 肖尊興 陳海明

(衡陽師范學(xué)院,湖南 衡陽 421008)

1 引言

LED點(diǎn)陣顯示屏是由一系列發(fā)光二極管排列組合而成的點(diǎn)陣,根據(jù)字形控制點(diǎn)陣屏局部發(fā)光完成字母、數(shù)字和漢字顯示。LED屏的顯示多采用計(jì)算機(jī)控制,目前生產(chǎn)廠家提供的LED屏控制系統(tǒng)都是通過控制LED屏來顯示各種數(shù)據(jù)的。由于數(shù)據(jù)種類的多樣混雜,數(shù)據(jù)不能以一種穩(wěn)定格式進(jìn)行保存。本文所介紹的顯示方法用到的系統(tǒng)雖也是控制LED屏顯示的軟件,但它是采用表格數(shù)據(jù)庫保存數(shù)據(jù),將表格數(shù)據(jù)庫和LED屏顯示直接連接起來,讓LED屏顯示表格數(shù)據(jù)庫中的內(nèi)容,從而解決LED屏不能統(tǒng)一管理數(shù)據(jù)顯示的問題,也使得各種文字信息的公布變得更加方便。

顯示中,我們需用到現(xiàn)行計(jì)算機(jī)通用的字庫字模,一個字的點(diǎn)陣分為 16×16、24×24、32×32和48×48等不同規(guī)格。一個LED顯示屏成品主要由控制卡和單元板兩部分組成。組裝LED屏?xí)r,必須先確定接口的一致性,才方便組裝。如果接口不一致,需自行制作轉(zhuǎn)換線。

在系統(tǒng)中信號先由PC機(jī)發(fā)送給控制卡,通過控制卡識別信號,再根據(jù)識別情況返回一個信號給PC機(jī),如果控制卡識別成功,將把顯示信號發(fā)給LED屏,讓其顯示相應(yīng)信息。PC機(jī)上的控制軟件對顯示信號進(jìn)行操作,先將PC機(jī)上的字符機(jī)器碼編譯成LED屏顯示碼,通過串口發(fā)送給控制卡,再根據(jù)控制卡返回的信號在PC機(jī)上判斷LED屏是否顯示成功,然后控制卡會自動將正確的顯示碼發(fā)送給LED屏。

2 應(yīng)用中提取字符顯示編碼的方法

在許多單片機(jī)與嵌入式應(yīng)用系統(tǒng)中,經(jīng)常要用到文字顯示,如何提取字符點(diǎn)陣顯示信息,本文接下來就這一問題介紹一種簡易、快速的提取方法。PC機(jī)中的數(shù)據(jù)通過串口通信發(fā)送,在程序中一般以16進(jìn)制表示2進(jìn)制數(shù),常見的編碼有ASCII碼、Binary碼、Unicode碼等。在要介紹的提取方法中,LED屏顯示數(shù)據(jù)的編碼是相對獨(dú)立的,它的編碼由廠家設(shè)定,顯示數(shù)據(jù)中,數(shù)字和字母的編碼由ASCII碼轉(zhuǎn)換而來,漢字編碼由Unicode碼轉(zhuǎn)換而來。

2.1 顯示西文字符

字母和數(shù)字的顯示編碼是將它們的ASCII碼減去0x0a作為高8位,將0x63作為低8位;若是多個字母或數(shù)字,則將它們的ASCII碼減去0x0a并從高到低依次存放,再將0x63存放在低8位即可。

以字母“A”為例說明:

字母“A”的 ASCII碼為 0x41,0x41-0x0a=0x37,將0x37作為高8位,0x63作為低8位,得到字母“A”的LED屏顯示編碼為0x3763。

2.2 顯示漢字

①漢字內(nèi)碼轉(zhuǎn)換成Unicode碼

漢字在PC機(jī)中存儲的漢字標(biāo)準(zhǔn)交換碼是一種計(jì)算機(jī)內(nèi)部碼,是微機(jī)內(nèi)部使用的代碼、系統(tǒng)處理的對象。在計(jì)算機(jī)內(nèi)英文字符是用一個字節(jié)的ASCII碼表示,由于漢字眾多,對一個漢字需用兩個字節(jié)表示,且為了與系統(tǒng)中ASCII碼相區(qū)別,將這兩個字節(jié)的最高位置1,作為機(jī)器內(nèi)的漢字代碼即機(jī)內(nèi)碼,簡稱內(nèi)碼。要將漢字內(nèi)碼轉(zhuǎn)換成LED屏顯示碼就必須先將其轉(zhuǎn)換成Unicode碼,在VC++中有一個函數(shù)能完成此轉(zhuǎn)換功能,該函數(shù)為:

intMultiByteToWideChar(UINT Code-Page,

該函數(shù)最后返回一個整數(shù),若函數(shù)調(diào)用成功且轉(zhuǎn)換的字符不為空,則返回寬型字符的數(shù)值;若函數(shù)調(diào)用成功而轉(zhuǎn)換的字符為空,則返回一個能接收轉(zhuǎn)換字符緩沖大小的數(shù)值;若函數(shù)調(diào)用失敗,則返回0。該函數(shù)有六個參數(shù):第一個參數(shù)表示轉(zhuǎn)換要得到的編碼類型;第二個參數(shù)表示轉(zhuǎn)換類型的設(shè)置;第三個參數(shù)表示將要轉(zhuǎn)換的字符串;第四個參數(shù)表示將要轉(zhuǎn)換的字符串的字節(jié)數(shù);第五個參數(shù)表示轉(zhuǎn)換后字符存儲區(qū)的首地址;第六個參數(shù)表示存儲區(qū)的大小。

②Unicode碼轉(zhuǎn)換成顯示編碼

將漢字在PC機(jī)上存儲的漢字標(biāo)準(zhǔn)交換碼轉(zhuǎn)換成Unicode碼后,將Unicode碼的低8位加上0x70所得的除進(jìn)位以外的8位作為高8位,再將Unicode碼的高8位減去0x43后與上一步的進(jìn)位相加作為低8位;若是多個漢字,則通過同樣的方式轉(zhuǎn)換后,從高到低依次存放即可。

以漢字“我”為例說明:

漢字“我”在PC機(jī)上存儲的漢字標(biāo)準(zhǔn)交換碼為4650,利用MultiByteToWideChar函數(shù)轉(zhuǎn)換得到其Unicode碼為0x6211,其Unicode碼的低8位為0x11,0x11+0x70=0x81,所得除進(jìn)位以外的8位0x81作為高8位;Unicode碼的高8位為0x62,0x62-0x43=0x1F,上一步?jīng)]有進(jìn)位,0x1F直接作低8位,漢字“我”的LED屏顯示編碼就為0x811F。

發(fā)送給LED屏的數(shù)據(jù)除了字符的顯示編碼外還有它從高位起的48個字節(jié)和從低位起的4個字節(jié),這些數(shù)據(jù)共同組成LED顯示字符的數(shù)據(jù)包,其中高位字節(jié)的第19個字節(jié)表示進(jìn)入動畫,第20個字節(jié)表示環(huán)繞邊框,第21個字節(jié)表示進(jìn)入速度,第22個字節(jié)表示停留時間,第41個字節(jié)表示字體顏色,第45個字節(jié)表示字符個數(shù),其低位字節(jié)的第1、2個字節(jié)表示驗(yàn)證碼,這是前面高位所有數(shù)求和所得的兩個字節(jié),然后交換其本身的高低字節(jié)得到。

結(jié)論

本文論述了如何在LED顯示屏上顯示字符信息的方法,并結(jié)合實(shí)例進(jìn)行了說明。從而很好地解決了在LED顯示屏上顯示表格信息這一難題。此方法通過直接將計(jì)算機(jī)中的數(shù)據(jù)庫和LED顯示屏連接,實(shí)現(xiàn)了用計(jì)算機(jī)控制LED屏的功能,加上計(jì)算機(jī)中數(shù)據(jù)庫技術(shù)已十分成熟,因此可以方便地對數(shù)據(jù)進(jìn)行存儲、修改、刪除,所以本文提出的LED點(diǎn)陣顯示屏字符信息顯示的方法解決了其他LED顯示系統(tǒng)不便于設(shè)計(jì)表格和保存數(shù)據(jù)的問題。

所述方法在LED點(diǎn)陣顯示屏、學(xué)風(fēng)信息顯示系統(tǒng)等方面的應(yīng)用,充分顯示了此顯示方法具有靈活性好、功能強(qiáng)、簡單易操作等優(yōu)點(diǎn),有很好的發(fā)展前景。

[1]李衛(wèi)東.微機(jī)控制LED點(diǎn)陣顯示屏[J].大連理工大學(xué),2000,(1):23-24.

[2]黃永順.從國標(biāo)字庫中提取漢字點(diǎn)陣信息的方法及應(yīng)用 [J]漳州師范師院學(xué)報,2004,(17):48-50.

[3]趙堂春,李勇,陶砂.基于 32×16LED 顯示屏混合字符顯示的設(shè)計(jì)與實(shí)現(xiàn)[J].制造業(yè)自動化,2010,(5):45-50.

[4]余金棟,寫式LED點(diǎn)陣顯示屏的設(shè)計(jì)[J].電子技術(shù),2010,(5):50-55.

[5]哲源.掌握VisualC++MFC程序設(shè)計(jì)與剖析[M].北京:清華大學(xué)出版社,2001,120-123.

[6]李剛.MSCEComm控件在串口編程中的應(yīng)用 [J].重慶電力高等??茖W(xué)校學(xué)報,2003,(4):11-62.

[7]闞能琪,汪鑫.MSComm控件在串口編程中的應(yīng)用[J].四川工業(yè)學(xué)院學(xué)報,(1):2003,56-77.

猜你喜歡
控制卡PC機(jī)字符
兼容多種運(yùn)動控制卡的V割機(jī)數(shù)控系統(tǒng)關(guān)鍵技術(shù)*
字符代表幾
三軸機(jī)械手控制器設(shè)計(jì)
一種USB接口字符液晶控制器設(shè)計(jì)
消失的殖民村莊和神秘字符
基于PC機(jī)與單片機(jī)的多機(jī)通信技術(shù)及抗干擾方法
基于三菱FXPLC的感應(yīng)淬火機(jī)床與PC機(jī)的串行通信實(shí)現(xiàn)
基于運(yùn)動控制卡的桁架機(jī)器人控制系統(tǒng)設(shè)計(jì)
VC.NET下實(shí)現(xiàn)dsPIC單片機(jī)與PC機(jī)的通信
排除OLT設(shè)備登錄故障
广元市| 高清| 怀集县| 仲巴县| 南城县| 库伦旗| 蕲春县| 津南区| 邓州市| 华亭县| 大石桥市| 灵寿县| 商水县| 蒙自县| 黄龙县| 马关县| 贺兰县| 宁陕县| 宜兰市| 天镇县| 望奎县| 昔阳县| 和林格尔县| 吉安县| 阿拉善盟| 镇江市| 赤峰市| 湄潭县| 荣昌县| 信阳市| 沁源县| 河南省| 唐山市| 洪江市| 互助| 南昌市| 安丘市| 陆河县| 卫辉市| 祁门县| 焦作市|