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

正文內(nèi)容

基于dsp的智能串口屏設計(編輯修改稿)

2025-02-12 10:42 本頁面
 

【文章內(nèi)容簡介】 VF1601 的引腳描述如表 所示。 表 存儲器引腳描述表。由于 FLASH 是一個異步存儲器芯片,因此在和 FLASH 連接的時候,DSP 芯片的 83 和 75 引腳分別工作在 AWE(異步寫)和 AOE(異步讀)模式SST39VF1601 芯片的數(shù)據(jù)總線和地址總線長度分別為 16 位和 20 位,因此可以支持 16Mb 的容量擴展。本次設計將 FLASH 分配到 CE1 空間,電路如圖 38 圖 FLASH 存儲器擴展電路原理圖 DSP的JTAG電路設計仿真是調(diào)試嵌入式系統(tǒng)開發(fā)過程中必不可少的重要環(huán)節(jié)。在嵌入式操作系統(tǒng)中,開發(fā)主機和目標機處于不同的機器中,程序在開發(fā)主機上進行研發(fā)(編輯、交叉編譯、連接定位等)、然后下載到目標機(嵌入式系統(tǒng)中)進行運行和調(diào)試,即遠程調(diào)試。也可以說,調(diào)試程序運行在桌面操作系統(tǒng),而被調(diào)試的程序運行在嵌入式系統(tǒng)上。這就引出了如下問題,即位于不同的操作系統(tǒng)之上的調(diào)試器與被調(diào)試程序之間如何通信,被調(diào)試程序如果出現(xiàn)異常如何告知被調(diào)試器,調(diào)試器又如何控制以及訪問被調(diào)試程序等。使用 JTAG 方式就是片上調(diào)試的一種方法。TMS 用來設置 JTAG 接口處于某種特定的測試模式,TCK 測試時鐘輸入,TDI 和 TDO 分別用于測試數(shù)據(jù)輸入和數(shù)據(jù)輸出,TRST 可以用來對 TAP Controller進行復位。EMU0 和 EMU1 通過接弱上拉電阻接入高電平使器件處于正確的邊界掃描模式。本次設計的 JTAG 仿真接口電路如圖 所示。 圖 DSP 的 JTAG 仿真接口電路圖JTAG 標準定義了一個串行移位寄存器,寄存器的每一個單元分配給 IC 芯片的相應引腳,每一個獨立的單元成為邊界掃描單元。這個串聯(lián)的掃描單元在 IC內(nèi)部構成了 JTAG 回路,所有的掃描單元通過 JTAG 測試激活,平時這些引腳保持正常功能。 智能串口模塊硬件電路設計在組合導航系統(tǒng)中通常包含高度表、GPS接收裝置等眾多的RS232和RS422電平信號。對于每一路信號通常具有較高的數(shù)據(jù)傳輸速率,但是同 DSP 的數(shù)據(jù)處理速度相比仍然有比較大的差異。為了能夠充分節(jié)省 DSP 的資源,使其有更多的時間用于算法的實現(xiàn),串口模塊中需給 DSP 處理器提供一個容量較大的接收和發(fā)送緩沖區(qū)。在本文的設計中利用單片機作為智能串口的核心處理器,通過軟硬件設計實現(xiàn)了 6 串口、256 字節(jié)緩沖數(shù)據(jù)區(qū)。 智能串口總體結構在智能串口的硬件設計中主要使用了 AT89LS52 單片機作為核心控制處理器。同時使用 8K8bit 的雙端口存儲器作為串口與 DSP 交互的硬件載體。通過對SC16C654 通用 UART 器件的編程實現(xiàn) 6 串口、2 種波特率(,)的串口擴展。根據(jù)系統(tǒng)需要,在串口設計中還使用了光電隔離技術。本模塊的結構框圖如圖 。圖 智能串口總體結構圖單片機作為智能串口模塊的核心處理器,接收數(shù)據(jù)時把來自串口的數(shù)據(jù)放入雙端口存儲器中,同時在共享標記空間中使接收的數(shù)據(jù)長度值加一、從而實現(xiàn)數(shù)據(jù)的“打包”操作。DSP 可以訪問雙端口存儲器,取出來自串口的數(shù)據(jù)進行相應的處理。在發(fā)送數(shù)據(jù)時,DSP 將一幀數(shù)據(jù)放入雙端口存儲器中,單片機通過逐字節(jié)地將雙端口 RAM 中的數(shù)據(jù)發(fā)往對應的串行接口實現(xiàn)數(shù)據(jù)的“拆包”工作。本小節(jié)將逐步地介紹智能串口各個組成模塊的硬件結構及電路設計。 單片機及硬件電路擴展單片機又稱單片微型計算機,是將 CPU、RAM、ROM、I/O 接口和定時器/計數(shù)器等功能集成在一塊芯片上的微型計算機,簡稱單片機。由于單片機把各種功能部件集成在一塊芯片上,因此它的結構緊湊、超小型化、可靠性高、價格低廉,易于開發(fā)應用。MCS51 單片機是目前常用的一類單片機,在本次設計中采用了 Atmel 公司研制的 AT89LS52單片機,它具有較小的功耗()、16MHZ 晶振輸入。同大多數(shù)單片機一樣 AT89LS52 單片機分為片內(nèi)程序存儲器(FLASH:8K)、片內(nèi)數(shù)據(jù)存儲器、片外程序存儲器、片外數(shù)據(jù)存儲器,一共 64K 的擴展空間。由于要連接DSP 和多串口模塊,所以單片機的 P0 口和 P2 口就用于地址/數(shù)據(jù)總線的擴展。圖 單片機地址/數(shù)據(jù)總線擴展電路圖存儲器提供了兩個完全獨立的端口,每個端口分別有自己的控制線、地址線和I/O數(shù)據(jù)線。2個CPU可以獨立地讀寫其中任一雙端口RAM單元。使用雙端口存儲器在2個CPU之間共享信息有很多優(yōu)點:速度快,方式簡單,存取共享信息所用的時間一般與存取CPU外部RAM中數(shù)據(jù)所用時間一樣。雙端口RAM在使用上應注意的一個問題是有可能發(fā)生爭用。當兩個端口的CPU同時取同一雙端口RAM單元時,就產(chǎn)生了爭用,會出現(xiàn)數(shù)據(jù)混亂狀態(tài)。通常有四種解決方案:硬件判優(yōu)、中斷方案、令牌傳遞方案和軟件判優(yōu)。在本次設計中根據(jù)系統(tǒng)需要選用了 IDT 公司的 8K8bit 的雙端口存儲器IDT70V05。該芯片具有以下特點:允許同時對同一個單元進行讀操作對存儲器的高速訪問,在工業(yè)標準下可達20ns低功耗操作通過選擇 Master/Slave 模式容易擴展到 16bit 的數(shù)據(jù)總線寬度具有中斷標記功能針對兩個端口完全支持硬件信號燈機制第 3 章 系統(tǒng)硬件電路設計 25兩個端口完全的異步操作TTL 電平兼容,單一的 供電 SC16C654 及硬件電路設計SC16C654 UART 的 8 位數(shù)據(jù)并行總線同單片機擴展總線電路中的 245 雙向三態(tài)器 B 端相連,AAA0 引腳接到 373 鎖存器的輸出端。通過對單片機 P2 口的最高三位 、 譯碼后選中 SC16C654 四通道中的任意一個通道進行相關操作。本次設計主要是使用了 SC16C654 的 FIFO 功能。64 字節(jié)的發(fā)送和接收 FIFO是通過設置FIFO控制寄存器的FCR[0]為1使能。讀取LSR寄存器的最低位LSR[0]可以判斷是否有數(shù)據(jù)放入 FIFO 中,如果該位為 1 則表示接收數(shù)據(jù)準備好。在發(fā)送時,通過判斷 LSR[5]是否為 1 來檢測發(fā)送 FIFO 是否還有空間可用。讀取 RHR寄存器可以讀取接收FIFO的當前字節(jié),寫THR寄存器可以將數(shù)據(jù)寫入發(fā)送FIFO 串口光電隔離電路設計在實際的電子電路系統(tǒng)中,不可避免地存在各種各樣的干擾信號,若電路的抗干擾能力差將導致測量、控制準確性的降低,產(chǎn)生誤動作,從而帶來破壞性的后果。因此,如果在硬件上采用一些隔離技術,破壞干擾信號進入測控系統(tǒng)的途徑,可有效地提高系統(tǒng)的抗干擾能力。事實證明,采用隔離技術是一種簡便且行之有效的方法。隔離技術是破壞地干擾途徑的抗干擾方法,硬件上常用光電耦合器件實現(xiàn)電→光→電的隔離,這樣可以有效地破壞干擾源的進入,可靠地實現(xiàn)信號的隔離,且容易構成各種功能狀態(tài)??紤]到系統(tǒng)的安全性,本次設計根據(jù)需求加入光電隔離模塊。在本文的設計中考慮到輸入端的電流驅動能力,以及整個電路的邏輯正確性,需在 SC16C654 的輸出端連接一個反相器,然后反相器的輸出接到光電隔離模塊的輸入陽極,這樣可以保證從 UART 輸出的邏輯和經(jīng)光電隔離之后的邏輯一致。本文光電隔離模塊的電路原理圖如圖 所示:圖 串口光電隔離電路原理圖如圖所示,從 SC16C654 發(fā)出的數(shù)據(jù)信號(一共有 6 個通道,由于篇幅限制只了通道 A,例如 SAOUT),經(jīng)過 74HC04 反向后輸出,經(jīng)過光電隔離之后電次取反,并將結果送往串口芯片,因此設計可以保證數(shù)據(jù)的邏輯正確。第四章 系統(tǒng)的軟件設計 本章將重點介紹系統(tǒng)的軟件設計及測試,主要分兩節(jié)對系統(tǒng)軟件部分進行詳細介紹。第一部分是本章的重點內(nèi)容,包括了智能串口的協(xié)議設計以及軟件實現(xiàn)過程。第二部分介紹在 DSP 系統(tǒng)初始化過程中倍頻設置和 EMIF 配置的軟件設計以及對 FLASH 和 SDRAM 存儲器的軟件測試。根據(jù)系統(tǒng)需求,在本文基于 DSP 的嵌入式系統(tǒng)設計中需要支持 6 路串行通道的數(shù)據(jù)收發(fā)。其中2路用于RS23另外的4路用于RS426 路串行通道需要開辟 256 字節(jié)的緩沖區(qū)。但是普通的 UART 芯片最高也只能支持 64 字節(jié)的 FIFO 緩沖,因此需要擴展現(xiàn)有的緩沖區(qū)。通過 DSP 和單片機的共同編程控制,可以實現(xiàn) 256 字節(jié)、6 通道緩沖區(qū)的設計。 智能串口協(xié)議設計智能串口協(xié)議主要包括兩個部分的內(nèi)容:(1)數(shù)據(jù)發(fā)送協(xié)議。(2)數(shù)據(jù)接收協(xié)議。數(shù)據(jù)發(fā)送協(xié)議流程:DSP 發(fā)送數(shù)據(jù)到各個串行接口的方式是小于 256 字節(jié)任意長度的模塊化發(fā)送,因此需要設計一個智能發(fā)送系統(tǒng)來對 DSP 的“整包”數(shù)據(jù)進行“拆包”后發(fā)送到串行接口。在設計中,單片機就擔負起數(shù)據(jù)拆包并發(fā)送至串口的工作。圖 中的深色部分是存放在雙端口存儲器中的共享資源。當 DSP需要將數(shù)據(jù)發(fā)送至串行接口時,其首先判定發(fā)送的通道。然后查看該通道的通道發(fā)送標記(判別是發(fā)往高通道或者低通道)。接著訪問共享資源中的允許發(fā)送標記,如果檢測獲知可以發(fā)送則將整個一幀的數(shù)據(jù)發(fā)送至該通道,然后將本次發(fā)送的數(shù)據(jù)長度寫入發(fā)送長度標記單元。當單片機循環(huán)到需要接收本通道的數(shù)據(jù)時首先查看本次訪問的半通道標記(0:訪問低半通道,1:訪問高半通道)。然后查看單片機是否允許接收,如果可以則將數(shù)據(jù)逐字節(jié)地發(fā)往串行接口。當發(fā)送完一幀數(shù)據(jù)后改變半通道標記,使下一次從另一半通道發(fā)送數(shù)據(jù)。數(shù)據(jù)接收協(xié)議流程:單片機需將從串行接口接收的數(shù)據(jù)放入雙端口存儲器中。先查看單片機接收通道標記,如果為 0x00 則將數(shù)據(jù)放入接收低通道,如果為0xff 則將數(shù)據(jù)放入接收的高通道。每次放完一字節(jié)數(shù)據(jù),需將接收長度值加 1。DSP 在接收數(shù)據(jù)時首先檢查接收通道標記(0:接收地通道,1:接收高通道)。然后查看接收的長度是否為 0,如果不為 0,則修改單片機接收通道標記值,此刻單片機如果接收到串口數(shù)據(jù),可以將數(shù)據(jù)放入另一半通道,這樣可以提高數(shù)據(jù)處理速度,充分利用雙端口存儲器的資源。當 DSP 接收了半通道的數(shù)據(jù)之后即可將接收長度清零,同時將接收通道標記取反,使 DSP 下次接收數(shù)據(jù)時從另一半通道接收。在協(xié)議設計中由于涉及到兩個處理器交互數(shù)據(jù),因此需要設置一些用于交互的共享信息,這些信息存儲在雙端口存儲器中的某些內(nèi)存空間中。DSP 和單片機在訪問這些信息時需針對硬件信號燈進行互斥操作。這些共享信息如圖所示; 圖 雙端口存儲器中的共享信息 DSP發(fā)送數(shù)據(jù)流程DSP 發(fā)送數(shù)據(jù)流程:串口數(shù)據(jù)的發(fā)送需要 DSP 和單片機共同完成。DSP 處理器主要是進行數(shù)據(jù)的模塊化發(fā)送,而單片機主要是將 DSP 發(fā)送的模塊化數(shù)據(jù)“拆包”逐字節(jié)地發(fā)送到串行接口。在發(fā)送數(shù)據(jù)的過程中需要同單片機處理器交互一些共享數(shù)據(jù),因此在訪問共享數(shù)據(jù)的時候需要進行互斥操作。例如在訪問之前需寫 0x00 到雙端口存儲器對應的信號燈單元,然后讀取 D0 數(shù)據(jù)總線,如果為 0 代表本次操作已經(jīng)獲取信號燈,如果為 1 則需等待。DSP 將需要發(fā)送的數(shù)據(jù)放入數(shù)組中,整包地向雙端口存儲器中存放數(shù)據(jù)。在DSP 每次發(fā)送一幀完整數(shù)據(jù)之前(不超過 256 字節(jié)),首先檢查發(fā)送通道標記(自定義的變量),如果為 0 則發(fā)往低通道,為 1 則發(fā)往高通道。然后檢查對應通道的允許發(fā)送標記(雙端口存儲器中用于 DSP 和單片機交互信息的共享變量, 所示,0x00:可以發(fā)送,0xff:不可以發(fā)送)。如果可以發(fā)送,則將數(shù)據(jù)放入對應的空間(低/高),并將發(fā)送長度寫入低(高)通道發(fā)送長度標記單元。當一幀完整數(shù)據(jù)發(fā)送完畢之后,本通道(低/高)的 DSP 指針回到初始位置,改變發(fā)送的通道標記,使下一次發(fā)送數(shù)據(jù)放入另外一個半通道,然后修改允許發(fā)送標記為 0xff(告知單片機可以取數(shù)發(fā)往串口)。DSP 發(fā)送數(shù)據(jù)的流程如圖 所示。 圖 DSP 向多串口發(fā)送數(shù)據(jù) 單片機發(fā)送數(shù)據(jù)流程在本系統(tǒng)的設計中,單片機主要有三個任務:(1)初始化兩片 SC16C654 芯片;(2)接收來自串口的數(shù)據(jù),并“打包”供 DSP 接收;(3)將來自 DSP 的數(shù)據(jù)“拆包”后發(fā)送到串行接口。本小節(jié)將介紹單片機對串口的初始化以及單片機發(fā)送數(shù)據(jù)的流程和程序設計。1. 單片機初始化串口:單片機在初始化 UART 時主要有三個任務。首先需要設定串行波特率(系統(tǒng)要求 4 路工作在 ,2 路工作在 ,調(diào)試時可以降低頻率測試),其次設置串行傳輸?shù)臄?shù)據(jù)格式(1 個起始位、1 個停止位、8個數(shù)據(jù)位、無校驗位),最后使能 FIFO。通過配置 LCR、EFR 以及 MCR 寄存器可以使 SC16C654 工作在特定的串行波特率下。設置 LCR 寄存器可以設定串行通信的數(shù)據(jù)格式。將 FCR 寄存器的最低位置一即可進行 FIFO 操作。2. 單片機發(fā)送數(shù)據(jù)流程:單片機發(fā)送 DSP 傳輸?shù)酱诘臄?shù)據(jù)是一個“拆包”的操作,將完整的一幀數(shù)據(jù)按順序地發(fā)送到串行接口。在單片機發(fā)送數(shù)據(jù)時需要注意允許發(fā)送標記,如果為 0x00,則表示 DSP 一個完整數(shù)據(jù)幀還沒有全部放入雙端口中,單片機可以去處理其他的任務。只有當該標記為 0xff 的時候單片機才可以發(fā)送數(shù)據(jù)。在單片機每次循環(huán)處理本通道的數(shù)據(jù)發(fā)送時,首先檢測本次將訪問的半通道標記,然后查看對應的低(高)通道允許發(fā)送標記。如果為 0xff則表示可以發(fā)送數(shù)據(jù),每次發(fā)送一字節(jié)。如果已經(jīng)完成本通道一個完整數(shù)據(jù)幀的發(fā)送,則改變將要訪問的半通道標記(下次從另一半通道取數(shù)),同時單片機的本半通道指針回到初始位置,已發(fā)送的數(shù)據(jù)總長清 0,低(高)通道發(fā)送標記置為0x00(告訴 DSP 當前通道為空,可以往里面發(fā)送數(shù)據(jù))。以 0 通道為例,單片機發(fā)送至串口的程序如下:void send_uart0(){if(sendchl_flg[0] == (char)0x00){//檢查半通道標記為 0x
點擊復制文檔內(nèi)容
黨政相關相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1