freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

rds數(shù)據(jù)處理系統(tǒng)設(shè)計(jì)畢業(yè)論文(編輯修改稿)

2024-08-25 09:27 本頁(yè)面
 

【文章內(nèi)容簡(jiǎn)介】 P,這些信息在接收機(jī)上有控制按鍵需要用戶操作,操作后也會(huì)有相應(yīng)的圖標(biāo)顯示在接收機(jī)顯示器上,目前在基于軟件的處理上要完成提取出各種信息并解析顯示出來(lái)。 學(xué)士學(xué)位論文 信息電子技術(shù)學(xué)院 9 第 3章 軟件介紹 系統(tǒng)設(shè)計(jì)主要使用的軟件平臺(tái)為 Microsoft Visual Studio 20xx,在系統(tǒng)功能測(cè)試時(shí)需要用到的輔助軟件有 VSPM 以及軟件調(diào)試助手。 Microsoft Visual Studio 20xx Visual Studio 是微軟公司研發(fā)的開(kāi)發(fā)環(huán)境,是目前最流行的 Windows 平臺(tái)的應(yīng)用程序 開(kāi)發(fā)環(huán)境,本系統(tǒng)設(shè)計(jì)主要采用 C++語(yǔ)言編寫(xiě),并利用 MFC 完成,需要自定義數(shù)據(jù)類(lèi)以及調(diào)用 MFC 中的類(lèi),完成界面設(shè)計(jì),從而完成整個(gè)系統(tǒng)的設(shè)計(jì)。 C++計(jì)算機(jī)編程語(yǔ)言 已經(jīng)被人們廣泛的使用,它支持?jǐn)?shù)據(jù)抽象、 面向?qū)ο?程序設(shè)計(jì) 等多種程序設(shè)計(jì)風(fēng)格。面向?qū)ο蟮脑O(shè)計(jì)思想是在原來(lái)結(jié)構(gòu)化 程序設(shè)計(jì) 方法基礎(chǔ)上的一個(gè)質(zhì)的飛躍, C++完美地體現(xiàn)了面向?qū)ο蟮母鞣N特性:包括封裝性、繼承性以及多態(tài)性 【 11—17】 。 MFC(Microsoft Foundation Classes 微軟基礎(chǔ)類(lèi)),是微軟公司提供的一個(gè)類(lèi)庫(kù),以 C++類(lèi)的形式封裝了 Windows的 API,并且包含一個(gè)應(yīng)用程序框架,隨微軟 Visual C++開(kāi)發(fā)工具發(fā)布,其中的類(lèi)包含了大量 Windows 句柄封裝類(lèi)和很多 Windows 的內(nèi)建控件和組件的封裝類(lèi)。該類(lèi)庫(kù)提供一組通用的可重用的類(lèi)庫(kù)以供開(kāi) 發(fā)人員使用。 MFC 應(yīng)用程序的總體結(jié)構(gòu)通常由開(kāi)發(fā)人員從 MFC 類(lèi)派生的幾個(gè)類(lèi)和一個(gè)CWinApp 類(lèi)對(duì)象 (應(yīng)用程序?qū)ο?)組成,并且提供了 MFC AppWizard 自動(dòng)生成框架。 本系統(tǒng)建立的工程是基于 MFC 對(duì)話框設(shè)計(jì)而成,主要需要自定義 RDS 數(shù)據(jù)類(lèi),此外還要用到 MFC 中的 CFile 類(lèi),它直接提供非緩沖的二進(jìn)制磁盤(pán)輸入 /輸出設(shè)備,并直接地通過(guò)派生類(lèi)支持文本文件和內(nèi)存文件。設(shè)計(jì)中主要用到 Open、 Store、Seek 等方法。在做界面設(shè)計(jì)的時(shí)候可直接使用 MFC 中提供的控件,例如按鈕控件、靜態(tài)文本框控件以及串口通訊控件 等。 串口調(diào)試助手 串口調(diào)試助手是一種用來(lái)進(jìn)行串口調(diào)試的工具,該軟件可以自動(dòng)識(shí)別串口,設(shè)置數(shù)據(jù)位、校驗(yàn)位和停止位,并可以 ASCII 碼或十六進(jìn)制的形式接收或發(fā)送數(shù)據(jù)或字符,還能將接收數(shù)據(jù)保存成文本文件,也能發(fā)送任意大小的文本文件,在測(cè)試系統(tǒng)接收數(shù)據(jù)功能時(shí)需利用此軟件為解析程序發(fā)送 RDS 數(shù)據(jù)。 學(xué)士學(xué)位論文 信息電子技術(shù)學(xué)院 10 VSPM 虛擬串口 VSPM 虛擬串口軟件可以將 TCP/IP 連接,并映射成本機(jī)的虛擬 COM 口,應(yīng)用程序通過(guò)訪問(wèn)虛擬串口,就可以完成遠(yuǎn)程控制、數(shù)據(jù)傳輸?shù)裙δ堋?VSPM可以運(yùn)行在 Client 模式、 Server 模式和 UDP 廣播模式, Client 模式下, VSPM軟件將主動(dòng)向遠(yuǎn)程設(shè)備發(fā)起連接, Server 模式下, VSPM 軟件監(jiān)聽(tīng)串口服務(wù)器發(fā)起的連接, UDP 廣播模式下, VSPM 將使用 UDP 廣播數(shù)據(jù)包發(fā)送數(shù)據(jù)到網(wǎng)絡(luò)。設(shè)計(jì)中需要打開(kāi)兩個(gè)虛擬串口,分別設(shè)置為 C lient 模式和 Server 模式,在利用虛擬串口發(fā)送接收數(shù)據(jù)的時(shí)候, C lient 模式的虛擬 COM 口與串口調(diào)試助手相連接, Server 模式的虛擬 COM 口與解析程序相連接;在將解析后的文本信息語(yǔ)音化的時(shí)候, C lient 模式的虛擬 COM 口與解析程序相連接, Server 模式的虛 擬 COM 口與語(yǔ)音化程序相連接。 學(xué)士學(xué)位論文 信息電子技術(shù)學(xué)院 11 第 4章 系統(tǒng)程序設(shè)計(jì) 整個(gè) RDS 數(shù)據(jù)數(shù)據(jù)處理系統(tǒng)是完全基于軟件進(jìn)行設(shè)計(jì)的,使用 C++編程語(yǔ)言,實(shí)現(xiàn)面向?qū)ο蟮某绦蛟O(shè)計(jì)。 系統(tǒng)概述 本系統(tǒng)主要針對(duì) RDS(廣播數(shù)據(jù)系統(tǒng))數(shù)據(jù)結(jié)構(gòu)開(kāi)發(fā)出一個(gè)能對(duì) RDS 數(shù)據(jù)進(jìn)行處理的系統(tǒng)軟件,根據(jù) RDS 各個(gè)數(shù)據(jù)位解析出希望得到的信息,本系統(tǒng)由 RDS 數(shù)據(jù)接收、 RDS 數(shù)據(jù)解析、 RDS 數(shù)據(jù)音頻轉(zhuǎn)化、 RDS 數(shù)據(jù)存儲(chǔ)等功能模塊組成,通過(guò)串口接收 RDS 數(shù)據(jù),然后對(duì)接收到的 RDS 數(shù)據(jù)進(jìn)行存儲(chǔ)并解析,并利用 MFC編 程設(shè)計(jì)出界面對(duì)解析后得到的信息進(jìn)行顯示,對(duì)必要的文本信息進(jìn)行音頻轉(zhuǎn)化并播放出來(lái),這樣不僅可以滿足人們的可視化需求,而且能夠方便的播放出有用的文本信息,使用戶獲得豐富的視覺(jué)和聽(tīng)覺(jué)體驗(yàn)。系統(tǒng)框圖如圖 圖 RDS 數(shù)據(jù)處理系統(tǒng) 開(kāi)始 結(jié)束 打開(kāi)串口,接收 RDS 數(shù)據(jù) 將 RDS數(shù)據(jù)存儲(chǔ)到緩沖區(qū),并調(diào)整各信息位 MFC編程界面顯示信息 控制信息 提出文本段信息 串口發(fā)送到文本轉(zhuǎn)語(yǔ)音程序 播放語(yǔ)音 解析 RDS數(shù)據(jù) 學(xué)士學(xué)位論文 信息電子技術(shù)學(xué)院 12 RDS數(shù)據(jù)類(lèi)定義 C++語(yǔ)言的精髓即面向?qū)ο蟪绦蛟O(shè)計(jì),因而系統(tǒng)設(shè)計(jì)中首先要將處理的數(shù)據(jù)封裝為一個(gè)個(gè)類(lèi),類(lèi)中包括變量和函數(shù)兩部分。 定義基類(lèi) 首先要為 RDS 數(shù)據(jù)類(lèi)設(shè)計(jì)一個(gè)基類(lèi),即 ——CRDSBase,類(lèi)中聲明包括 9 個(gè)成員變量以及三個(gè)函數(shù)。 9 個(gè)成員變量為: A_Block 、 check_codeA、 B_Block 、check_codeB、 C_Block 、 check_codeC、 D_Block 、 check_codeD 以及 k,前八個(gè)變量屬于 unsigned 類(lèi)型 ,分別代表四塊數(shù)據(jù)的信息位和校驗(yàn)位, k 屬于整型變量,用于表示 RDS 數(shù)據(jù)具體的組型。由于每組數(shù)據(jù)的都符合這個(gè)基本結(jié)構(gòu),所以要定義這個(gè)基類(lèi),考慮到代碼優(yōu)化問(wèn)題,再定義其余 32 種具體的數(shù)組類(lèi)時(shí)可從基類(lèi)派生得到,這樣可以提高效率,節(jié)省代碼空間 。 基類(lèi)的函數(shù)包括: 1).構(gòu)造函數(shù): CRDSBase(void)。采用默認(rèn); 2).析構(gòu)函數(shù): ~ CRDSBase(void)。 采用默認(rèn); 3).調(diào)整信息位函數(shù): void adjust_Base(unsigned char *buffer)。需自定義,內(nèi)存緩沖區(qū)是以字節(jié)為單位來(lái)存儲(chǔ)接收到的 unsigned 型的數(shù)據(jù)的,通過(guò)左移、右移的基本操作調(diào)整信息位,這樣就可明確各信息位在緩沖區(qū)的位置,方便提取操作; 4).判斷數(shù)組類(lèi)型函數(shù): int DecideVersion(unsigned char *buffer)。,需自定義,( buffer[3]2)amp。0x0f 對(duì)應(yīng)的即為組型碼, 4 位,范圍是 015, 提取出來(lái)進(jìn)行判斷進(jìn)入分支語(yǔ)句,每個(gè)分支于句再利用 ( buffer[3]1)amp。0x01 判斷版本類(lèi)型,函數(shù)返回 k。 類(lèi)定義語(yǔ)句存儲(chǔ)到 中,函數(shù)定義語(yǔ)句存儲(chǔ)到 中。 定義各組數(shù)據(jù)類(lèi) 1 定義變量 RDS 數(shù)據(jù)一共有 32 種組型,每種組型的數(shù)據(jù)內(nèi)容都差別,因而要為每種組型的 RDS 數(shù)據(jù)定義類(lèi),包括 RDS_0A、 RDS_0B、 RDS_1A、 RDS_1B、 ……RDS_15 A、RDS_15B 共 32 種,但目前在 RDS 數(shù)據(jù)規(guī)范中有明確定義的數(shù)據(jù)并不足 32 種。各學(xué)士學(xué)位論文 信息電子技術(shù)學(xué)院 13 數(shù)據(jù)類(lèi)中的變量包括 CString 類(lèi)型、 unsigned char 等類(lèi)型,依據(jù)需要存儲(chǔ)的信息不同而定, CString 用于存儲(chǔ)解析后的字符串信息, unsigned char 用于存儲(chǔ)雙字節(jié)字符。 具體內(nèi)容根據(jù) RDS 數(shù)據(jù)規(guī)范定義。 2 定義函數(shù) 1).構(gòu)造函數(shù): CRDSBase(void)。 采用默認(rèn); 2).析構(gòu)函數(shù): ~ CRDSBase(void)。 采用默認(rèn); 3).調(diào)整信息位函數(shù):例如: void adjust_RDS_0A(unsigned char *buffer)。,需自定義,無(wú)返回值,針對(duì)具體數(shù)據(jù)組型調(diào)整方式不同,這里調(diào)整信息位屬于二次調(diào)整,各位的信息進(jìn)一步具體明確,便于對(duì)不同信息進(jìn)行提取、判斷或解析; 4).解析函數(shù):例如: void CRDS_0A::translate_0A(unsigned char *buffer),需自定義, 針對(duì)不同組型其解析函數(shù)不同,參數(shù)為從緩沖區(qū)中讀取的二進(jìn)制數(shù)據(jù),無(wú)返回值,解析后的文字信息分別存儲(chǔ)在各自類(lèi)的字符串變量里,簡(jiǎn)單的解析函數(shù)采用 switchcase 語(yǔ)句或 ifelse 語(yǔ)句結(jié)構(gòu)即 可,其余解析方法在后面解析模塊中進(jìn)行具體說(shuō)明。 類(lèi)定義語(yǔ)句存儲(chǔ)到各自的頭文件中,函數(shù)定義語(yǔ)句存儲(chǔ)到各自的源文件中。 模塊設(shè)計(jì) 對(duì) RDS 數(shù)據(jù)的處理包括接收、解析、顯示、存儲(chǔ)以及語(yǔ)音化,下面就按這五個(gè)功能對(duì)各個(gè)模塊的設(shè)計(jì)進(jìn)行說(shuō)明。 接收模塊 接收模塊用以完成 RDS 數(shù)據(jù)的接收,包括通過(guò)已經(jīng)存儲(chǔ)好 RDS 數(shù)據(jù)文件的接收以及通過(guò)串口調(diào)試助手和虛擬串口的接收。 1. 從文件中接收數(shù)據(jù)主要通過(guò)軟件設(shè)計(jì),使用文件讀取語(yǔ)句以及改變指針等操作完成,此時(shí)需要設(shè)置變量記錄點(diǎn)擊接收按鈕的次數(shù),由于一幀 RDS 數(shù)據(jù)占用13 個(gè)字節(jié),因此每點(diǎn)擊一次讀取數(shù)據(jù)的按鈕,從文件中讀取的數(shù)據(jù)指針就應(yīng)向后移動(dòng) 13 個(gè)字節(jié),這樣每次讀取的數(shù)據(jù)才不同 。 2. 通過(guò)串口接收數(shù)據(jù)時(shí)需要用到 MFC 中最常用的串口通訊方法即使用MSComm 控件,該控件提供了一系列標(biāo)準(zhǔn)通信命令的接口,它允許建立串口連接,還可以發(fā)送命令、進(jìn)行數(shù)據(jù)交換以及監(jiān)視和響應(yīng)在通信過(guò)程中可能發(fā)生的各種錯(cuò)誤和事件,從而可以用它創(chuàng)建全雙工 、事件驅(qū)動(dòng)的、高效實(shí)用的通信程序。使用該控件可以檢測(cè)緩沖區(qū)中是否有數(shù)據(jù),有數(shù)據(jù)的情況下然后觸發(fā) OnComm 消息,然后對(duì)數(shù)據(jù)進(jìn)行處理。 學(xué)士學(xué)位論文 信息電子技術(shù)學(xué)院 14 接收 RDS 數(shù)據(jù)后 將其顯示在界面上并存儲(chǔ)到文檔 中。接收模塊流程圖如圖 所示: 圖 接收模塊 讀緩存消息 變量轉(zhuǎn)換 將數(shù)據(jù)存入 BYTE型數(shù)組 將數(shù)組中數(shù)據(jù)寫(xiě)入 文檔中 Y Y 緩沖區(qū)中數(shù)據(jù) 多于一個(gè)字符? N N 接收 RDS數(shù)據(jù)到緩沖區(qū) 串口打開(kāi)? 設(shè)置串口號(hào)及其工作狀態(tài) 引發(fā)接收數(shù)據(jù)的OnComm事件 轉(zhuǎn)化成 CString 型變量同時(shí)顯示在編輯框中 學(xué)士學(xué)位論文 信息電子技術(shù)學(xué)院 15 解析模塊 接收到的 RDS 數(shù)據(jù)為二進(jìn)制形式的數(shù)據(jù)流,要解析這些數(shù)據(jù)應(yīng)每次從文件中讀取一幀數(shù)據(jù)到緩沖區(qū)中或從串口接收一幀數(shù)據(jù)存儲(chǔ)到緩沖區(qū),然后調(diào)整各信息位,提取組型碼判斷數(shù)組類(lèi)型,依據(jù)不同組型再將數(shù)據(jù)讀到定義的具體32 類(lèi)數(shù)組中的一類(lèi),再次調(diào)整信息位,然后調(diào)用該類(lèi)的解析方法進(jìn)行解析,解析方法以及解析得到文字內(nèi)容需要根據(jù) RDS 數(shù)據(jù)規(guī)范來(lái)定 義,解析模塊流程圖如圖 所示: 解析,調(diào)用 Translate_0A(unsigned char *buffer) 解析,調(diào)用 Translate_15B(unsigned char *buffer) 調(diào)整各信息位,調(diào)用 adjust_0A(unsigned char *buffer) 調(diào)整各信息位,調(diào)用 adjust_0A(unsigned char *buffer) …… …… 提取組型碼判斷組型,調(diào)用 DecideVersion() 0A組 15 B組 0B組 15A組 建立一個(gè) char型數(shù)組 從文件 取一幀數(shù)據(jù)到緩沖區(qū) 調(diào)整各信息位,調(diào)用 adjust_Base(unsigned char *buffer) …… …… …… …… 學(xué)士學(xué)位論文 信息電子技術(shù)學(xué)院 16 圖 解析模塊 由于每組數(shù)據(jù)內(nèi)容都有差別,相應(yīng)的解析方法也就有一定差別,下面舉出幾組常用的數(shù)據(jù),針對(duì)其解析方法進(jìn)行說(shuō)明: ? 0 組:基本調(diào)諧和開(kāi)關(guān)信息。 0A 組和 0B 組幀結(jié)構(gòu)如圖 所示。 PI碼包含國(guó)家識(shí)別碼、區(qū)域識(shí)別碼和節(jié)目基準(zhǔn)號(hào), TA、 PTY、 M/S 這些信息通過(guò)查找廣播數(shù)據(jù)系統(tǒng)技術(shù)規(guī)范,使用 switchcase 語(yǔ)句或 if 語(yǔ)句即可解析; DI 碼共 4 位,每個(gè) 0A 組只發(fā)送一位,由 C C0 確定確定這些位在 DI 碼中的位置,且高位d3 先發(fā); AF 可通過(guò)查表得到;顯示 PS 用的四個(gè)雙字節(jié)字符按照規(guī)范中附錄 B規(guī)定的字符代碼來(lái)發(fā)送,兩個(gè)字節(jié)確定一個(gè)字符,這些字符在顯示業(yè)務(wù)名中的位置亦由 C C0 確定,顯示時(shí)字符的位置從左到右遞增,解析時(shí)設(shè)置一個(gè)包含三個(gè)數(shù)據(jù)的 unsigned char 型數(shù)組 ps[2],前兩個(gè)數(shù)據(jù)分別存儲(chǔ)兩個(gè)字節(jié)的 PS信息,最后的數(shù)據(jù)存儲(chǔ) 0。 0B 組 C 塊數(shù)據(jù)與 A 塊相同,不用解析,也沒(méi)有 AF信息,其余部分與 0A 組相同。 圖 0A 組和 0B 組 ? 1A 組:節(jié)目欄目號(hào)和慢標(biāo)志碼。幀結(jié)構(gòu)如圖 。 B 塊的最后
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1