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

STM32+LoRa硬件设计中的一个小“坑”

[复制链接]
freeelectron 发布时间:2018-8-22 17:15
本帖最后由 freeelectron 于 2018-8-22 17:26 编辑

背景:前一阵在支持客户的一个项目,据他们自己说是主要搞嵌入式linux的,现在需要用到LoRa,用stm32做了LoRa的板子,在官方的驱动的基础上,只改了GPIO,但是stm32与LoRa就是一直有问题,让他们用我们的试了试,是没问题的,之后看了他们的原理图,发现LoRa芯片的几个中断GPIO与stm32的连接上有问题。

LoRa除了需要SPi通讯外,还需要6个GPIO配置成外部中断,来产生接收中断,发送超时中断,发送完成中断,cad中断等等,这几个外部中断非常非常非常重要,如下图:
3.png

STM32的每一个GPIO都可以配置成外部中断,但是对于初次接触的人,或者说是硬件设计的人来说,这里就需要注意了:

PA0~PG0 对应的是外部中断0
PA1~PG1 对应的是外部中断1
PA2~PG2 对应的是外部中断2
PA3~PG3 对应的是外部中断3
PA4~PG4 对应的是外部中断4
……
PA15~PG15 对应的是外部中断15

以外部中断0为例来说:同一时刻PA0~PG0只能有一个配置为外部中断。换句话说,STM32只能同时支持16个外部中断。(题外话,LoRa需要六个外部中断是见过的比较多的了,应用需要的外部中断大于16个,可能就要另辟蹊径了


可以看到官方的设计,
DIO5<->PA15
DIO4<->PB3
DIO3<->PB4
DIO2<->PB9
DIO1<->PC13
DIO0<->PB11
如下图:
1.png 2.png

附件,semtech官方的设计原理图: SensorNode-schematic.pdf (1.93 MB, 下载次数: 185)
收藏 3 评论10 发布时间:2018-8-22 17:15

举报

10个回答
zero99 回答时间:2018-8-22 17:53:10
大佬大佬,支持下
machiato 回答时间:2018-8-22 17:58:44
没有那么多中断吧  5~9共用一个中断线 10~15共用一个中断线
freeelectron 回答时间:2018-8-23 09:08:09
machiato 发表于 2018-8-22 17:58
没有那么多中断吧  5~9共用一个中断线 10~15共用一个中断线

5-9 共用一个中断函数  10-15也是共用一个中断函数  
stm1024 回答时间:2018-8-23 14:01:24
中断源最多只有16个(line)
1,2,3,4可独立配置中断函数
5-9共用一个中断函数
10-15共用一个中断函数
兄弟连 回答时间:2018-9-6 09:03:11
标记
sujido 回答时间:2018-9-26 21:22:03
谢谢
mmuuss586 回答时间:2018-12-5 15:22:33

用的1276不错;
mffthan 回答时间:2019-5-2 20:59:38
谢谢。回头试试
淡々とS★Y 回答时间:2020-2-29 16:02:14
谢谢楼主
12下一页

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

相似技术帖

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