<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > PIC18FXX8單片機(jī)通用同步異步收發(fā)器的接口電路和C源代碼

          PIC18FXX8單片機(jī)通用同步異步收發(fā)器的接口電路和C源代碼

          作者: 時(shí)間:2012-06-01 來(lái)源:網(wǎng)絡(luò) 收藏

          本文引用地址:http://www.ex-cimer.com/article/171367.htm
          摘 要:本文介紹了Microchip公司推出的USART(串行通信)的相關(guān)內(nèi)容,給出了該模塊的和C語(yǔ)言應(yīng)用編程。
          0 引言
          PIC18Fxx8是美國(guó)微芯公司推出的16位RISC指令集的高級(jí)產(chǎn)品,由于芯片內(nèi)含有A/D、內(nèi)部E2PROM存儲(chǔ)器、I2C和SPI、CAN接口、串行通信(USART)接口等強(qiáng)大的功能,具有很好的應(yīng)用前景。但是,目前介紹其應(yīng)用和以C語(yǔ)言編程的中文參考資料很少。本文將探討該型單片機(jī)串行通信的編程應(yīng)用,程序用HI-TECH PICC-18 C語(yǔ)言編寫(xiě),并在重慶大學(xué)-美國(guó)微芯公司PIC單片機(jī)實(shí)驗(yàn)室的PIC18F458實(shí)驗(yàn)板上通過(guò)。
          1 單片機(jī)/異步(USART)
          同步/異步(USART)模塊是由內(nèi)的三個(gè)串行I/O模塊組成的器件之一(USART也叫串行通信接口即SCI),可以配置為全雙工異步方式、半雙工同步主控方式、半雙工同步從動(dòng)方式三種工作方式。
          TXSTA是PIC18FXX8單片機(jī)串行通信發(fā)送狀態(tài)和控制寄存器,RCSTA是接收狀態(tài)和控制寄存器。由于在實(shí)際工程中,異步方式用得最多,這里僅介紹異步工作方式,其它方式可參閱相關(guān)資料。
          1.1 USART 異步工作方式
          在異步工作方式下,串行通信接口USART采用標(biāo)準(zhǔn)的不歸零(NRZ)格式(1位起始位、8位或9位數(shù)據(jù)位和一位停止位),最常用的數(shù)據(jù)位是8位。片內(nèi)提供的8位波特率發(fā)生器BRG可用來(lái)自振蕩器時(shí)鐘信號(hào)產(chǎn)生標(biāo)準(zhǔn)的波特率頻率。通過(guò)對(duì)SYNC位(在TXSTA寄存器中)清零,可選擇USART異步工作方式。
          1.2 USART波特率發(fā)生器(BRG)
          USART帶有一個(gè)8位的波特率發(fā)生器(BRG),這個(gè)BRG支持USRAT的同步方式和異步方式。用SPBRG寄存器控制一個(gè)獨(dú)立的8位定時(shí)器的周期。在異步方式下,BRGH位(控制寄存器TXSTA的)也被用來(lái)控制波特率。在同步方式下,用不到BRGH位。表1給出了在主控方式下(內(nèi)部時(shí)鐘)不同USART工作方式時(shí)的波特率計(jì)算式。
          表1主控方式下的波特率計(jì)算式

          SYNC

          BRGH=0(低速)
          BRGH=1(高速)
          0
          (異步)波特率=FOSC/[64(X+1)]
          波特率 = FOSC/[16(X+1)]
          1
          (同步)波特率=FOSC/[4(X+1)]
          無(wú)

          1.3 USART 異步工作方式配置
          下面是串行通信異步工作方式配置步驟(順序可以改變):
          (1)配置發(fā)送狀態(tài)和控制寄存器TXSTA;
          (2)配置接收狀態(tài)和控制寄存器RCSTA;
          (3)配置RX(RC7引腳)、TX(RC6引腳)分別為輸入和輸出方式;
          (4)通過(guò)設(shè)定的通信波特率配置SPBRG寄存器,計(jì)算公式參見(jiàn)表1;
          (5)設(shè)置串行通信接收或發(fā)送中斷是否使能;
          (6)清串行通信接收或發(fā)送中斷標(biāo)志;
          (7)設(shè)置串行通信接收中斷或發(fā)送中斷的優(yōu)先級(jí)是高或低優(yōu)先級(jí)中斷方式,PIC18單片機(jī)默認(rèn)情況下是高優(yōu)先級(jí)中斷,若是低優(yōu)先級(jí)中斷,則必須進(jìn)行設(shè)置;
          (8)設(shè)置串行通信接收和發(fā)送數(shù)據(jù)是否允許。
          若用到了中斷功能,還需設(shè)置總中斷和外圍中斷使能,以開(kāi)放未屏蔽的中斷。
          2 USART接口硬件

          DIY機(jī)械鍵盤(pán)相關(guān)社區(qū):機(jī)械鍵盤(pán)DIY



          上一頁(yè) 1 2 3 下一頁(yè)

          評(píng)論


          相關(guān)推薦

          技術(shù)專(zhuān)區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();