新建工程,调试器选择 QEMU,系列为STM32F4带有模拟器。
编译后进入调试模式:
dev对象 就是一个结构体,包含父类(parent),enum枚举变量,普通变量,函数指针等。
对象的链表:
serial对象结构:父类是rt_device,父类的父类是rt_object。
serial对象在父类的基础上,增加了ops结构、config(配置)结构、serial_rx、serial_tx。
ops结构包括5个函数指针:
串口发送1字节的调用层级:
函数所在的 .c源程序:
drv_usart.c(stm32_putc())……STM32的HAL库?
->serial.c(_serial_poll_tx()->rt_serial_write())……RT-Thread设备驱动?
->device.c(rt_device_write())……RT-Thread设备框架?
->kservice.c(rt_kprint())……RT-Thread内核管理?
->main.c(rt_kprintf())