久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8778|回復: 0
打印 上一主題 下一主題
收起左側

(轉)關于stm32串口三種發送方式USART_IT_TXE/USART_IT_TC/DMA的理解

[復制鏈接]
跳轉到指定樓層
樓主
ID:162388 發表于 2017-1-19 11:22 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
第一種 USART_IT_TXE(發送寄存器空中斷) 顧名思義,一旦寄存器空了 就會中斷一次,為了防止一直進該中斷或者不斷往該寄存器裝載數據,
在不裝載數據時,一般需要做如下操作:
1.初始化的時候,屏蔽該中斷
USART_ITConfig(USARTx, USART_IT_TXE, DISABLE);
2.要發送數據前,使能該中斷
USART_ITConfig(USARTx, USART_IT_TXE, ENABLE);
3.發送數據結束后,屏蔽該中斷
USART_ITConfig(USARTx, USART_IT_TXE, DISABLE);
第二種 USART_IT_TC(發送完成中斷) 意為:發送寄存器發送完成之后,會進一次中斷,它不像發送寄存器空中斷,這時填入下一個數據,等到發送完成后再一次進入中斷。這里需要注意的一點是,為了防止每次發生的第一個數據丟失,需要事先將該標志清零,USART_ClearFlag(USART2,USART_FLAG_TC)。
第三種方式采用DMA通道發送,具體的需要日后介紹。
另外不管是哪種發送方式,需要一提的是倘若用于485通信時,一定要檢測USART_FLAG_TC,即進入一次發送完成標志,才可以切換接收模式,否則會造成最后一個字節未發出。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 五月婷婷亚洲 | 亚洲精品美女视频 | 日韩国产三区 | 日韩欧美一区二区三区免费观看 | 午夜精品久久久 | 日韩五月天 | 精品久久久久久久久久久久久久久久久 | 最新国产精品视频 | 精品二三区 | 欧美片网站免费 | 成人欧美一区二区三区黑人孕妇 | 精品欧美激情在线观看 | 成年人在线观看 | 久久免费高清视频 | 黄色中文字幕 | 成年人黄色免费视频 | 精品久久久久久中文字幕 | 亚洲精品视| 成人欧美一区二区三区在线播放 | 日韩在线不卡视频 | 在线视频a | 国产中文原创 | 99国产精品久久久久老师 | 日本不卡一区二区三区 | 九九九久久国产免费 | 欧美a区 | 亚洲免费在线视频 | 国产免费一区二区三区 | 69精品久久久久久 | 欧美日韩一区二区三区四区 | 亚洲区在线 | 一区二区三区在线免费观看视频 | 91高清在线观看 | www.久草 | www.精品一区 | 国产高清一区二区三区 | 国产视频1区 | 日韩在线视频免费观看 | 天天天堂 | 91在线网站 | 亚洲成人av一区二区 |