从零开始学习PX4源码14(board-字符设备串口)
目录
文章目录
- 目录
- 摘要
- 1.字符设备简介
- 2.定义自己的板层串口
- 3.串口字符设备注册初始化过程
-
- 3.1 程序入口函数:__start
- 3.2 执行早期的串口初始化arm_earlyserialinit()
- 3.3 启动nuttx初始化相关nx_start()
- 3.4 初始化硬件设施 up_initialize();
- 3.5 注册串口初始化 arm_serialinit()
- 4.总结
摘要
本节主要记录PX4中的串口是如何注册的,如何定义自己的串口,如何使用这些串口等过程。欢迎批评指正!!!往下看之前可以先看网上的一篇博客写的不错深入理解NuttX下PX4串口配置:ttyS设备编号与USART&UART对应关系解析
1.字符设备简介
PX4采用NUTTX操作系统,这个系统类似linux系统,因此串口的注册就是linux字符设备的注册过程。
在PX4飞行管理单元(Flight Management Unit, FMU)固件中,字符设备的串口注册过程涉及到初始化硬件抽象层(Hardware Abstraction Layer, HAL),并配置和注册UART设备以便操作系统能够识别和使用它们。
字符设备是 nuttx驱动中最基本的一类设备驱动,字符设备就是一个一个字节,按照字节流进行读写操作的设备,读写数据是分先后顺序的。比如我们最常见的点灯、按键、 IIC、 SPI,UART、LCD 等等