新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > STM32中斷式發(fā)送特點(diǎn)和RS485方向控制

        STM32中斷式發(fā)送特點(diǎn)和RS485方向控制

        作者: 時(shí)間:2016-12-02 來源:網(wǎng)絡(luò) 收藏
        STM32的數(shù)據(jù)發(fā)送有兩個(gè)中斷標(biāo)志,一個(gè)是發(fā)送數(shù)據(jù)寄存器空標(biāo)志,一個(gè)是發(fā)送完畢標(biāo)志。兩個(gè)標(biāo)志都可以引起中斷.


        要以中斷的方式發(fā)送一個(gè)數(shù)據(jù)包,流程是這樣的:

        1.設(shè)置RS485的方向?yàn)榘l(fā)送,使能發(fā)送寄存器空中斷,使能完畢進(jìn)入串口中斷。

        2.串口中斷里讀取串口狀態(tài),并填充一個(gè)數(shù)據(jù)到發(fā)送數(shù)據(jù)寄存器,硬件自動清除發(fā)送數(shù)據(jù)寄存器空標(biāo)志,串口數(shù)據(jù)發(fā)送開始。

        3.串口發(fā)送完一個(gè)數(shù)據(jù),發(fā)送數(shù)據(jù)寄存器變空,再進(jìn)入中斷,繼續(xù)填充下一個(gè)數(shù)據(jù),直到最后一個(gè)數(shù)據(jù)填充完, 使能串口
        發(fā)送完畢中斷。

        4.最后一個(gè)數(shù)據(jù)發(fā)送完畢,再次進(jìn)入中斷, 清除發(fā)送數(shù)據(jù)寄存器空標(biāo)志,清除發(fā)送完畢中斷標(biāo)志,清除這兩個(gè)中斷標(biāo)志
        的使能位,設(shè)置RS485的方向?yàn)榻邮?

        注: 如果最后一個(gè)數(shù)據(jù)放入數(shù)據(jù)發(fā)送寄存器,就立刻設(shè)置RS485的方向?yàn)榻邮?,對方將會丟失一個(gè)數(shù)據(jù)。發(fā)送完畢中斷和
        51單片機(jī)的TI標(biāo)志功能是一樣的。唯有發(fā)送寄存器空標(biāo)志是51單片機(jī)所沒有的,使用這個(gè)標(biāo)志可保證發(fā)送數(shù)據(jù)波形的連續(xù)性,
        減少空閑時(shí)間。

        本文引用地址:http://www.104case.com/article/201612/325034.htm

        在連續(xù)的數(shù)據(jù)包發(fā)送時(shí),先開啟寄存器空中斷,進(jìn)入發(fā)送中斷,在發(fā)送中斷里填充數(shù)據(jù)到發(fā)送寄存器,最后一個(gè)數(shù)據(jù)填充完,開啟發(fā)送完畢中斷,最后一個(gè)數(shù)據(jù)發(fā)送完畢,再次進(jìn)入中斷,就可以控制RS485的方向?yàn)榻邮樟?



        評論


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

        關(guān)閉
        主站蜘蛛池模板: 灯塔市| 岗巴县| 冷水江市| 锦州市| 安溪县| 盐池县| 石台县| 清水县| 厦门市| 贡觉县| 太和县| 竹溪县| 荥阳市| 涪陵区| 毕节市| 弥渡县| 玉门市| 鄯善县| 康定县| 什邡市| 涡阳县| 邢台县| 河东区| 嘉峪关市| 天峻县| 宜州市| 衢州市| 教育| 都匀市| 沭阳县| 抚顺县| 拉萨市| 延川县| 青浦区| 营山县| 同仁县| 搜索| 建始县| 凤冈县| 陇南市| 鄂伦春自治旗|