少妇精品无码一区二区三区-日本高清视频在线-男女18禁啪啪无遮挡-www.国产精品视频-91精品婷婷国产综合久久性色-99亚洲乱人伦aⅴ精品-国产男女无套免费网站-首尔之春在线看-一二区视频-成人做爰视频www-日本h漫在线观看-99热爱久久99热爱九九热爱-亚洲黄a-亚洲激情免费-国产波霸爆乳一区二区-青草青草久热国产精品-欧美人成精品网站播放-按摩师高h荡肉呻吟在线观看-国产色a∨在线看免费-麻豆免费在线视频

您好!歡迎光臨烜芯微科技品牌官網(wǎng)!

深圳市烜芯微科技有限公司

ShenZhen XuanXinWei Technoligy Co.,Ltd
二極管、三極管、MOS管、橋堆

全國(guó)服務(wù)熱線:18923864027

基于C8051F020單片機(jī)的RS485串行通信設(shè)計(jì)解析
  • 發(fā)布時(shí)間:2024-09-30 20:10:57
  • 來源:
  • 閱讀次數(shù):
基于C8051F020單片機(jī)的RS485串行通信設(shè)計(jì)解析
在計(jì)算機(jī)網(wǎng)絡(luò)和工業(yè)控制系統(tǒng)中,經(jīng)常需要采用串行通信來實(shí)現(xiàn)遠(yuǎn)程數(shù)據(jù)傳輸。目前,有多種接口標(biāo)準(zhǔn)可用于串行通信,包括RS232、RS422、RS485等。目前RS485通信采用差分方式來消除噪聲,即信號(hào)在發(fā)送前會(huì)分解為正負(fù)2條線路,當(dāng)?shù)竭_(dá)接收端時(shí)將信號(hào)相減,使噪聲相互抵消,還原成原來的信號(hào),這種方式對(duì)共模干擾抑制能力較強(qiáng),已廣泛應(yīng)用于工業(yè)控制等領(lǐng)域。
要實(shí)現(xiàn)單片機(jī)與計(jì)算機(jī)之間的RS485通信,一般可以采用2種方法:一種方法是在單片機(jī)與計(jì)算機(jī)兩端分別采用RS232與RS485電平轉(zhuǎn)換裝置;另一種方法是采用RS485通信卡,并將其插在計(jì)算機(jī)主板上。采用前一種方法的優(yōu)點(diǎn)是硬件裝置安裝簡(jiǎn)便,軟件編程相對(duì)簡(jiǎn)單;缺點(diǎn)是通信速率被限制在20 kb/s以內(nèi)。第二種方法的優(yōu)點(diǎn)是通信距離較遠(yuǎn),速率較高,可達(dá)10 Mb/s;缺點(diǎn)是需要安裝通訊卡和驅(qū)動(dòng)程序,并進(jìn)行必要的設(shè)置。本文介紹第二種方法。
1.總體架構(gòu)
在某型電子設(shè)備研制中,選用一種soc型8位單片機(jī)C8051F020,對(duì)測(cè)控系統(tǒng)進(jìn)行數(shù)據(jù)采集。該單片機(jī)是C8051F系列的F02X子系列,其性價(jià)比在工業(yè)控制領(lǐng)域具有較強(qiáng)的競(jìng)爭(zhēng)力。它是完全集成的混合信號(hào)系統(tǒng)級(jí)芯片,具有與8051指令集完全兼容的CIP一51內(nèi)核,對(duì)于熟悉51單片機(jī)的技術(shù)人員來說,在硬件設(shè)計(jì)及軟件編程上大大提高了開發(fā)效率。
測(cè)控計(jì)算機(jī)采用研華的IPC-610工控機(jī),并選用PCL一846B通信卡進(jìn)行RS485串行數(shù)據(jù)通信,該通信卡包含4通道,每個(gè)通道可以對(duì)32個(gè)節(jié)點(diǎn)進(jìn)行通信。
為了實(shí)現(xiàn)單片機(jī)與工控機(jī)之間的RS485串行通信,必須對(duì)單片機(jī)的UART輸出電平進(jìn)行轉(zhuǎn)換,以滿足RS485串行通信需求。選用MAX485接口芯片,它是Maxim公司的一種RS485接口芯片,該芯片的結(jié)構(gòu)和引腳都比較簡(jiǎn)單。
該設(shè)計(jì)理論上可以實(shí)現(xiàn)1臺(tái)工控機(jī)(安裝1塊RS485通信卡)對(duì)128臺(tái)單片機(jī)進(jìn)行Rs485串行通信,其總體設(shè)計(jì)框圖如圖1所示。
C8051F020單片機(jī) RS485串行通信
圖1 總體結(jié)構(gòu)
2.系統(tǒng)硬件設(shè)計(jì)
2.1硬件簡(jiǎn)介
(1)C8051F020單片機(jī)
C8051F020內(nèi)部有2個(gè)增強(qiáng)型全雙工UART、SPI總線和SMBus/IC,這些串行總線都用硬件實(shí)現(xiàn),都能夠向CIP-51內(nèi)核產(chǎn)生中斷,只需要很少的CPU干預(yù);這些串行總線不“共享”定時(shí)器、中斷或I/O端口等資源,因此可以使用任何一個(gè)或者全部同時(shí)使用。
C8051F020單片機(jī) RS485串行通信
C8051F020
(2)MAX485芯片
MAX485芯片采用+5V電源工作,其額定電流為300μA,它能將UART輸出電平轉(zhuǎn)換為RS485電平。該芯片有8個(gè)引腳,其內(nèi)部含有1個(gè)接收器和1個(gè)驅(qū)動(dòng)器,R0為接收器的輸出端,接單片機(jī)的TXD引腳;DI為驅(qū)動(dòng)器的輸入端,接單片機(jī)的RXD引腳。/RE是接收使能端,當(dāng)/RE=0時(shí),MAX485芯片處于接收狀態(tài);DE是發(fā)送使能端,當(dāng)DE=1時(shí),MAX485芯片處于發(fā)送狀態(tài)。
C8051F020單片機(jī) RS485串行通信
MAX485芯片
MAX485芯片的A端與B端分別為接收與發(fā)送的差分信號(hào)端。當(dāng)VA小于VB時(shí),表示發(fā)送信號(hào)為"0";當(dāng)VA大于VB時(shí),表示發(fā)送信號(hào)為"1"。MAX485芯片工作時(shí),A、B兩端之間應(yīng)當(dāng)加上匹配電阻尺,一般選用120 Ω;當(dāng)通信距離較遠(yuǎn)時(shí),可以選用300 Ω。
(3)RS485通信卡
Rs485通信卡具有較強(qiáng)的抗干擾能力、較高的通信速率以及較低的價(jià)格,在工業(yè)控制等領(lǐng)域具有較強(qiáng)的競(jìng)爭(zhēng)力和實(shí)用性。選用PCL-846B通信卡,該卡支持RS422和RS485 2種串行通信接口標(biāo)準(zhǔn),需要通過跳線進(jìn)行設(shè)置。另外,在該通信卡的4個(gè)通道上均預(yù)留有焊接終端匹配電阻的焊孔。
2.2電路設(shè)計(jì)
采用UART串行總線進(jìn)行通信,因?yàn)閁ART是一種廣泛應(yīng)用于遠(yuǎn)距離、低速率、低成本通信的串行傳輸接口,由于其具有數(shù)據(jù)線少的特點(diǎn),在數(shù)字系統(tǒng)設(shè)計(jì)中得到了大量應(yīng)用。基本的UART通信只需要兩根數(shù)據(jù)線(RXD、TXD)即可完成數(shù)據(jù)的相互通信,接收和發(fā)送都是全雙工形式,其中RXD是接收端,TXD是發(fā)送端。
C8051F020單片機(jī)有2個(gè)UART(UART0和UARTl),以UART0為例,它的TxD和RXD分別與數(shù)字I/0引腳PO.O和PO.1復(fù)用,通過交叉開關(guān)配置寄存器進(jìn)行選擇。由于MAX485工作在半雙工狀態(tài),它與單片機(jī)連接時(shí)的接線比較簡(jiǎn)單,只需要用單片機(jī)某一個(gè)引腳(如PO.2)來控制RE和DE這2個(gè)引腳。PCL-846B通信卡有4個(gè)通道,選擇通道1與單片機(jī)進(jìn)行通信,另外將通道2和通道4進(jìn)行連接,以自發(fā)自收的方式實(shí)現(xiàn)通信卡的自檢。單片機(jī)與外部電路的連接關(guān)系如圖2所示。
C8051F020單片機(jī) RS485串行通信
圖2 硬件電路原理
在使用RS485通信卡進(jìn)行通信時(shí),當(dāng)信號(hào)傳遞到通信線路兩端時(shí),如果阻抗不匹配,可能會(huì)產(chǎn)生信號(hào)反射問題。信號(hào)反射會(huì)造成信號(hào)的失真和變形,從而導(dǎo)致通信錯(cuò)誤。其解決方法就是在通信線路的兩端各連接一個(gè)終端匹配電阻,保證阻抗匹配。當(dāng)通信距離較短,一般在小于300m時(shí),可不使用終端電阻。當(dāng)通信距離大于300m時(shí),應(yīng)當(dāng)使用終端電阻,其阻值必須與通信線路的線性阻抗相同。電阻值一般選取120Ω左右,當(dāng)通信距離較長(zhǎng)時(shí),可以選用300Ω。
3.軟件設(shè)計(jì)
3.1通信方式
C8051F020單片機(jī)的UARTo提供4種工作方式(1種同步方式和3種異步方式),以方式1為例:方式1提供標(biāo)準(zhǔn)的異步、全雙工通信,每個(gè)數(shù)據(jù)字節(jié)共包含10位:1個(gè)起始位、8個(gè)數(shù)據(jù)位和1個(gè)停止位。數(shù)據(jù)從TX引腳發(fā)送,在RX引腳接收。2在多機(jī)通信中,通常選擇方式2和方式3,通過使用第9數(shù)據(jù)位和內(nèi)置UARTo地址識(shí)別硬件支持一個(gè)主處理器與多個(gè)從處理器之問的多機(jī)通信。
為了簡(jiǎn)化UART0的使用和軟件編程,選擇方式1進(jìn)行多機(jī)通信,通過編寫串口中斷程序?qū)νㄐ烹p方進(jìn)行約定。具體做法是:
1)約定發(fā)送數(shù)據(jù)的格式,本文約定以“#……*”作為合法的數(shù)據(jù)格式,即以“#”開始和“*”結(jié)束作為判斷數(shù)據(jù)有效性的依據(jù)。
2)在“#”和“*”之間的數(shù)據(jù)是需要的,本文約定以第2個(gè)字符(當(dāng)設(shè)備較多時(shí),可以2個(gè)字符)作為接收設(shè)備的識(shí)別碼,由接收設(shè)備(單片機(jī)或上位機(jī))對(duì)該字符進(jìn)行判斷,確定是否需要接收該數(shù)據(jù)。
3)當(dāng)接收設(shè)備需要知道發(fā)送數(shù)據(jù)的時(shí),也可以約定發(fā)送設(shè)備的識(shí)別碼(由于每臺(tái)設(shè)備既可以是發(fā)送設(shè)備也可以是接收設(shè)備,因此可以約定一個(gè)固定的識(shí)別碼),在發(fā)送數(shù)據(jù)中插入該識(shí)別碼(插入位置必須事先約定),即可獲知數(shù)據(jù)的設(shè)備。
3.2串口波特率
C8051F020單片機(jī)有5個(gè)16位通用計(jì)數(shù)器/定時(shí)器(T0~T4)和一個(gè)片內(nèi)可編程計(jì)數(shù)器/定時(shí)器陣列(PCA)。方式1的波特率是定時(shí)器溢出時(shí)間的函數(shù),UART0可以使用定時(shí)器1工作在8位自動(dòng)重裝載方式或者定時(shí)器2工作在波特率發(fā)生器方式產(chǎn)生波特率。以定時(shí)器2為例,其波特率的計(jì)算公式是:
C8051F020單片機(jī) RS485串行通信
式1
式中:SySCLK是單片機(jī)的系統(tǒng)時(shí)鐘,RCAP2H和RCAP2L分別為定時(shí)器2的重裝載寄存器的高8位和低8位。
波特率根據(jù)數(shù)據(jù)傳輸速率的實(shí)際需要確定,波特率確定后即可計(jì)算出定時(shí)器2的重裝載寄存器的初始值T2
C8051F020單片機(jī) RS485串行通信
式2
采用22.1184 MHz晶體振蕩器作為系統(tǒng)時(shí)鐘,波特率為9600 b/s,計(jì)算得到T2=FFB8H(十六進(jìn)制)。
3.3軟件流程
C8051F020單片機(jī)內(nèi)部具有JTAG和調(diào)試電路,可以通過JTAG接口對(duì)MCU進(jìn)行非侵入式、全速、在系統(tǒng)調(diào)試。根據(jù)系統(tǒng)功能需求,對(duì)軟件進(jìn)行模塊化設(shè)計(jì),并利用Silicon Labs IDE集成開發(fā)環(huán)境對(duì)單片機(jī)進(jìn)行編程與調(diào)試。利用C8051F020單片機(jī)的中斷系統(tǒng),直接采用C語言對(duì)UART中斷服務(wù)程序進(jìn)行編寫。
單片機(jī)的串口通信程序可由數(shù)據(jù)發(fā)送和接收2個(gè)模塊構(gòu)成。數(shù)據(jù)發(fā)送模塊首先需要設(shè)置UART為發(fā)送狀態(tài),清除發(fā)送標(biāo)志后向sBF中寫入數(shù)據(jù),開始逐個(gè)發(fā)送字符,數(shù)據(jù)發(fā)送完成后,恢復(fù)UART為接收狀態(tài)。數(shù)據(jù)接收模塊清除接收標(biāo)志后讀SBF中的數(shù)據(jù),開始接收字符,首先判斷接收數(shù)據(jù)是否有效,然后分析處理數(shù)據(jù),接收完數(shù)據(jù)后,退出接收程序。UART串口發(fā)送和接收模塊的程序流程如圖3所示。
C8051F020單片機(jī) RS485串行通信
圖3 串口通信程序流程
4.實(shí)驗(yàn)分析
設(shè)計(jì)的系統(tǒng)已經(jīng)應(yīng)用于某型實(shí)時(shí)測(cè)控裝置研制中,該測(cè)控裝置含有2個(gè)單片機(jī),其主控上位機(jī)安裝有l(wèi)塊RS485通信卡。具體驗(yàn)證過程是:將1個(gè)測(cè)控裝置與1臺(tái)上位機(jī)距離50 m進(jìn)行串行通信,通信正常可靠。將2個(gè)測(cè)控裝置與2臺(tái)上位機(jī)(均安裝有RS485通信卡)分別相距50 m,通信線路采用并聯(lián),4個(gè)通信節(jié)點(diǎn)之間RS485通信正常可靠。依次類推,在多個(gè)測(cè)控裝置與多臺(tái)上位機(jī)進(jìn)行遠(yuǎn)距離通信時(shí),RS485通信均正常可靠。
在上位機(jī)上通過串口調(diào)試助手可以簡(jiǎn)便地對(duì)串口進(jìn)行調(diào)試。該調(diào)試工具可以實(shí)時(shí)發(fā)送和接收串行數(shù)據(jù),數(shù)據(jù)格式和傳輸速率可調(diào),可以動(dòng)態(tài)觀察各通信節(jié)點(diǎn)的數(shù)據(jù)收發(fā)情況。串口調(diào)試界面如圖4所示。
C8051F020單片機(jī) RS485串行通信
圖4 串口調(diào)試界面
該設(shè)計(jì)方法成功實(shí)現(xiàn)了單片機(jī)與上位機(jī)之間的RS485串行通信,在單片機(jī)與上位機(jī)距離50 m以內(nèi)可以實(shí)現(xiàn)115.2 k/ps的高速通信,數(shù)據(jù)傳輸誤碼率低,完全滿足系統(tǒng)設(shè)計(jì)指標(biāo)。
結(jié)束語
以上就是基于C8051F020單片機(jī)的RS485串行通信設(shè)計(jì)介紹了。通過在單片機(jī)與工控機(jī)之間建立RS485串行通信網(wǎng)絡(luò),利用RS485串行通信的優(yōu)勢(shì),可以保證穩(wěn)定、快速、遠(yuǎn)距離地傳輸數(shù)據(jù)。設(shè)計(jì)的系統(tǒng)已經(jīng)在某型實(shí)時(shí)測(cè)控裝置研制中得到成功應(yīng)用,經(jīng)實(shí)驗(yàn)驗(yàn)證,數(shù)據(jù)傳輸正常可靠,達(dá)到設(shè)計(jì)要求。
〈烜芯微/XXW〉專業(yè)制造二極管,三極管,MOS管,橋堆等,20年,工廠直銷省20%,上萬家電路電器生產(chǎn)企業(yè)選用,專業(yè)的工程師幫您穩(wěn)定好每一批產(chǎn)品,如果您有遇到什么需要幫助解決的,可以直接聯(lián)系下方的聯(lián)系號(hào)碼或加QQ/微信,由我們的銷售經(jīng)理給您精準(zhǔn)的報(bào)價(jià)以及產(chǎn)品介紹
 
聯(lián)系號(hào)碼:18923864027(同微信)
 
QQ:709211280

相關(guān)閱讀
主站蜘蛛池模板: 成人免费网视频 | 免费成人深夜夜行网站视频 | 日日躁夜夜躁狠狠躁夜夜躁 | 免费看国产一级片 | 国产在线观看免费麻豆 | 国产一区二区三区乱码在线观看 | 久久综合99re88久久爱 | 久久视频在线视频 | 无码少妇一区二区三区免费 | 亚洲欧洲成人a∨在线 | 一级少妇精品久久久久久久 | 国产毛片久久久久久美女视频 | 爽爽影院免费观看 | 一区二区在线不卡 | 国产免费小视频 | 日韩深夜在线 | aaaa黄色 | 久久精品国产99国产 | 国产精品国产三级国产普通话对白 | 台湾全黄色裸体视频播放 | 在线一区国产 | 人人模人人干 | 国产又粗又猛又爽又黄的视频p站 | 国产免费高清 | 91国偷自产一区二区三区 | 小泽玛利亚一区二区在线 | 青青草综合 | 国产亚洲精品国产福利你懂的 | 少妇荡乳情欲办公室456视频 | 丰满少妇内射一区 | 高潮迭起av乳颜射后入 | 男女啪啪进出阳道猛进 | 午夜少妇av| 少妇又色又紧又大爽又刺激 | 国产尤物av尤物在线观看 | 1000午夜黄三级 | 老司机午夜精品视频无码 | 亚洲精品一二三区久久伦理中文 | 成人手机看片 | 91大神视频在线播放 | 成熟女人特级毛片www免费 | 1769国产| 精品三级av无码一区 | 少妇愉情理伦片丰满丰满午夜 | 欧美1234区 | 国产露脸精品国产探 | 叶玉卿三级露全乳视频 | 一级大片视频 | 中文字幕视频在线观看10页 | 免费无码黄十八禁网站在线观看 | 久久久久一 | 免费大黄网站 | 欧美成人精品欧美一级私黄 | 亚洲 欧洲 日韩 综合色天使 | 国产精品久久人妻无码网站一区 | 华人永久免费视频 | 在线无码中文字幕一区 | 精品多毛少妇人妻av免费久久 | 三级黄色片网站 | 天无日天天射天天视 | 国产av一区二区三区人妻 | 极品销魂美女少妇尤物优美 | 99久视频只有精品2019 | 五月天久久 | 亚洲欧美精品综合在线观看 | 欧美精品视 | 欧美三极片 | 亚洲精品综合一区二区 | 台湾佬中文字幕 | 色妺妺在线视频 | 久久久精品国产免费观看一区二区 | 亚洲综合涩 | 99精品免费观看 | 日本道专区无码中文字幕 | 玩弄白嫩少妇xxxxx性 | 欧洲亚洲精品 | 黑人强辱丰满的人妻熟女 | 十二月综合缴缴情小说 | 六月丁香婷婷色狠狠久久 | 国产精品国产精品国产专区蜜臀ah | 网站av在线| 日韩精品中文字幕久久臀 | 在线观看国产福利 | 国产激情无码视频在线播放性色 | 在线观看成人小视频 | 午夜理论电影在线观看亚洲 | 国内精品久久毛片一区二区 | 91淫黄大片 | 免费全黄无遮挡裸体毛片 | 成人未满十八无毛片 | 免费看涩涩视频软件 | 精品国产自线午夜福利在线观看 | 最新高清无码专区 | 国产精品一区二区三区不卡 | 亚洲春色综合另类网 | 国产精品久久久久久久福利竹菊 | 亚洲欧美中文字幕 | 自拍偷拍专区 | av成人毛片|