你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 1111|回复: 3

[Lora] 【LoRa 模块免费送】LoRa 通讯之二:驱动设计

[复制链接]

21

主题

1052

回帖

442

蝴蝶豆

论坛元老

最后登录
2020-7-12
发表于 2018-4-26 15:11:57 | 显示全部楼层 |阅读模式
DreamOS-RT 采用了一种类似于 POSIX 和 Arduino 的驱动程序架构。
由于 LoRa 模块本体的工作模式以透传为主,因此模块的 DreamOS-RT 驱动程序直接继承基本串口驱动,使用的 POSIX 文件访问 API 接口。但由于模块配置的需要,在文件访问 API 和串口 termios ioctl 以外,在增加几个 LoRa ioctl 命令:
  1. #define IOCTL_LORA_BASE 0x4500
  2. #define IOCTL_LORA_SET_CONFIGURATION (IOCTL_LORA_BASE + 0xc0)
  3. #define IOCTL_LORA_GET_CONFIGURATION (IOCTL_LORA_BASE + 0xc1)
  4. #define IOCTL_LORA_GET_VERSION (IOCTL_LORA_BASE + 0xc3)
  5. #define IOCTL_LORA_RESET (IOCTL_LORA_BASE + 0xc4)
复制代码
注意上面列举的 ioctl 配置参数当中没有串口接口速率相关的配置内容。这部分配置与基类的 termios ioctl 重合,故省略。

考虑到 LoRa 模块的 I/O 配置要求,故采用这样的 open 函数:
  1. int open_lora(USART *usart, pin_t m1, pin_t m0, pin_t irq);
复制代码
传入的三个 GPIO 管脚,用来控制 M1、M0 两路控制,以及 AUX 中断信号。

<
回复

使用道具 举报

20

主题

1110

回帖

125

蝴蝶豆

论坛元老

最后登录
2019-5-4
发表于 2018-4-26 16:03:42 | 显示全部楼层
DreamOS-RT 又是啥东西?
回复 支持 反对

使用道具 举报

21

主题

1052

回帖

442

蝴蝶豆

论坛元老

最后登录
2020-7-12
 楼主| 发表于 2018-4-26 17:14:42 | 显示全部楼层
anobodykey 发表于 2018-4-26 16:03
DreamOS-RT 又是啥东西?

这个是我已经用了好几年的开发框架,只适用于 GCC + newlib。还没有到 RTOS 的水准,但做一个 RTOS 是目标。驱动程序架构之前一直在变,但近两个版本逐渐稳定下来了。
回复 支持 反对

使用道具 举报

29

主题

2129

回帖

127

蝴蝶豆

论坛元老

最后登录
2020-12-7
发表于 2018-7-14 12:30:35 | 显示全部楼层
看你们玩的这么hapapy,我也想要
回复 支持 反对

使用道具 举报

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版