在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于CPLD的RS-232串口通信實(shí)現(xiàn)

            基于CPLD的RS-232串口通信實(shí)現(xiàn)

            作者: 時(shí)間:2012-02-29 來源:網(wǎng)絡(luò) 收藏

            通過狀態(tài)圖可以方便、準(zhǔn)確地得到程序設(shè)計(jì)框圖如圖4所示。

            本文引用地址:http://www.biyoush.com/article/190717.htm

            f.JPG



            3 各模塊設(shè)計(jì)
            3.1 波特率發(fā)生器
            通信必須要設(shè)定波特率,本設(shè)計(jì)采用的波特率為9 600 bit/s。產(chǎn)生波特率的時(shí)鐘頻率是越高越好,這樣才可產(chǎn)生較高且精確的波特率。設(shè)計(jì)選用50M主頻率要產(chǎn)生9600bit/s波特率,每傳送一位數(shù)據(jù)需要5 208.33個(gè)時(shí)鐘周期。取一個(gè)最接近的數(shù)是5 208,則波特率為9 600.61,其誤差約為0.006%,誤碼率很低可以確保通信正常。
            波特率發(fā)生器要解決的另一個(gè)關(guān)鍵性問題是確保準(zhǔn)確地捕獲起始位“0”。即時(shí)準(zhǔn)確地捕獲起始位不僅決定通信是否順暢開始,而且還影響后續(xù)的數(shù)據(jù)采樣過程可靠地進(jìn)行。方案采取了16分頻的波特率發(fā)生器,即通過對(duì)50 M總時(shí)鐘源分頻,得到一個(gè)9 600x16 Hz的時(shí)鐘進(jìn)行數(shù)據(jù)傳輸,這樣每16個(gè)時(shí)鐘信號(hào)采樣1 bit數(shù)據(jù)。在Rxd數(shù)據(jù)接收端口接收到從空閑高電平“1”跳變?yōu)槠鹗嘉坏碗娖?ldquo;0”信號(hào)后,連續(xù)8個(gè)分頻周期確認(rèn)是否是起始位。若是連續(xù)的低電平則捕獲起始位,自此之后每16個(gè)時(shí)鐘周期讀取1 bit數(shù)據(jù)。這種方法不僅確保了起始位的準(zhǔn)確捕獲,而且使數(shù)據(jù)采樣點(diǎn)處于了數(shù)據(jù)的正中央保證了數(shù)據(jù)的準(zhǔn)確。
            3.2 接收器
            在波特率發(fā)生器捕獲起始位并啟動(dòng)后,接收器將開始工作。其主要工作是接收每一位數(shù)據(jù),將串行數(shù)據(jù)移位存入緩沖寄存器,并在接收完一字節(jié)數(shù)據(jù)后將數(shù)據(jù)存入鎖存器完成串并轉(zhuǎn)換,同時(shí)發(fā)出char_ok信號(hào)通知邏輯控制模塊一個(gè)字節(jié)的數(shù)據(jù)已經(jīng)接收完畢。
            接收器的部分程序如下所示:
            g.JPG
            3.3 邏輯處理模塊
            邏輯處理模塊是模擬UART的決策模塊。它主要完成PC機(jī)與的握手、數(shù)據(jù)處理和數(shù)據(jù)校驗(yàn)、狀態(tài)分析與給收發(fā)模塊提供決策。
            PC機(jī)要向發(fā)數(shù)據(jù)時(shí),先向發(fā)送FF,F(xiàn)F表示PC機(jī)要與建立聯(lián)系。CPLD收到這個(gè)信息后,由邏輯模塊的talk信號(hào)通知發(fā)射模塊握手情況,發(fā)送器通過給PC機(jī)反饋信息,DD表示CPLD收到了PC機(jī)的要求并同意建立聯(lián)系,CC表示握手不成功PC機(jī)可以再次發(fā)出請(qǐng)求。握手成功后,PC機(jī)要向CPLD發(fā)出命令字符,E1表示寫,E2表示讀。
            隨后進(jìn)入數(shù)據(jù)接收或發(fā)送狀態(tài),每個(gè)數(shù)據(jù)包接收完畢后邏輯處理模塊進(jìn)入下一狀態(tài)——數(shù)據(jù)校驗(yàn)狀態(tài)。根據(jù)上文提到的本設(shè)計(jì)的數(shù)據(jù)校驗(yàn)采用和校驗(yàn),數(shù)據(jù)校驗(yàn)完后邏輯處理模塊會(huì)根據(jù)校驗(yàn)結(jié)果給出信號(hào)check,通知發(fā)送模塊Txd發(fā)送反饋信息給PC機(jī)。
            邏輯控制模塊的部分程序如下所示:
            h.JPG



            關(guān)鍵詞: CPLD 232 RS 串口

            評(píng)論


            相關(guān)推薦

            技術(shù)專區(qū)

            關(guān)閉