StdPeriphDriver 问题

使用的开发板是贵公司的CH582M那个开发板。

开发环境是MounRiver,版本如下:

MounRiver-版本.png

安装的情况如下:

MounRiver-安装详细.png

项目也是按照导航一步一步的建立的。

现在存在的问题,我有3个GPIOB端口,其中2个用到了中断,定义如下图中的红色横线标识处。如果是PB7/PB8都没有问题,

但是如果是PB17/PB18,只要定义值超过了short的,就会出现下面的编译警告,而且也得不到正确的中断结果,现象就是外部中断输入信号了没有反应。

SDK警告.png

中断的函数定义如下,其中指示编译错误的就是如下图红色线的标识位置,但是最终的指向都是

StdPeriphDriver/inc/CH58x_gpio.h 

这个文件的224行的宏定义。

SDK警告-2.png


麻烦技术人员给看看。是我用错了?

PB17/PB18是没有GPIO中断功能的,PA、PB组各有16各脚,即编号PA/B0~15这几个脚和相关映射脚有GPIO中断功能。

CH582的PB8、PB9建议不要用作外部GPIO,会受PB22、PB23的影响。如果GPIO中断不够用,可以将这两个脚上的中断映射到PB22 PB23上使用。映射寄存器配置:R16_PIN_ALTERNATE |= RB_PIN_INTX;


理解了。


关于GPIO的外部中断,还有什么需要注意的?

文档里面描述的很少。


GPIO中断的应用的注意点只有我上面提到的PB8、PB9的,其他的正常应用即可,,。


只有登录才能回复,可以选择微信账号登录