在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

RTT設備驅動框架分析-串口調用流程

冬至子 ? 來源:chejia12 ? 作者:chejia12 ? 2023-10-26 17:07 ? 次閱讀

應用層函數調用流程分析以-串口為例

1.rt_device_find調用流程

RTT內部有一個全局變量數組rt_object_container數組的數量就是 rt_object_info_type 內核對象的種類,其中包含一個RT_USING_DEVICE (設備的數據類型),數組內部的每一個變量包含一個鏈表,鏈表內部就構造了一個設備鏈表,rt_device_find函數就是在這個數組內部根據類型找到鏈表,然后在鏈表內部根據設備名字找到rt_device_t設備

1.jpg

RTT內核對象存儲結構,
struct rt_object_information
{
enum rt_object_class_type type; / < object class type 比如線程類型,外部設備類型,信號量類型 /
rt_list_t object_list; /
< object list每個類型的設備形成為一個鏈表 */
rt_size_t object_size; /
*< object size 每個類型的鏈表item數量 */
};

2.設備打開rt_device_open

rt_device_open 首先是調用init函數,然后調用open函數
init 內部再次調用串口的configure函數
open內部根據flag的類型,分別申請發送接收緩存rt_malloc,配置發送接收硬件serial->ops->control,如果配置的dma,則使用serial->ops->control配置打開dma。

1.jpg

3.rt_device_set_rx_indicate 和rt_device_set_tx_complete函數調用流程
這里的2個函數都是直接設置rt_device的rx_indicate 和 tx_indicate

1.jpg

4.rt_device_write 調用流程分析

rt_device_write 內部調用device->write 函數也就是 rt_serial_write,內部根據配置串口的發送方式發送數據,是阻塞是dma還是中斷,阻塞和dma都是將數據放在緩沖區內部,緩沖區在中斷和dma部還有臨界區的保護

1.jpg

5.rt_device_read 調用流程分析

rt_device_read內部調用device->read 函數也就是 rt_serial_read,內部根據配置串口的接收方式接收數據,是阻塞接收是dma還是中斷接收,阻塞和dma都是將數據放在緩沖區內部,緩沖區在中斷和dma部還有臨界區的保護

1.jpg

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 接收機
    +關注

    關注

    8

    文章

    1202

    瀏覽量

    54072
  • dma
    dma
    +關注

    關注

    3

    文章

    569

    瀏覽量

    101999
  • 緩存器
    +關注

    關注

    0

    文章

    63

    瀏覽量

    11805
  • 串口中斷
    +關注

    關注

    0

    文章

    67

    瀏覽量

    14177
  • RTThread
    +關注

    關注

    8

    文章

    132

    瀏覽量

    41422
收藏 人收藏

    評論

    相關推薦

    串口驅動配置流程及電路圖設計

    串口驅動跟其他外設的驅動配置流程差不多,大概分為如下幾步: (1)查看電路圖,配置相應的gpio功能引腳 (2)配置串口控制器的相應寄存
    的頭像 發表于 10-07 17:33 ?6287次閱讀
    <b class='flag-5'>串口</b><b class='flag-5'>驅動</b>配置<b class='flag-5'>流程</b>及電路圖設計

    OpenHarmony HDF 驅動框架介紹和驅動加載過程分析

    ,OpenHarmony 系統 HDF 驅動框架支持多種驅動加載方式:支持驅動動態加載和靜態加載,解除驅動代碼和
    發表于 08-31 15:51

    字符設備驅動 —— 字符設備驅動框架

    1、概述:linux中一切皆文件,設備也如此,并且以操作文件即文件IO的方式訪問設備。  應用程序只能通過庫函數中的系統調用來操作硬件,對于每個系統調用
    發表于 10-19 17:08

    分析rt-thread的I2C設備驅動框架

    簡要上一篇分析RTT的PIN驅動,得到了很多網友的認可,很開心。很多人跟我反映寫一些u***,wlan等框架,這個一步一步來,從淺到深。這一篇文章我們來
    發表于 01-12 06:23

    RT-Thread串口的硬件工作模式有哪幾種呢?怎樣去使用

    使用說明串口流程分析分為兩部分,一部分是串口驅動,另一部分是串口
    發表于 03-11 15:03

    解讀rtt的c的面向對象的對象創建及其啟動初始化流程

    rtt設備框架對接層。此層是拿rtt創建好的類來創建子類設備對象或者自己派生出新類創建子類設備
    發表于 07-05 11:01

    將硬件I2C嫁接到RTT原生的模擬I2C驅動框架步驟分享

    1、將硬件I2C巧妙地將嫁接到RTT原生的模擬I2C驅動框架剛開始接觸RTTI2C驅動框架,說實在的,感覺有點道理。
    發表于 07-07 16:29

    詳解IO設備管理之父類調用子類方法的過程

    驅動層都實現了注冊給父類的方法。這些方法是IO設備模型框架的血肉!2.2.1 先看對象創建流程調用設備
    發表于 10-09 15:18

    幫助你看懂并理解rtt官方的IO設備模型框架

    ——finsh線程分析——可以參考理解子類方法是如何被父類調用的。tips:(1)給BSP新增設備驅動對接到rtt
    發表于 10-09 15:30

    為什么rtt的音頻框架recorder的相關源碼需要對pipe設備操作加中斷保護呢?

    請教一個rtt audio驅動框架的問題:1)對于recorder,為什么rtt的源碼對pipe的操作全都增加了rt_hw_interrupt_disable
    發表于 03-14 10:30

    rt-thread SDIO驅動框架分析(SD卡flash驅動\SD Nand flash驅動

    文章目錄rt-thread SDIO驅動框架分析之SD卡驅動1. 前言2. SDIO通用驅動框架
    發表于 04-04 16:26

    RT-Thread (2) RTT SPI設備驅動流程 || LWIP + ENC28J60

    系列文章目錄RT-Thread (1) 添加外部內存到內存管理RT-Thread (2) RTT SPI設備驅動流程 || LWIP + ENC28J60目錄0 概述0.0 參考資料0
    發表于 11-19 14:21 ?15次下載
    RT-Thread (2) <b class='flag-5'>RTT</b> SPI<b class='flag-5'>設備</b><b class='flag-5'>驅動</b><b class='flag-5'>流程</b> || LWIP + ENC28J60

    《rt-thread驅動框架分析》-i2c驅動

    上一篇分析RTT的PIN驅動,得到了很多網友的認可,很開心。很多人跟我反映寫一些usb,wlan等框架,這個一步一步來,從淺到深。
    發表于 01-26 17:03 ?0次下載
    《rt-thread<b class='flag-5'>驅動</b><b class='flag-5'>框架</b><b class='flag-5'>分析</b>》-i2c<b class='flag-5'>驅動</b>

    基于IAR搭建RA MCU串口RTT Viewer打印(上)

    基于IAR搭建RA MCU串口RTT Viewer打印
    的頭像 發表于 08-14 09:49 ?1159次閱讀
    基于IAR搭建RA MCU<b class='flag-5'>串口</b>與<b class='flag-5'>RTT</b> Viewer打印(上)

    基于IAR搭建RA MCU串口RTT Viewer打印(下)

    基于IAR搭建RA MCU串口RTT Viewer打印
    的頭像 發表于 08-14 09:50 ?1235次閱讀
    基于IAR搭建RA MCU<b class='flag-5'>串口</b>與<b class='flag-5'>RTT</b> Viewer打印(下)
    主站蜘蛛池模板: 国产一级大片免费看 | 日本人zzzwww| 天天看a| 99久久精品免费精品国产 | 井野雏田小樱天天被调教 | 美女视频黄的免费视频网页 | 手机在线黄色网址 | 一本大道一卡二卡四卡 | 人人爽人人爱 | 日韩一级一欧美一级国产 | bbbb毛片免费看 | 女同性大尺度床戏视频 | 91在线国内在线播放大神 | 欧美色综合网站 | 美女扒开尿口给男人桶爽视频 | 色日韩在线 | 夜夜春宵翁熄性放纵30 | 521色香蕉网在线观看免费 | 免费的黄视频 | 日本高清视频wwww色 | 男人性天堂| 欧美一区二区三区免费高 | 欧美黄色性 | 日本爱爱片 | 五月天婷婷一区二区三区久久 | 天堂网| 天天干夜夜爱 | 色妞妞网 | 天天好b| 一级特黄性色生活片一区二区 | 在线观看黄a | 免费爱做网站在线看 | semimi亚洲综合在线观看 | 色之综合网 | 久久99热不卡精品免费观看 | 色老成人精品视频在线观看 | 奇米影视四色7777 | 黄视频在线观看免费 | 日韩欧美不卡片 | 日本亚洲高清乱码中文在线观看 | 国产精品香蕉成人网在线观看 |