chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

串口數(shù)據(jù)錯亂?從標志位設置入手

ZLG致遠電子 ? 2025-02-11 11:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

導讀

在串口通信開發(fā)中,數(shù)據(jù)錯亂是常見問題。本文將快速介紹串口標志位的作用及配置方法,幫助解決數(shù)據(jù)傳輸錯誤。

有用戶反饋“串口應用層數(shù)據(jù)錯亂、與發(fā)送端發(fā)送的字節(jié)數(shù)不匹配”,簡單來說就是接收和發(fā)送的數(shù)據(jù)不對,而且還存在幀數(shù)據(jù)錯亂的情況。經排查,是程序沒用設置ISIG標志位設置引起的。本節(jié)以此為切入點進行展開,對串口設置的一些標志位進行簡單說明。

1. c_cflag:可以設置波特率、字符大小、數(shù)據(jù)位、停止位、奇偶校驗位和硬軟流控等

1.1 波特率

4aba9ac6-e829-11ef-9434-92fbcf53809c.png

1.2 其它

4ad2ece8-e829-11ef-9434-92fbcf53809c.png

初始化c_flag時,不能直接對 c_cflag 成員進行賦值,而是需要通過“與”、“或”操作使用其中的某些選項,例如:

  • 設置硬件流控制

c_cflag |= CNEW_RTSCTS

無硬件流控制

c_cflag &= ~CNEW_RTSCTS

2. c_iflag:用于控制端口接收端的字符輸入處理

4ae9ddb8-e829-11ef-9434-92fbcf53809c.png

禁用軟件流控制是禁止上面的選項。

c_iflag &= ~(IXON | IXOFF | IXANY);

3. c_oflag:用于控制終端端口發(fā)送出去的字符處理

4b15f902-e829-11ef-9434-92fbcf53809c.png

因為現(xiàn)在終端的速度比以前快得多,所以大部分延時掩碼幾乎沒什么用途。

啟用輸出處理需要在 c_oflag 成員中啟用 OPOST 選項。

c_oflag |= OPOST;

使用原始輸出,就是禁用輸出處理,使數(shù)據(jù)能不經過處理過濾的完整地輸出到串口。當 OPOST 被禁止,c_oflag 其它選項也被忽略。

c_oflag &= ~OPOST;

4. c_lflag:用于控制控制終端的本地數(shù)據(jù)處理和工作模式

4b2a6888-e829-11ef-9434-92fbcf53809c.png

4.1 選擇規(guī)范模式

c_lflag |= (ICANON | ECHO | ECHOE);

4.2 選擇原始模式

c_lflag &= ~(ICANON | ECHO | ECHOE | ISIG);

5. c_cc:定義特殊控制特性

4b49c6d8-e829-11ef-9434-92fbcf53809c.png

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    STM8使用串口接收中斷時用不用清標志?

    請問大家 串口 使用接收中斷的模式。 接收完數(shù)據(jù)之后, 用不用清 標志什么的 ??? 我試過中斷中沒做清除標志
    發(fā)表于 05-08 06:10

    有關STM32串口收發(fā)標志的問題

    通過STM32的串口發(fā)數(shù)據(jù)是需要判斷發(fā)送是否完成,應該用while (USART_GetFlagStatus(USARTx, USART_FLAG_TXE) == RESET);還是while
    發(fā)表于 03-30 18:34

    怎么在標志寄存器中設置讀取?

    嘗試先做一些簡單的事情)。數(shù)據(jù)表表示,在讀取數(shù)據(jù)之前,我需要在標志寄存器中設置讀取,并且我不必設置
    發(fā)表于 10-22 07:06

    TXE狀態(tài)標志該位由硬件置

    TE標志要想使串口能夠發(fā)送數(shù)據(jù),必須置TE標志
    發(fā)表于 08-20 07:44

    用中斷接收串口數(shù)據(jù)為什么會存在串口接收數(shù)據(jù)錯亂的問題呢

    用中斷接收串口數(shù)據(jù)為什么會存在串口接收數(shù)據(jù)錯亂的問題呢?如何去解決?
    發(fā)表于 12-09 07:00

    STM32串口TXE和TC標志的相關資料推薦

    STM32 串口TXE和TC標志的理解我們發(fā)送數(shù)據(jù)的時候是先放在數(shù)據(jù)寄存器(TDR),然后在往移位寄存器里面丟,TXE就是用來判斷我們的
    發(fā)表于 02-22 07:11

    上位機如何設置串口9位數(shù)據(jù)位/TB8

    串口多機通訊,上位機如何設置串口9位數(shù)據(jù)位/TB8**常用的串口數(shù)據(jù)位
    發(fā)表于 02-23 07:28

    單片機硬件定時器5ms會導致串口接收錯亂

    120mhz單片機mpu6050的dmp很慢主板得接收另一塊板子發(fā)送的數(shù)據(jù)包(幀頭+數(shù)據(jù)+幀尾)主板需要定時讀取dmp進行pid計算控制直立硬件定時器5ms會導致串口接收錯亂??加長至
    發(fā)表于 08-02 10:48

    單片機復位標志設置與應用研究

    設置復位標志便于區(qū)分不同原因引發(fā)的復位,作為一種新技術被越來越多的新型單片機所采納。例如Philips公司的P87LPC700和 P89LPC900系列、Freescale公司(原Motorola半導體部)的MC68HC05
    發(fā)表于 04-28 11:39 ?22次下載

    STM32串口空閑中斷,中斷標志無法清除

    STM32串口空閑中斷,中斷標志無法清除
    發(fā)表于 12-02 17:36 ?31次下載
    STM32<b class='flag-5'>串口</b>空閑中斷,中斷<b class='flag-5'>標志</b><b class='flag-5'>位</b>無法清除

    問題筆記:STM32串口數(shù)據(jù)位與校驗

    問題:STM32移植freemodbus 后測試時,只能使用無校驗 ,設置奇偶校驗時無法與上位機通訊解決方法如果串口助手使用串口配置為:數(shù)據(jù)位8 停止
    發(fā)表于 12-24 18:44 ?19次下載
    問題筆記:STM32<b class='flag-5'>串口</b><b class='flag-5'>數(shù)據(jù)位</b>與校驗<b class='flag-5'>位</b>

    STM32 串口TXE和TC標志的理解

    STM32 串口TXE和TC標志的理解我們發(fā)送數(shù)據(jù)的時候是先放在數(shù)據(jù)寄存器(TDR),然后在往移位寄存器里面丟,TXE就是用來判斷我們的
    發(fā)表于 12-27 19:18 ?5次下載
    STM32 <b class='flag-5'>串口</b>TXE和TC<b class='flag-5'>標志</b><b class='flag-5'>位</b>的理解

    多機通訊設置TB8

    串口多機通訊,上位機如何設置串口9位數(shù)據(jù)位/TB8**常用的串口數(shù)據(jù)位
    發(fā)表于 12-29 19:31 ?1次下載
    多機通訊<b class='flag-5'>設置</b>TB8

    stm32串口接收中斷觸發(fā)原理

    配置串口接收中斷使能:在初始化串口時,需要設置相應的控制寄存器來使能串口接收中斷。這通??梢酝ㄟ^設置相應的
    發(fā)表于 01-17 15:42 ?9385次閱讀
    stm32<b class='flag-5'>串口</b>接收中斷觸發(fā)原理

    串口中斷需要清除標志嗎,串口中斷標志會自動清除嗎

    在電子通信領域,串口中斷作為一種重要的通信機制,廣泛應用于各種嵌入式系統(tǒng)和計算機設備中。串口中斷標志的管理,尤其是是否需要手動清除以及是否會自動清除,是理解和實現(xiàn)
    的頭像 發(fā)表于 01-29 14:59 ?3373次閱讀