国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

51單片機(jī)的串行口擴(kuò)展方法

發(fā)布時(shí)間:2010-7-22 17:22    發(fā)布者:vinda
關(guān)鍵詞: 51單片機(jī) , 串行口
1 引言

在研究采場(chǎng)瓦斯積聚模擬試驗(yàn)臺(tái)的過(guò)程中,筆者設(shè)計(jì)了主從式多機(jī)采控系統(tǒng)結(jié)構(gòu)。主從式多機(jī)控制系統(tǒng)是實(shí)時(shí)控制系統(tǒng)中較為普遍的結(jié)構(gòu)形式,它具有可靠性高,結(jié)構(gòu)靈活等優(yōu)點(diǎn)。當(dāng)選用單串口51單片機(jī)構(gòu)成這種主從式多機(jī)系統(tǒng)時(shí),51單片機(jī)一方面可能要和主機(jī)Computer通信,一方面又要和下位機(jī)通信,這時(shí)就需要擴(kuò)展串行通道。本文具體介紹了兩種串行通道的擴(kuò)展方法。

2 串行口的擴(kuò)展方法

常用的標(biāo)準(zhǔn)51單片機(jī)內(nèi)部?jī)H含有一個(gè)可編程的全雙工串行通信接口,具有UART的全部功能。該接口電路不僅能同時(shí)進(jìn)行數(shù)據(jù)的發(fā)送和接收,也可作為一個(gè)同步移位寄存器使用。當(dāng)以此類型單片機(jī)構(gòu)成分布式多級(jí)應(yīng)用系統(tǒng)時(shí),器件本身的串口資源就不夠用了。筆者在實(shí)際開(kāi)發(fā)中,查閱了有關(guān)資料,總結(jié)出如下兩種常用而有效的串行通道擴(kuò)展方法。

2.1 基于SP2538的擴(kuò)展方法

SP2538是專用低功耗串行口擴(kuò)展芯片,該芯片主要是為解決當(dāng)前基于UART串口通信的外圍智能模塊及器件較多,而單片機(jī)或DSP原有的UART串口又過(guò)少的問(wèn)題而推出的。利用該器件可將現(xiàn)有單片機(jī)或DSP的單串口擴(kuò)展至5個(gè)全雙工串口。使用方法簡(jiǎn)單、高效。

在應(yīng)用SP2538擴(kuò)展串行通道時(shí),母串口波特率K1=2880*Fosc_in,單位是MHz,且Fosc_in小于20.0MHz, 在SP2538輸入時(shí)鐘Fosc_in =20.0MHZ時(shí)母串口可自適應(yīng)上位機(jī)的56000bps和57600bps兩種標(biāo)準(zhǔn)波特率輸入。子串口波特率K2=480*Fosc_in。

母串口和所有子串口都是TTL電平接口,可直接匹配其他單片機(jī)或TTL數(shù)字電路,如需連接PC機(jī)則必須增加電平轉(zhuǎn)換芯片如MAX202 、MAX232 等。SP2538具有內(nèi)置的上電復(fù)位電路和可關(guān)閉的看門狗監(jiān)控電路。上位機(jī)寫命令字0x10可實(shí)現(xiàn)喂狗,寫命令字0x15關(guān)閉看門狗,初次上電后看門狗處于激活狀態(tài)或?qū)懨钭?x20激活看門狗監(jiān)控功能。上位機(jī)可通過(guò)芯片復(fù)位指令0x35在任何時(shí)候讓芯片進(jìn)行指令復(fù)位,也可通過(guò)芯片睡眠指令0x55在任何時(shí)候讓芯片進(jìn)入微功耗睡眠模式以降低系統(tǒng)功耗。初次上電后芯片不會(huì)自行進(jìn)入睡眠模式,但只能由上位機(jī)通過(guò)母串口任意發(fā)送一個(gè)字節(jié)數(shù)據(jù)將其喚醒,其他子串口不具備這一功能。

圖(1)是AT89C52單片機(jī)與SP2538的電路連接,圖中,AT89C52的全雙工串口與SP2538的母串口5相連,該串口同時(shí)也作為命令/數(shù)據(jù)口。SP2538的ADRI0、ADRI1、ADRI2分別與AT89C52的P2.3、P2.4、P2.5口相連,可用于選擇發(fā)送數(shù)據(jù)是選擇相應(yīng)的串口0"4;ADRO0、ADRO1、ADRO2與P2.0、P2.1、P2.2相連,用于判斷接收的數(shù)據(jù)來(lái)自哪一個(gè)串口。 SP2538的時(shí)鐘頻率選為20.0MHZ,此時(shí)母串口5的波特率為57600bps,串口0"4的波特率為9600bps。

下面是與上述硬件電路相關(guān)的接口程序,該程序用A51匯編語(yǔ)言編制,程序僅說(shuō)明了中斷方式下對(duì)子串口0(TX0、RX0)的操作,其它子串口類似。

TBLOCK DATA20H
RBLOCK DATA30H
LENGTH DATA14H

TXR_REV_SEND: CLRES
JBCRI,RECEIVE
CLRTI
MOVA,@R0
CLRP2.0 ; 寫數(shù)據(jù)到"SBUF"前必須先置欲發(fā)送子串口的地址
CLRP2.1
CLRP2.2
MOVSBUF,A
DJNZ R2,NEXT
SJMP $
NEXT: INCR0
RETI
RECEIVE:MOVA,P2
ANDA,#31H;判斷是否為子串口0
JNZELSE
MOVA,SBUF
MOV@R1,A
INCR1
RETI

圖(1) AT89C52與SP2538的電路連接

2.2 基于Intel8251的串行口擴(kuò)展方法

上面基于SP2538的串口擴(kuò)展方法可以說(shuō)是一種串行的擴(kuò)展方法,這里基于Intel8251的擴(kuò)展方法則是一種并行的方法。Intel8251是一種通用的同步/異步發(fā)送器(USART),它的工作方式可以通過(guò)編程設(shè)置。能夠以同步或異步串行通信方式工作,能自動(dòng)完成幀格式。

Intel8251具有獨(dú)立的接收/發(fā)送器。在異步方式下,用于產(chǎn)生8251內(nèi)部時(shí)序的時(shí)鐘CLK輸入至少應(yīng)為發(fā)送或接收時(shí)鐘的4.5倍。接收/發(fā)送(RXC/TXC)時(shí)鐘應(yīng)為波特率的1倍、16倍或64倍(由8251的工作方式字設(shè)定)。

圖(2)是用Intel8251擴(kuò)展一個(gè)串行通道的電路原理,圖中,11.0592MHZ晶振經(jīng)ALE6分頻后于 、組合,產(chǎn)生1.8432MHZ的時(shí)鐘頻率,分別作為8251與8253的時(shí)鐘輸入,若設(shè)定8251通信波特率為9600bps,波特率因子為16,則需要 153.6KHZ的接收/發(fā)送時(shí)鐘頻率,該頻率可由8253的OUT0產(chǎn)生。

下面的A51程序段說(shuō)明了如何設(shè)置8253使其產(chǎn)生153.6KHZ的方波,以及如何用8251收/發(fā)數(shù)據(jù):

設(shè)置8253的程序段:

MOVA,#36H ; 計(jì)數(shù)器0輸出方波控制字
MOVDPTR,#0FFFFH; 指向控制字寄存器
MOVX @DPTR,A
MOVDPTR,#0FFFCH; 指向0計(jì)數(shù)器地址
MOVA,#0DH
MOVX @DPTR,A
MOVA,#0
MOVX DPTR,A
SETB P1.0

操作8251的程序段:

START: MOVDPTR,#7FFFH;8251控制、命令口地址
MOVA,#5EH;一個(gè)停止位,奇校驗(yàn),8位數(shù)據(jù),異步*16
MOVX @DPTR,A;寫入方式字
MOVA,#15H
MOVX @DPTR,A;命令字,啟動(dòng)發(fā)送和接收器

LOOP: SJMP LOOP ;等待8251中斷
8251_INT: ;現(xiàn)場(chǎng)保護(hù)
MOVDPTR,#7FFFH
MOVA,@DPTR
JBACC.0,TX_INT
JBACC.1,RX_INT
INT_EXIT: ;恢復(fù)現(xiàn)場(chǎng)
RETI
發(fā)送數(shù)據(jù)
TX_INT:MOVDPTR,#7FFEH ;8251數(shù)據(jù)口地址
MOVA,20H
MOVX @DPTR,A

AJMP INT_EXIT
接收數(shù)據(jù)
RX_INT:MOVDPTR,#7FFEH
MOVX A,@DPTR
MOV30H,A

AJMP INI_EXIT

圖(2)用8251擴(kuò)展串行通道的硬件電路原理

3 結(jié)束語(yǔ)

以單片機(jī)為核心的多級(jí)分布式系統(tǒng)的應(yīng)用越來(lái)越廣泛,上面討論的兩種串行口的擴(kuò)展方法為此類多串口應(yīng)用領(lǐng)域提供了一個(gè)良好的解決方案。筆者在實(shí)際中采用基于SP2538的擴(kuò)展方法,設(shè)計(jì)了采場(chǎng)瓦斯積聚模擬試驗(yàn)臺(tái)的多級(jí)分布式采控系統(tǒng),效果良好。
本文地址:http://m.qingdxww.cn/thread-16186-1-1.html     【打印本頁(yè)】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • 使用SAM-IoT Wx v2開(kāi)發(fā)板演示AWS IoT Core應(yīng)用程序
  • 使用Harmony3加速TCP/IP應(yīng)用的開(kāi)發(fā)培訓(xùn)教程
  • 集成高級(jí)模擬外設(shè)的PIC18F-Q71家族介紹培訓(xùn)教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿(mào)澤電子(Mouser)專區(qū)
關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲精品免费网站 | 国产成人自产拍免费视频 | 91麻豆精品国产片在线观看 | 国产成人啪精品午夜在线观看 | 国产三级在线观看免费 | 成年女美黄网站大全免费播放 | 午夜探花在线观看 | 国产成人片 | 色狠狠一区二区三区香蕉蜜桃 | 亚洲欧美在线观看首页 | 成人午夜视频在线 | 青青青国产在线观看免费网站 | 日韩欧美精品在线观看 | 亚洲欧美不卡 | 日韩免费影院 | 国产片自拍 | 天然素人在线观看 | 两个人免费视频看完整 | 69视频在线观看 | 成人黄色片网站 | 国产精品极品美女自在线观看 | 中文字幕日韩欧美一区二区三区 | 天堂8在线官网 | 天天干天天操天天舔 | 韩国特黄毛片一级毛片免费 | 久久不卡一区二区三区 | 在线播放亚洲 | 色在线网站 | 手机国产精品一区二区 | 国产视频h| 四虎在线播放免费永久视频 | 欧美99视频| av在线手机播放 | 99r在线观看 | 国产欧美日韩不卡 | 亚洲va国产日韩欧美精品色婷婷 | 中文字幕 国产精品 | 午夜影院一区 | 欧美特级一级片 | baoyutv国产欧美在线视频 | 四虎网站1515hh四虎 |