请告诉我如何配置 GPIO(P20.7)。 作为具有下降沿中断的输入?
在用户手册中,我只能在 SCU 章节中找到 ERU。 但在EVAL_BDPS_DRIVER库中,GPIO(P20.7) 如果没有定义"......",那么 SCU 的 ERU 不支持它吗?否则,还有其他方法可以满足我的要求吗?
共2条
1/1 1 跳转至页
TC387如何配置GPIO,作为具有下降沿中断的输入?

2楼
可以使用EVAL_BDPS_DRIVER库中的ERU(外部事件单元)来配置GPIO P20.7为具有下降沿中断的输入。以下是一些步骤可以配置GPIO P20.7:
1. 打开ERU:
```c
SCU_GENERAL->PASSWD = 0x000000C0; //解锁SCU模块
// 使能ERU模块
SCU_CLK->CLKSET.bit.ERU = 1;
SCU_GENERAL->PASSWD = 0x000000C3; //锁定SCU模块
```
2. 配置GPIO P20.7为输入模式:
```c
/* 将P20.7设置为输入模式 */
PORT20->IOCR0.bit.PC7 = 0x08; // 位7,6设为输入模式
/* 激活P20.7的输入电阻 */
PORT20->PDISC.bit.P7 = 0;
```
3. 配置ERU通道和相应的IO源:
```c
ERU0->EXISELR.bit.EXS6 = 0x0F; // 选择P20.7作为ERU通道的IO源
ERU0->EXICON0.bit.CE0 = 1; // 配置ERU通道0为下降沿中断触发器
```
4. 配置ERU0的中断优先级:
```c
VIC.PRL[1].ISPR[0].ISPA2 = 0x01; //ERU0优先级设置为0x01
```
这样,就可以在ERU0的中断处理函数中处理GPIO P20.7的下降沿中断了。最后,如果发现SCU的ERU不支持GPIO(P20.7),可以考虑使用其他的外部中断引脚。
共2条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
基于MSPM0L1306的MODBUS-RTU协议通讯实验被打赏50分 | |
每周了解几个硬件知识+485硬件知识分享被打赏10分 | |
【换取手持示波器】树莓派PICOW网页烟花被打赏18分 | |
【换取手持示波器】树莓派PICO逻辑分析仪被打赏16分 | |
【分享评测,赢取加热台】教你五分钟本地部署蒸馏版本的DeepSeekR1-7B被打赏12分 | |
【换取手持示波器】蓝牙音箱更换电池被打赏8分 | |
【换取手持示波器】鼠标更换微动开关被打赏10分 | |
【我要开发板】4.传感器移植被打赏50分 | |
【换取手持数字示波器】RISC-VGCC使用-fno-omit-frame-pointer编译选项实现栈回溯被打赏29分 | |
【分享评测,赢取加热台】+开关电源简述被打赏7分 |