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

正文內(nèi)容

基于dsp的智能串口屏設(shè)計(jì)-閱讀頁(yè)

2025-01-31 10:42本頁(yè)面
  

【正文】 回到初始位置,改變發(fā)送的通道標(biāo)記,使下一次發(fā)送數(shù)據(jù)放入另外一個(gè)半通道,然后修改允許發(fā)送標(biāo)記為 0xff(告知單片機(jī)可以取數(shù)發(fā)往串口)。 圖 DSP 向多串口發(fā)送數(shù)據(jù) 單片機(jī)發(fā)送數(shù)據(jù)流程在本系統(tǒng)的設(shè)計(jì)中,單片機(jī)主要有三個(gè)任務(wù):(1)初始化兩片 SC16C654 芯片;(2)接收來(lái)自串口的數(shù)據(jù),并“打包”供 DSP 接收;(3)將來(lái)自 DSP 的數(shù)據(jù)“拆包”后發(fā)送到串行接口。1. 單片機(jī)初始化串口:?jiǎn)纹瑱C(jī)在初始化 UART 時(shí)主要有三個(gè)任務(wù)。通過(guò)配置 LCR、EFR 以及 MCR 寄存器可以使 SC16C654 工作在特定的串行波特率下。將 FCR 寄存器的最低位置一即可進(jìn)行 FIFO 操作。在單片機(jī)發(fā)送數(shù)據(jù)時(shí)需要注意允許發(fā)送標(biāo)記,如果為 0x00,則表示 DSP 一個(gè)完整數(shù)據(jù)幀還沒(méi)有全部放入雙端口中,單片機(jī)可以去處理其他的任務(wù)。在單片機(jī)每次循環(huán)處理本通道的數(shù)據(jù)發(fā)送時(shí),首先檢測(cè)本次將訪問(wèn)的半通道標(biāo)記,然后查看對(duì)應(yīng)的低(高)通道允許發(fā)送標(biāo)記。如果已經(jīng)完成本通道一個(gè)完整數(shù)據(jù)幀的發(fā)送,則改變將要訪問(wèn)的半通道標(biāo)記(下次從另一半通道取數(shù)),同時(shí)單片機(jī)的本半通道指針回到初始位置,已發(fā)送的數(shù)據(jù)總長(zhǎng)清 0,低(高)通道發(fā)送標(biāo)記置為0x00(告訴 DSP 當(dāng)前通道為空,可以往里面發(fā)送數(shù)據(jù))。 //試圖獲取信號(hào)燈while(*(volatile char xdata *)SEM_ADDR0 == (char)0xff)。return。*(volatile char xdata *)SEM_ADDR0 = 0xff。 0x20) != (char)0x20)。++send_lowaddr[0]。if(sendedlen[0] = sendlen[0]){sendchl_flg[0] = 0xff。sendedlen[0] = 0。 //試圖獲取信號(hào)燈while(*(volatile char xdata *)SEM_ADDR0 == (char)0xff)。//通知 DSP 可以往本半通道放置數(shù)據(jù)*(volatile char xdata *)SEM_ADDR0 = 0xff。 //試圖獲取信號(hào)燈while(*(volatile char xdata *)SEM_ADDR0 == (char)0xff)。return。*(volatile char xdata *)SEM_ADDR0 = 0xff。 0x20) != (char)0x20)。++send_highaddr[0]。if(sendedlen[0] = sendlen[0]){sendchl_flg[0] = 0xff。sendedlen[0] = 0。 //試圖獲取信號(hào)燈while(*(volatile char xdata *)SEM_ADDR0 == (char)0xff)。//通知 DSP 可以往本半通道放置數(shù)據(jù)*(volatile char xdata *)SEM_ADDR0 = 0xff。 DSP接收數(shù)據(jù)流程當(dāng) DSP 需要處理串口數(shù)據(jù)的接收任務(wù)時(shí),同樣需要訪問(wèn)雙端口中與單片機(jī)處理器的交互信息,如接收長(zhǎng)度標(biāo)記、單片機(jī)接收通道標(biāo)記。DSP 首先查詢本次接收通道標(biāo)記,如果標(biāo)記為 0 則表示本次接收低通道,如果為 1 則表示本次接收高通道。如果為 0,則表示有數(shù)據(jù)接收,將單片機(jī)接收通道標(biāo)記取反(通知單片機(jī)在兩外一個(gè)通道接收數(shù)據(jù))。 DSP擴(kuò)展模塊軟件測(cè)試為了提高數(shù)據(jù)的運(yùn)算處理能力,發(fā)揮 DSP 的速度優(yōu)勢(shì),需要將 DSP 的核心頻率提高到系統(tǒng)需要的高度,因此需要使能 PLL 的倍頻功能并設(shè)置相關(guān)的寄存器值。 PLL倍頻設(shè)計(jì)通過(guò)對(duì) PLL 鎖相環(huán)控制器有關(guān)寄存器的設(shè)置,可以使 DSP 工作在高速的頻率下,從而滿足系統(tǒng)的需求。PLL 的配置寄存器主要有 PLL 控制狀態(tài)寄存器(PLLCSR),PLL 倍頻控制寄存器(PLLM),PLL 分頻寄存器等。然后配置倍頻寄存器,可以使芯片的工作頻率工作在外接輸入時(shí)鐘頻率到200Mhz 之間。DSP 與多串口數(shù)據(jù)收發(fā)流程設(shè)計(jì)。volatile int *DEVCFG = (volatile int *)0x019c0200。volatile int *DIVIDER_D1 = (volatile int *)0x01b7c118。volatile int *DIVIDER_D3 = (volatile int *)0x01b7c120。volatile int *PLL_CSR = (volatile int *)0x01b7c100。 //EMIF 模塊的時(shí)鐘源是 SYSCLK3*DIVIDER_D0 = 0x8000。*DIVIDER_D2 = 0x8001。*PLLM = 0x08。while(!((*PLL_CSR) amp。 //等待輸入時(shí)鐘穩(wěn)定*PLL_CSR = 0x1。 0x40))。如果多個(gè)請(qǐng)求同時(shí)到達(dá)的時(shí)候,EMIF 確定他們的優(yōu)先級(jí)并執(zhí)行必要的操作。ECLKOUT 信號(hào)是由內(nèi)部產(chǎn)生的(根據(jù) ECLKIN)。如果有需要,CLKOUT2 的輸出可以反饋?zhàn)鳛?ECLKIN 的輸入。同步存儲(chǔ)器接口使用 4 個(gè)字長(zhǎng)的突發(fā)寬度,這是對(duì)兩級(jí) cache 結(jié)構(gòu)的優(yōu)化。SDRAM 的接口配置也很靈活,可以將 SDRAM 設(shè)置更廣的工作范圍。在 CCS 里開(kāi)發(fā)應(yīng)用程序時(shí)需首先對(duì) EMIF 進(jìn)行配置。全局控制寄存器(GBLCTL)是針對(duì)所有的 CE 空間配置的寄存器。編程時(shí)使用的邏輯地址和器件引腳有對(duì)應(yīng)的關(guān)系,例如對(duì) 8 位的異步接口進(jìn)行編程,邏輯地址的 A0位即對(duì)應(yīng)芯片引腳的 A2 位,而芯片引腳的 A2 位則連接外部接口的 A0 位,因此在編程時(shí)邏輯地址和外設(shè)地址不需要進(jìn)行變換。 圖 地址存儲(chǔ)寬度映射關(guān)系在本文的設(shè)計(jì)中 EMIF 模塊的軟件設(shè)計(jì)程序如下所示://使指針指向各個(gè) EMIF 寄存器volatile int *EMIF_CTR_C0 = (volatile int *)0x1800008。volatile int *EMIF_CTR_C2 = (volatile int *)0x1800010。volatile int *EMIF_SDCTL = (volatile int *)0x1800018。volatile int *EMIF_SDEXT = (volatile int *)0x1800020。 //行列寬度分別為 12 和 9*EMIF_SDTIM = 0x5DC。*EMIF_CTR_C0 = 0x90。 //CE2 空間為 8 位的異步接口*EMIF_CTR_C3 = 0x5275c903。常用的 FLASH 使用操作包括 FLASH 編程、擦除、查詢?cè)O(shè)備 ID 等圖 FLASH 編程命令字(一) 編程 FLASHvoid program_flash(int source, int dst, int length) {int i。volatile unsigned addr1 = 0x9000aaaa。 // 0x2AAA 1for (i = 0。 i++) {data = *(volatile short *)source。*(volatile short *)addr2 = 0x55。*(volatile short *)dst = iamp。 //寫數(shù)據(jù)while (*(volatile unsigned short *)dst != iamp。 //等待編程source += 2。delay(1000)。 // 0x5555 1volatile unsigned addr2 = 0x90005554。*(volatile short *)addr2 = 0x55 。*(volatile short *)addr1 = 0xaa 。*(volatile short *)addr1 = 0x10 。}(三) 獲取 FLASH 的 ID 編號(hào)unsigned getid_flash(void) { // 正確的返回值為 234BHunsigned short data1 。volatile unsigned addr1 = 0x9000aaaa。 // 0x2AAA 1*(volatile short *)addr1 = 0xaa 。*(volatile short *)addr1 = 0x90 。data1 = *(volatile short *)0x90000000 。delay(25000)。x = (x 16) | data1。 // chip reset*(volatile short *)addr2 = 0x55 。delay(25000)。} SDRAM存儲(chǔ)器軟件測(cè)試對(duì) SDRAM 存儲(chǔ)器測(cè)試的主要方法是將數(shù)據(jù)寫入某個(gè)字節(jié)空間,然后讀回該數(shù)據(jù)單元,并比較讀出的數(shù)據(jù)和寫入的數(shù)據(jù)是否一致。測(cè)試程序如下。unsigned int i。ilen。 //取出當(dāng)前空間數(shù)據(jù)保存c=0x55。 //在當(dāng)前空間寫入 0x55if (*(volatile unsigned char *)(adr+i)!=c) {c=0。*(volatile unsigned char *)(adr+i)=c。}*(volatile unsigned char *)(adr+i)=tmp。輸入代碼指令0000000003,可直接對(duì)總齒數(shù)、抽齒數(shù)進(jìn)行數(shù)據(jù)輸入和對(duì)啟動(dòng)/暫停健控制。第5步:調(diào)試、定版。起始畫面主要是歡迎界面,是根據(jù)需要按照各個(gè)按鈕(功能鍵元件)的提示隨意進(jìn)行各個(gè)菜單屏幕之間的轉(zhuǎn)換。如圖42所示:圖52 觸控界面首先對(duì)總齒數(shù)進(jìn)行設(shè)置,可直接點(diǎn)擊總齒數(shù)(按鈕1),如圖43,連續(xù)按下系統(tǒng)有規(guī)律遞增,也可直接點(diǎn)擊總齒數(shù)方框直接輸入數(shù)字。圖54 按鈕2最后進(jìn)行測(cè)試,點(diǎn)擊一次啟動(dòng)/暫停健為啟動(dòng)(按鈕3),需要暫停時(shí)可再點(diǎn)擊一次。圖55 按鈕3表51觸摸屏界面實(shí)現(xiàn)所需指令:指令說(shuō) 明0xE4觸摸屏校準(zhǔn)。0xE3配置觸摸屏處理模式,參數(shù)掉電保存。0x72HMI 上傳數(shù)據(jù):觸摸坐標(biāo)位置。0x78HMI 上傳數(shù)據(jù):觸控鍵碼。配置文件說(shuō) 明0x01如果使用觸摸屏中文輸入法,須在 0x01 位置下載 GBK 詞庫(kù)。0x1E觸控切換配置文件,使用迪文提供的 PC 工具軟件生成。0x5F調(diào)節(jié)背光亮度。0x9B在當(dāng)前界面 疊加/關(guān)閉疊加 RTC 時(shí)鐘顯示。0x9B5B讀取 RTC 農(nóng)歷時(shí)間。0xE0配置背光、蜂鳴器、顯示視角、串口模式,參數(shù)掉電不保存。0x91讀內(nèi)部數(shù)據(jù)庫(kù)。0xD0強(qiáng)制刷新一次全屏顯示(僅 K600、H600、K600+支持)。背光亮度調(diào)整和屏保亮度設(shè)置:只要是LED背光的迪文HMI,均支持64級(jí)背光亮度調(diào)整;極少數(shù)CCFL背光HMI,考慮到亮度調(diào)整會(huì)影響燈管壽命和顯示效果,只支持背光開(kāi)關(guān)控制。這種需求,對(duì)于帶有觸摸屏的HMI,可以使用0x5E和0xE0指令配合設(shè)置一次即可。(30MB順序存儲(chǔ),64KB隨機(jī)存儲(chǔ))NAND Flash數(shù)據(jù)庫(kù),可以通過(guò)0x90、0x91指令進(jìn)行讀寫,以方便用戶二次開(kāi)發(fā)數(shù)據(jù)記錄、存儲(chǔ)功能。圖58為圖形液晶顯示整體設(shè)計(jì)圖,本實(shí)驗(yàn)選用的是DSP芯片,DSP的數(shù)據(jù)線、地址線、控制線與第一存儲(chǔ)器、第二存儲(chǔ)器相連,DSP串行接口與RS232接口相連,通過(guò)RS232接口與PC機(jī)之間進(jìn)行通訊;DSP的I/O口與液晶顯示模塊相連,將經(jīng)過(guò)處理的顯示數(shù)據(jù)傳輸給液晶顯示模塊以驅(qū)動(dòng)液晶屏。系統(tǒng)抗干擾性強(qiáng)、工作穩(wěn)定,與外圍接口方便、功能強(qiáng)。通過(guò)對(duì)TMS320C6713 DSP 芯片的架構(gòu)研究和應(yīng)用實(shí)例分析,本文設(shè)計(jì)了智能串口的數(shù)據(jù)通信協(xié)議,圍繞設(shè)定的協(xié)議完成了軟硬件設(shè)計(jì)。本論文的工作主要分以下幾個(gè)階段:(1)研究 DSP 技術(shù):主要工作是對(duì) TMS320C6713 架構(gòu)的研究及相關(guān)應(yīng)用實(shí)例分析,根據(jù)設(shè)計(jì)需要結(jié)合實(shí)例完成 DSP 存儲(chǔ)擴(kuò)展系統(tǒng)設(shè)計(jì)。同時(shí)根據(jù) DSP 的擴(kuò)展資源,研究了 FLASH 存儲(chǔ)器和 SDRAM 存儲(chǔ)器的原理和應(yīng)用方案。(3)1553B 總線的電路設(shè)計(jì):分析 EPH31580 的電氣特性、基本功能、讀寫時(shí)序,結(jié)合 DSP 的擴(kuò)展資源,圍繞該芯片完成了 DSP 擴(kuò)展 1553B 總線的硬件設(shè)計(jì),并協(xié)同項(xiàng)目組其他成員完成了聯(lián)機(jī)調(diào)試。但由于多方面的原因,還存在著不少不足之處。除此之外,DSP 的很多內(nèi)部集成功能沒(méi)有充分利用,電源設(shè)計(jì)的穩(wěn)定性有待提高。這些將作為下一步工作的重點(diǎn)來(lái)完成。觸摸屏顯示器正逐漸進(jìn)入辦公自動(dòng)化,汽車和船舶儀表,家電和游戲機(jī)應(yīng)用領(lǐng)域。本文主要介紹了以TMS320F2812為核心的DSP數(shù)字控制器與觸摸屏通信程序設(shè)計(jì), 研究基于TMS320F2812 DSP的圖形液晶控制應(yīng)用,在CCS4環(huán)境下編寫C程序,對(duì)程序進(jìn)行編程和調(diào)試,完成人機(jī)用戶界面的微控制器應(yīng)用系統(tǒng)設(shè)計(jì)。(1):3438.[9] 紀(jì)松波,侯婷.《智能液晶觸摸顯示終端與單片機(jī)接口的設(shè)計(jì)》[M].內(nèi)蒙古工業(yè)大學(xué). . 致謝歷時(shí)將近兩個(gè)月的時(shí)間終于將這篇論文寫完,在論文的寫作過(guò)程中遇到了無(wú)數(shù)的困難和障礙,都在同學(xué)和老師的幫助下度過(guò)了。另外,在校圖書(shū)館查找資料的時(shí)候,圖書(shū)館的老師也給我提供了很多方面的支持與幫助。本文引用了數(shù)位學(xué)者的研究文獻(xiàn),如果沒(méi)有各位學(xué)者的研究成果的幫助和啟發(fā),我將很難完成本篇論文的寫作。由于我的學(xué)術(shù)水平有限,所寫論文難免有不足之處,懇請(qǐng)各位老師和學(xué)友批評(píng)和指正!43
點(diǎn)擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1