LED播放軟件的設(shè)計開發(fā)_第1頁
LED播放軟件的設(shè)計開發(fā)_第2頁
LED播放軟件的設(shè)計開發(fā)_第3頁
LED播放軟件的設(shè)計開發(fā)_第4頁
LED播放軟件的設(shè)計開發(fā)_第5頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

LED播放軟件的設(shè)計開發(fā)1.引言本論文源于實際工程項目,用于LED播放控制的PC機軟件。開發(fā)平臺為VisualStudio2005。LED顯示屏簡介[1]LED(發(fā)光二極管)顯示屏是一種利用計算機和復(fù)雜數(shù)字信號處理的電子廣告宣傳屏。它的屏體部分是由微處理器(主要是單片機)和驅(qū)動電路控制運行的,而顯面的圖像或文字由計算機編輯軟件編輯獲得的。它集微機控制技術(shù)、電子技術(shù)、通信技術(shù)計算機圖形學(xué)技術(shù)、數(shù)字圖像處理技術(shù)為一體,是一種高技術(shù)產(chǎn)品。由于LED顯示屏這種新一代信息顯示設(shè)備具有顯示圖案穩(wěn)定、功耗低、壽命長的特點,而且它綜合了各種信息顯示設(shè)備的長處,并且克服了各自的不足。特別是由于一幅顯示屏可以顯示不同的內(nèi)容,顯示方式豐富,所以在公眾場合,它具有強烈的廣告宣傳和信息傳遞秀果。現(xiàn)在國內(nèi)廣告宣傳在經(jīng)濟的快速發(fā)展和逐漸形成的市場經(jīng)濟的推動下發(fā)展很快,但室外廣告幾乎都集中于霓虹燈和廣告畫兩種,所以LED顯示屏以其優(yōu)異的性能已逐漸被應(yīng)用于大中型商場、證券公司、鬧市區(qū)等處,作為廣告宣傳和信息傳遞之用。課題的意義LED播放器⑷是指LED顯示屏信息顯示時,顯示部分是顯示屏屏體按預(yù)定格式從顯示緩存中提出信息,把它送入顯示屏顯示;計算機負責(zé)顯示內(nèi)容(文字、圖片、圖表)的編輯,并通過通訊接口向顯示屏發(fā)送,它是LEDS示信息的源泉,顯示內(nèi)容編輯的效果及信息存儲的格式等直接影響LEE顯示的效果。因此,如何開發(fā)出靈活、高效的控制系統(tǒng)是一個非常有意義的研究課題,這也是本論文研究的主要內(nèi)容。當(dāng)前國內(nèi)的LEDS放器軟件,主要有靈星雨的LED演播室占國內(nèi)市場的70%,是LEDs示主要力量;德普達LED空制系統(tǒng),它的功能不夠健全,操作不太簡便。所以LED$制系統(tǒng)的市場存在很大的潛力,前景十分廣闊。本文都對他們功能進行了融合并增加了新的功能,增進了節(jié)目

文件解析的方式及顯示內(nèi)容特效的多樣性,增強了軟件界面美觀性,操作簡易性。2丄ED顯示器播放軟件的設(shè)計由于當(dāng)前LED播放控制系統(tǒng)存在著很大的市場潛力。根據(jù)LEDS示屏系統(tǒng)的具體要求,按照工程實際需要,要設(shè)計出更加方便、人性化的控制系統(tǒng)。因此,如何開發(fā)出靈活、高效的LEDS示控制系統(tǒng)是一個非常有意義的研究課題。本文從工程實際出發(fā),為 LED顯示屏設(shè)計開發(fā)了一套節(jié)目制作與播放的軟件控制系統(tǒng),用來實現(xiàn)信息定制與顯示控制。通常情況下,系統(tǒng)通過與一臺PC機連接,開啟,即直接映射扌空制站點顯示器的左上部分的顯示內(nèi)容,控制臺來編輯節(jié)目和控制LED屏幕顯示。2.1系統(tǒng)的總體結(jié)構(gòu)LEE顯示屏控制系統(tǒng),主要功能是編輯和控制LEDk顯示的內(nèi)容。首先在上位機制作節(jié)目,然后將要顯示的區(qū)域內(nèi)容傳輸?shù)絃ED在制作節(jié)目的過程中可以在上位機預(yù)覽顯示效果。leds示的內(nèi)容豐富多彩,包括文本、圖形、表格、視頻等。LED勺整個播放系統(tǒng)主要由控制臺(本文制作的軟件)、發(fā)送卡、接收卡、LED勾成。結(jié)構(gòu)如圖2.1所示。本文主要處理控制臺節(jié)目的編輯和播放控制。LCD屏控制口串機算計

口LCD屏控制口串機算計

口Bid圖2.1 系統(tǒng)結(jié)構(gòu)框圖2.1.1軟件系統(tǒng)結(jié)構(gòu)圖LED播放器軟件的結(jié)構(gòu)分為界面模塊、播放模塊、編輯模塊、硬件和軟件設(shè)置模塊。系統(tǒng)模塊具體調(diào)用關(guān)系如圖2.2所示。圖2.2 系統(tǒng)模塊具體調(diào)用關(guān)系LED控制器功能設(shè)計2.2.1系統(tǒng)設(shè)計目標(biāo)現(xiàn)代信息顯示技術(shù)的發(fā)展,LED顯示屏以絕對的優(yōu)勢成為主流產(chǎn)品。LED顯示,根據(jù)不同場合的要求,在具體的使用功能上具有以下特點:高亮度、視角合理,顯示顏色豐富。 PC機軟件控制對安全性、實時性、準(zhǔn)確性、可靠性要求高。LEE顯示屏節(jié)目制作及播放控制的軟件系統(tǒng)(SeaSkyPlayer播放器)為LED顯示屏控制系統(tǒng)開發(fā)的一套節(jié)目制作、 播放的軟件,主要是通過圖文控制器實現(xiàn)LED言息的初始化、顯示和控制等功能,為滿足用戶的不同需求和不同的應(yīng)用場合,具體目標(biāo)如下:支持顯示屏參數(shù)軟件的初始化設(shè)置、加載;支持表格輸入;支持定時播放;支持網(wǎng)絡(luò)功能;文本支持Word,Excel:軟件開發(fā)采用面向?qū)ο蟮募夹g(shù),具有良好的可擴容性。軟件的功能實用、操作方便,并且實現(xiàn)LED顯示的軟件控制,大大提高了應(yīng)用的靈活性和軟件的伸縮性。LED系統(tǒng)設(shè)計LED播放器軟件以VisualStudio2005為平臺開發(fā),界面以對話框為基礎(chǔ),分為主編輯窗口和播放及編輯預(yù)覽窗口。主編輯窗口以對話框為基礎(chǔ),包括菜單欄、工具欄和節(jié)目編排部分。其中應(yīng)用一些專門的類進行界面美化,如CBCMer類、CToolBarEx類和CBtnST類分別美化菜單、工具欄和按鈕使界面更加親和美觀。菜單欄和工具欄包含了系統(tǒng)常用的功能,方便用戶使用;節(jié)目編排部分將用戶編排的節(jié)目以樹狀形式顯示出來,同時具有上移,下移,刪除,展開和疊起等功能,方便用戶查看和管理;節(jié)目效果編輯為用戶提供了豐富的功能,使節(jié)目顯示具有豐富的多樣性。播放及編輯預(yù)覽窗口是與主對話框相獨立的窗體,播放時,它是LEDB示信息的數(shù)據(jù)采集區(qū)域:編輯時,可以預(yù)覽節(jié)目的編輯效果,其用如下方法實現(xiàn):this->mparent=this->GetDesktopWindowO;//設(shè)置桌面為父窗口this->CreateEx(0,AfxRegisterWndClass(0,NULL,NULL,AfxGetApp0->LoadStandardIcon(IDI_WIN-LOGO)),“Screen”,WS—POPUP,Rect,NULL,NULLy倉U建窗體這種方法實現(xiàn)了以桌面為窗1:1的父窗口,然后創(chuàng)建出獨立于主編輯界面的窗體。節(jié)目窗編輯類功能LED節(jié)目文件由一個或多個節(jié)目頁組成。節(jié)目頁有兩種:正常節(jié)目頁和全局節(jié)目頁,正常節(jié)目頁是節(jié)目主要構(gòu)件,可以有多個,各節(jié)目頁之間按順序播放;全局節(jié)目頁只有一個,在整個節(jié)目播放過程中一直播放,主要用于時鐘,公司標(biāo)志等固定內(nèi)容的播放。節(jié)目頁由一個或多個節(jié)目窗組成。節(jié)目窗是用來顯示用戶所要播放的文本、圖片、動畫、多媒體片斷等內(nèi)容。節(jié)目窗有多種:文件窗、單行文本窗、靜止文本窗、表格窗、計時窗、日期時間窗等。為之對應(yīng),我們設(shè)計了節(jié)目窗編輯類。主窗口:控制節(jié)目的播放、暫停和停止,遠程控制,屏幕檢測等;節(jié)目編排對話框:添加節(jié)目頁和節(jié)目窗,設(shè)置要播放節(jié)目的次序;編輯節(jié)目對話框:設(shè)置各種節(jié)目的特效。文件窗:可以播放各種文字、圖片等文件。單行文本窗:用于播放單行文本,例如通知、廣告等文字。靜止文本窗:用于播放靜止文本,例如公司名稱、標(biāo)題等文字。表格窗:用于編輯播放表格數(shù)據(jù)。計時窗:用于計時。支持順計時和倒計時。日期時間窗:用于顯示日期及時間。圖2.3介紹了節(jié)目窗編輯類的調(diào)用關(guān)系。名稱功能說明CBaseArea設(shè)置窗口的邊框(顏色、寬度)、顏色、透明、鎖定、大小、位置、節(jié)目疋時播放等。CFatherWnd管理播放窗口(建立個雙鏈表來管理窗口層次),并根據(jù)界面?zhèn)鬟f過來的編輯命令改變播放窗口的外觀和內(nèi)容。并將播放窗口的位置信息反饋給界面。載入及保存節(jié)目文件(以xml格式)。CPlayArea建立播放節(jié)目列表,接收界面?zhèn)鱽淼牟シ趴刂泼钷D(zhuǎn)發(fā)給播放窗口。

COfficeClass管理與播放各種文件,包括文本文件、網(wǎng)頁文件、Word/excel文件、圖片文件、flash文件和各種視頻文件。除flash和視頻外,可以用40多種特效顯示以上文件。其它窗口類為LED顯示提供計時、時鐘、通知、體育比分等相關(guān)功能?!龉ぞ邫谥鞔翱诓藛螜诰庉嫻?jié)目對話框 節(jié)目頁節(jié)目編排對話框樹狀節(jié)點L 模擬時鐘時間日期框 — 二數(shù)字時鐘DV框 " —A單行文本框 *Flash表格框文本文件框視頻—?計時器框——Word'excelL靜止文本框■圖片Lip文本框計時框—?視頻輸入框—外部程序框圖2.3 節(jié)目窗編輯類的調(diào)用關(guān)系232節(jié)目管理類的設(shè)計考慮LED顯示的實際需要,本文主要設(shè)計了以下節(jié)目類:節(jié)目窗基類(CBaseArea),節(jié)目編輯類(CFatherWnd),單行文本類(CSingleLineWord),文件類(COfficeClass)等。節(jié)目管理類的繼承

關(guān)系如圖2.4所示圖2.4節(jié)目管理類的繼承關(guān)系LED節(jié)目文件格式設(shè)計節(jié)目文件是用來存儲LED播放器編輯的節(jié)目。由于LED節(jié)目由多個節(jié)目頁組成,一個節(jié)目頁由多個節(jié)目項組成。鑒于這中多層且分組的結(jié)構(gòu)形式,采用XM文件⑹來配置節(jié)目文件。2.4.1文件概述XML(ExtensibleMarkupLanguage)是W3(的標(biāo)準(zhǔn)的可擴展標(biāo)記語言,它被設(shè)計用來進行數(shù)據(jù)的存儲、傳輸以及交換,各種平臺通用,可移植性好,具有非常廣泛的用途。從寫的角度看,幾乎所有的應(yīng)用程序都能處理XM文件,并且通過DO提供的方法可以快捷的對XMI文件進行操作。從讀的角度看,XM文件提供了一種簡潔的自解釋的標(biāo)記方法,幾乎不需要說明文檔,就能理解XM格式的配置文件的意義。XM提供了一種樹形層次結(jié)構(gòu),可以很方便的定位某一功能塊。它使開發(fā)人員能夠?qū)⒔Y(jié)構(gòu)化數(shù)據(jù),從許多不同的應(yīng)用程序傳遞到桌面,進行本地計算和演示。當(dāng)前流行的解析XMI技術(shù)是用CMarkup類來解析XMI文檔。CMarkU是基于”壓縮”文檔對象模型(EDOM”Encapsulated”DocumentObjectModel),此技術(shù)是計息XM的關(guān)鍵。EDO是操作XML元素、屬性和數(shù)據(jù)的簡明方法集。當(dāng)不需要復(fù)雜的 XM特性時,它避免閱讀大量的DO和SAX文檔。它的一套XM處理方法和產(chǎn)生的效果與DOM(DocumentObjectModel)是一樣的。但是整個DO有無數(shù)的對象類型,而EDO只定義了一個對象:XM文檔,EDO回到了XM原始的吸引力簡單。由于LED節(jié)目文件是一個樹形結(jié)構(gòu),所以本文使用XM來配置節(jié)目文件。文件管理本文使用開源的CMarku類來對LED節(jié)目文件進行解析。CMarkUp封裝了XM文檔文本、結(jié)構(gòu)和當(dāng)前位置。它提供了增加元素、導(dǎo)航和得到元素屬性和數(shù)據(jù)能所有方法。在文檔中操作被執(zhí)行的地方取決于當(dāng)前位置和當(dāng)前孩子位置。當(dāng)前位置允許增加一個元素到文檔中的這個位置,而不需要明確指出增加對象到文檔的這點上,在 CMarkup勺有效生命周期里,對象一直保持著一個用來描述文檔的字符串。在程序中創(chuàng)建一個XM文檔。CMarkupxml;//建立xmlxmI.AddElem(L”Area”);xml.AddAttrib(Ltype”,L2 ); //類型號”“表示文件xml.AddAttrib(L”lock”,strfilelock);xml.AddAttrib(L”clarity”,L”0”);xml.AddAttrib(L”transparent”,L”0”);//是否透明xml.AddAttrib(L”dlgname”,dlgname);//窗體名字xml.IntoElem0;xml.AddElem(L,position…);//輸入位置信息xml.AddAttrib(L,”xl”,startx);xml.AddAttrib(L,”yl”,start,y);xml.AddAttrib(L, ”x2”,startx+width);xml.AddAttrib(L, ”y2”,stm'ty+height);xml.Save(“c://Userlrffo.xml”);//保存文檔到文件returnxml.GetDocO;//返回xml3.LED顯示器播放軟件的開發(fā)LED節(jié)目編輯和播放控制器是用來完成LED顯示內(nèi)容(包括文本、表格、圖形、時鐘、計時等等)的編輯、預(yù)覽和傳輸?shù)鹊取>庉嬈鞴δ苤饕ǎ簞討B(tài)的添加、刪除LED勺顯示內(nèi)容,可以在上位機預(yù)覽脫機屏的顯示效果和各個顯示內(nèi)容進行所見即所得的編輯; 使編輯的內(nèi)容可以持續(xù),既存儲,以便于下次繼續(xù)編輯;也可以將節(jié)目文件編輯完成后,在進行連續(xù)自動播放。界面簡介LED節(jié)目編輯和控制器是基于對話框的應(yīng)用程序,界面如圖 3.1所示。從圖中可以看出界面由標(biāo)題欄、菜單欄、工具欄、播放及預(yù)覽窗口和節(jié)目編輯窗(包括節(jié)目列表和節(jié)目效果設(shè)置兩部分)五個部分組成。標(biāo)題欄位于界面最頂部,顯示應(yīng)用程序國標(biāo)、文件名稱最小化及關(guān)閉按鈕。其操作與標(biāo)準(zhǔn)Window應(yīng)用程序相同菜單欄位于標(biāo)題欄下面,共有6個子菜單:文件、控制、包含了應(yīng)用程序的絕大多數(shù)操作。工具欄位于菜單欄下面,本文設(shè)置了兩打工具欄,工具欄中的工具基本都是菜單欄中使用頻繁的操作。第一行包括新建、打開、保存、復(fù)制節(jié)目窗/頁、粘貼、隱藏/顯示播放及預(yù)覽窗口、隱藏/顯示節(jié)目編輯窗、播放文件、從當(dāng)前指定節(jié)日開始播放、暫停、停止、幫助、中英文界面切換:第二行主要是對播放及預(yù)覽窗口進行設(shè)置,方便對節(jié)日文件的位置進行設(shè)置,包括水平平鋪、垂直平鋪、全屏、靠上放置、靠下放置、靠左放置、靠右放置、垂直居中、水平居中、全屏居中、鎖定、變換皮膚等等。播放及預(yù)覽窗口左側(cè)獨立于主窗口之外的部分,播放時,它是LED顯示信息的數(shù)據(jù)采取區(qū)域,在此窗口看見的顯示信息即為 LE[顯示的內(nèi)容:編輯時,可以預(yù)覽節(jié)目的編輯效果,用戶可以直接用鼠標(biāo)來調(diào)整節(jié)目窗韻位置及大小,同時在此窗口還有右鍵菜單來輔助設(shè)置窗口。節(jié)目編輯窗位于工具欄下面,占據(jù)了界面的絕大部分。共有 2個窗口,左邊的是節(jié)目列表窗口,用于顯示當(dāng)前編輯所要顯示的 LE[節(jié)日的數(shù)量與種類,窗口上方有一個工具欄用來編輯節(jié)日文件,包括添加節(jié)目頁、添加節(jié)目窗、復(fù)制節(jié)目窗(頁)、粘貼、刪除、上移、下移的操作,同時窗口中包含右鍵快捷菜單包括上述功能t右邊的是節(jié)目效果屬性設(shè)置窗口,包含基本屬性和效果屬性2個界面(如下圖),點擊窗口上方兩個按鈕來切換?;緦傩允敲恳粋€節(jié)目窗共有的屬性,包含窗體名稱、邊框(類型、寬度、顏色)、起點X/Y、寬度、高度、鎖定、透明、定時等屬性:基本屬性足每一個節(jié)目窗都有自己的屬性,各自不同,包括顯示的內(nèi)容、顯示的方式等等。軟件設(shè)置編制應(yīng)用程序的工程中,經(jīng)常要用到設(shè)置或者其他少量數(shù)據(jù)的存盤,以便程序在下一次執(zhí)行的時候可以使用,比如說保存本次程序執(zhí)行時窗口的位置、大小、一些用戶設(shè)置的數(shù)據(jù)等等,在Win32編程中,Windows已經(jīng)為我們提供了兩種方便的辦法,那就是使用注冊表或.ini文件(Profile)來保存少量數(shù)據(jù)。本文使用的是.ini文件,在程序中使用了兩種方法GetPrivateProfileString 和WritePrivateProfileString 對ini文件進行讀取操作,主要用來存儲最近打開文件、開機啟動、播放窗口位置信息、中文界面設(shè)置等信息。GetPrivateProfileString. 從ini文件的某個Section取得一個key的字符串,它的原形是:GetPrivateProfileString(LPCTSTRlpAppName,//指向包含Section名稱的字符串地址LPCTSTRIpKeyName〃指向包含Key名稱的字符串地址LPCTSTRlpDefault,//如果Key值沒有找到,則返回缺省的字符串的地址LPTSTRlpRetumedString,//返回字符串的緩沖區(qū)地址DWORDnSiz,e//緩沖區(qū)的長度LPCTSTRlpFileName//ini文件的文件名);WritePrivateProfileString// 將一個Key值寫入鋤文件的指定Section中,它的原形是:WritePrivateProfileString(LPCTSTRlpAppNam,e//指向包含Section名稱的字符串地址LPCTSTRlpKeyName〃指向包含Key名稱的字符串地址LPCTSTRlpString,//要寫的字符串地址LPCTSTRlpFileName//ini文件的文件名);啟動設(shè)置位于設(shè)置菜單中軟件設(shè)置下,主要包括開機啟動和啟動時自動加載文件等功能。用戶可以根據(jù)自己的需求對軟件進行設(shè)置,啟動設(shè)置可以在任何時候進行設(shè)置,在下一次啟動應(yīng)用程序時這些設(shè)置生效。設(shè)置的結(jié)果存儲在相應(yīng)的ini文件中。LE□節(jié)目編輯和控制器用來編輯LED屏顯示的內(nèi)容,而LEC屏顯示的內(nèi)容與屏的屬性是密切相關(guān)的,例如,由于全彩 LED來讀取桌面左上角上的顯示信息,在不知道屏體尺寸的情況 F是無法決定具體顯示的位置,所以每一個文件的編輯都是針對特定屬性(大小、位置),并且需要對這些屬性進行設(shè)置。LED節(jié)日編輯和控制器的播放及預(yù)覽窗一般用顯示屏屏體所包含的發(fā)光點的數(shù)量(列x行)作為其大小的計量單位,坐標(biāo)信息相對桌面的位置,設(shè)置界面如圖 3.2所示。設(shè)置的結(jié)果存儲在相應(yīng)的ini文件中。畫応[自則創(chuàng)起點心joJEfit冋:舸起點甘土0'3M回朮許乩標(biāo)改變大丿礙1垃覽圖3.2設(shè)置界面節(jié)目窗功能實現(xiàn)331窗口基類(CBaseArea)模塊功能設(shè)置窗口內(nèi)某一顏色為透明顏色,即該顏色表示區(qū)域為透明。顯示邊框,并可以控制邊框的寬度,顏色,可設(shè)置并顯示背景顏色。拖動改變窗口的大小,位置。在拖動中保證不會超出父窗口的區(qū)域??梢枣i定窗1:3,在鎖定狀態(tài)下,窗口鼠標(biāo)信息將發(fā)送給父窗口。定時播放功能。窗口每隔一個可設(shè)定時間后播放一個可設(shè)定時間。3.3.2編輯窗口(CFatherWnd)模塊功能主要功能是管理播放窗口,并根據(jù)界面?zhèn)鬟f過來的編輯命令改變播放窗口的外觀和內(nèi)容。并將播放窗口的位置信息反饋給界面。建立播放窗口列表,管理窗口的層次,載入及保存節(jié)目文件;編輯列表,包括窗口上移,下移,編輯窗口樣式;播放及控制通知窗口,播放,暫停,停止:實現(xiàn)拖動父窗口時,各播放窗口與父窗口同比例縮放。主要功能實現(xiàn)節(jié)目文件的存儲。本程序的節(jié)目文件以xml格式存儲。在編輯時,首先對內(nèi)存中的xml對象進行操作。界面下達保存命令后,將此對象存儲到磁盤上。窗口層次的管理。在此類的內(nèi)部用一個雙鏈表來管理窗口。鏈表的每一個節(jié)點是一個如下形式的結(jié)構(gòu)體。stmctAreaNode{CBaseArea*m_wnd;//播放窗口指針AreaNode*m_next//下一個節(jié)點;AreaNode*m_previous;//上一個節(jié)點intm_pageIndex;//節(jié)點所在節(jié)目頁編號intm_order;//節(jié)點編號intm_type;//窗口類型.CRectm_lastRect//上一次播放窗口位置大小,縮放時使用。};節(jié)目窗口是有層次的,后一個節(jié)點表示的窗口要顯示在前一個節(jié)點的上面,本文通過”所有者窗口”機制實現(xiàn),即前一節(jié)點的窗口為后一節(jié)點窗口的所有者窗口,這樣會保證后一窗口將顯示在前一窗口的上面。某窗口的所有者窗口是在窗口創(chuàng)建的時候指定的.創(chuàng)建后不可改變。指定方法如下:this一>CreateEx(O,strWndClass,‘MWS_POPUm_areaRect,owneL>m_hWn,dNULL;該語句的實現(xiàn)是在具體的播放窗口內(nèi),但在CFatherWnc中調(diào)用并指定其owner。當(dāng)窗口的層次需要調(diào)整時(如上下移動,刪除窗口),由于窗口所有者不能改變,當(dāng)前采用的方法是將鏈表刪除后再按新的順序重新建立窗口。為了保證不大量刪除和建立鏈表及窗口。程序鏈表每次只建立一個節(jié)目頁的長度節(jié)目編輯。界面下達的所有節(jié)目編輯命令首先體現(xiàn)在節(jié)目文件對象中,再調(diào)用CBaseArea::ModifyAreaStyle0顯現(xiàn)在窗口上。當(dāng)前頁面屬性的傳遞方法是利用XM文件,當(dāng)選擇的窗口屬性變化時,有界面通過ModifyChildAreaStyleO或ModifyAreaStyle()函數(shù)向下傳遞修改后的屬性xml字符串。CFatherWnd類找到相應(yīng)的播放窗口,并將此字符串傳遞下去,最后顯現(xiàn)在窗口中。播放窗口同比例縮放。節(jié)目效果編輯實現(xiàn)與應(yīng)用節(jié)目效果編輯是LED節(jié)目編輯和控制器的最主要的工作之一,它決定了LED顯示什么內(nèi)容以及如何顯示。脫機屏的每一個獨立的顯示內(nèi)容稱為一個顯示項,編輯器是以顯示項為單位進行編輯的,包括文本顯示項、表格顯示項、視頻顯示項等。單行文本模塊功能用設(shè)定的特效顯示一行文本;設(shè)定顯示字體,背景顏色。特效播放速度,停留時間。功能實現(xiàn)文本的顯示,利用CD類的TextOut函數(shù)。特效的實現(xiàn)。當(dāng)前的特效實現(xiàn)方式為利用定時器,當(dāng)定時時間到時,在新的位置輸出字符串,或者覆蓋字符串的新的位置。程序運行起來后則體現(xiàn)出文字的一定或覆蓋效果。靜態(tài)文本能夠完成對所要顯示的文字進行行距、字距的調(diào)整;對所編輯的文字進行居中、平分、左對齊、右對齊的排列;背景顏色的調(diào)整和背景圖片的顯示等。343文件窗口文件窗口是節(jié)目效果編輯窗口中最重要的窗口之一。 本窗口的主要工作是完成各種文件的管理與播放工作,主要工作由COfficeClass類來完成,下面介紹本類中文件播放的整體架構(gòu)。圖 3.3介紹的是文件播放模塊的整個程序流程結(jié)構(gòu)。文件播放模塊根據(jù)播放命令對指定的文件進行播放,需要管理包括文本文件、網(wǎng)頁文件、Wore文件、Excel文件、Flash文件和視頻文件在內(nèi)的六種類型文件,設(shè)計這么多的文件類型大大增加了LE[顯示節(jié)目的豐富性和多彩性。圖3.3文件播放整體架構(gòu)當(dāng)界面選擇好要播放的文件,將消息傳遞個文件播放模塊,然后文件播放模塊讀入指定的文件信息后,需依據(jù)不同類型文件的實現(xiàn)方法完成文件的播放功能。本文處理文件信息的流程如圖 3.4所示定時中斷負責(zé)對已知圖片進行分步顯示, 從而實現(xiàn)特技效果。由于節(jié)目播放過程比較復(fù)雜,為了提高程序的健壯性,采用了狀態(tài)機思想,共有6個狀態(tài),當(dāng)程序處在不同的狀態(tài)時,進行不同的操作,實現(xiàn)節(jié)目文件的播放。cnumPlayState//特效播放時的狀態(tài){State_Stop=0,// 停止?fàn)顟B(tài),初始化狀態(tài).State_Start,//開始狀態(tài),分配資源,初始化變量StateEnd,//結(jié)束狀態(tài),收回資源,StateRun,//播放狀態(tài),表示以指定特效飛入的過程State_Still〃 靜止?fàn)顟B(tài),表示圖片顯示特效完成后的靜止?fàn)顟B(tài),State_Fade//針對圖片文件存在的圖片清場特效顯示的狀態(tài));串口通信問在VC+編程壞境下,有兩種實現(xiàn)串口通信的方法:一種是用ActiveX控件實現(xiàn),另一種是用 WindowsAPI函數(shù)實現(xiàn)。本文利用WindowsAPI函數(shù)實現(xiàn)串口通信。Windows環(huán)境下的編程的最大特征之一就是設(shè)備無關(guān)性,它通過設(shè)備驅(qū)動程序?qū)indows應(yīng)用程序與不同的外部設(shè)備隔離,封裝了Window啲通信機制,這種方式稱為通信API。在Windows^境下,串口是系統(tǒng)資源的一部分。應(yīng)用程序要使用串口進行通信,必須在使用之前向操作系統(tǒng)提出資源申請要求(打開串口),通信完成后必須釋放資源(關(guān)閉串口)。在打開串口前,用戶應(yīng)先選擇串口編號及波特率,只有在打開串口成功時,才可以傳輸數(shù)據(jù),傳輸完成后,用戶應(yīng)當(dāng)關(guān)閉串口,為了提高程序的健壯性,即使用戶沒有關(guān)閉串口,在對話框退出時,程序也會自動關(guān)閉串口。3.5.1模塊功能本文串口通信模塊的UI部分,包含基本設(shè)置、顏色設(shè)置、系統(tǒng)設(shè)置、亮度/對比度設(shè)置、開關(guān)電源、鎖定內(nèi)容等。主要實現(xiàn)起點、屏體電源、亮度、Gamm校正、顏色交換、對比度、色溫的控制,該模塊的核心為串口通信部分,通過上位機的CO口與數(shù)據(jù)發(fā)送卡進行數(shù)據(jù)交換,來完成對發(fā)送卡的控制,PC機上要顯示的內(nèi)容通過顯卡的DVI接口將數(shù)據(jù)流傳到LED勺發(fā)送卡;串口通信的幀格式為:1位起始位,8位數(shù)據(jù)位,2位停止位,無奇偶校驗位,波特率為115200;控制命令是以自己定義的傳輸協(xié)議進行數(shù)據(jù)傳輸。串口通信部分的主要功能有:打開、關(guān)閉指定CO口;設(shè)定串行通信幀格式;讀寫串口數(shù)據(jù);枚舉計算機上可用串H(COMl.COMl0;)查找發(fā)送卡;從配置文

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論