筆記
2023年12月9日10:19:00
串列埠配置在drivers\rt_hw_uart.c->rt_hw_uart_init->rt_hw_serial_register()
這裡可以設定串列埠的工作模式,中斷接收還有dma傳送.
具體設定在rt_serial_init()函式裡
分析下串列埠初始化**是怎麼被呼叫的
首先main()->
->hardware_init()
->assert_init()
->rt_hw_uart_init() //硬體在這裡被初始化了,但未使能
->rt_hw_serial_register()
->rt_device_register();
->rt_object_init()
->rt_device_open(_console_device, rt_device_oflag_rdwr);
->if (!(dev->flag & rt_device_flag_activated))
->
result = dev->init(dev); //這個init在rt_hw_serial_register()裡繫結好了就是對應rt_serial_init
->rt_serial_init() //使能串列埠
分析下串列埠是怎麼把資料傳送出去的:
rt_kprintf()->
->rt_device_write(_console_device, 0, rt_log_buf, length);
->write = dev->write;
->if (write != rt_null)
->
這裡的wirte就是rt_serial_write
rt_serial_write()->
->/* polling mode */
->if (dev->flag & rt_device_flag_stream)
->
void usart_senddata(usart_typedef* usartx, uint16_t data)
RT Thread 串列埠裝置驅動
檔名 serial.c 驅動介面 1.註冊裝置 2.初始化裝置 3.開啟裝置 4.關閉裝置 5.讀操作 6.寫操作 1.註冊裝置 rt err t rt hw serial register rt device t device,const char name,rt uint32 t flag,st...
串列埠驅動流程分析
tty驅動程式架構 tty概念解析 tty架構分析 1.tty概念解析 在linux系統中,終端是一類字元型裝置,它包括多種型別,通常使用tty來簡稱各種型別的終端裝置。1.1串列埠終端 dev ttys 串列埠終端是使用計算機串列埠連線的終端裝置。linux把每個串列埠都看作是乙個字元裝置。這些序...
Linux串列埠驅動分析read
串列埠read函式分析 當應用程式呼叫read系統呼叫時,會呼叫tty fops中的tty read 接下來分析tty read函式 其中最重要的就是ld ops read tty,file,buf,count 也就是呼叫線路規程中read函式 static ssize t tty read str...