mpu6000.cpp
2017-04-07 22:59:31 0 举报
AI智能生成
Pixhawk的SPI设备驱动
作者其他创作
大纲/内容
stm32_start.c
初始化板上资源
stm32_boardinitialize();
初始化板上资源
stm32_boardinitialize();
board.h
Pixhawk飞控板的硬件资源分配
Pixhawk飞控板的硬件资源分配
px4fmu2_init.c
飞控板具体的早期启动代码;
配置SPI接口
stm32_spiinitialize();
配置基于SPI的设备
px4_spibus_initialize();
飞控板具体的早期启动代码;
配置SPI接口
stm32_spiinitialize();
配置基于SPI的设备
px4_spibus_initialize();
px4_micro_hal.h
px4_spibus_initialize() = up_spiinitialize()
px4_arch_xxx与stm32_xxx的对应
px4_spibus_initialize() = up_spiinitialize()
px4_arch_xxx与stm32_xxx的对应
px4fmu_spi.c
SPI设备的配置(片选)
SPI总线的选择 stm32_spi1_select();
SPI设备的配置(片选)
SPI总线的选择 stm32_spi1_select();
board_config.h
Pixhawk飞控板硬件端口配置
Pixhawk飞控板硬件端口配置
spi.h
SPI操作的结构体 spi_ops_s
以及成员函数的使用 (d)->ops->xxx()
初始化选定的SPI端口
up_spiinitialize()
SPI操作的结构体 spi_ops_s
以及成员函数的使用 (d)->ops->xxx()
初始化选定的SPI端口
up_spiinitialize()
stm32_spi.c
实例化SPI各总线 struct spi_ops_s g_sp1iops
以及各种SPI操作的功能实现;
初始化SPI端口 up_spiinitialize();
将所选的SPI端口初始化为其默认状态 spi_portinitialize()
实例化SPI各总线 struct spi_ops_s g_sp1iops
以及各种SPI操作的功能实现;
初始化SPI端口 up_spiinitialize();
将所选的SPI端口初始化为其默认状态 spi_portinitialize()
spi.cpp
通过SPI总线连接的设备的基类SPI::SPI(){
SPI驱动ID} ;
SPI设备的初始化 SPI::init(){
// 初始化基类,创建设备节点
ret = CDev::init(); }
通过SPI总线连接的设备的基类SPI::SPI(){
SPI驱动ID} ;
SPI设备的初始化 SPI::init(){
// 初始化基类,创建设备节点
ret = CDev::init(); }
cdev.cpp
字符设备基类,初始化基类
CDev::init(){
// 注册irq中断
Device::init();
// 注册传感器
register_driver(); }
设备文件操作 struct file_operations CDev::fops
注册了字符设备后就可以使用 read、write、open等文件操作;
注册设备名 register_class_devname();
字符设备基类,初始化基类
CDev::init(){
// 注册irq中断
Device::init();
// 注册传感器
register_driver(); }
设备文件操作 struct file_operations CDev::fops
注册了字符设备后就可以使用 read、write、open等文件操作;
注册设备名 register_class_devname();
fs.h
文件系统的操作 struct file_operations
这种结构体由设备在系统注册时提供;
NuttX伪文件系统的索引节点内容 struct indoe
文件系统的操作 struct file_operations
这种结构体由设备在系统注册时提供;
NuttX伪文件系统的索引节点内容 struct indoe
device_nuttx.cpp
设备框架的基本程序基类Device::Device(){
设备ID }
设备初始化 Device::init() ;
注册中断 register_interrupt()
设备框架的基本程序基类Device::Device(){
设备ID }
设备初始化 Device::init() ;
注册中断 register_interrupt()
fs_registerdriver.c
注册一个字符驱动程序inode伪文件系统
注册一个字符驱动程序inode伪文件系统
作为文件设备的传感器,操作步骤:
open -> ioctl -> read -> close
open -> ioctl -> read -> close
By Fantasy
收藏
0 条评论
下一页