使用按位与操作配置 EINT1 引脚为上升沿触发模式
时间: 2024-02-12 16:02:22 浏览: 31
以下是使用按位与操作配置 EINT1 引脚为上升沿触发模式的代码:
```
// 配置EINT1引脚上升沿触发
EXTMODE &= ~(1 << 1); // 将EXTMODE寄存器的第1位清零
EXTPOLAR |= (1 << 1); // 将EXTPOLAR寄存器的第1位置为1
```
其中,`EXTMODE` 寄存器的第 1 位需要清零,以设置为上升沿触发模式;`EXTPOLAR` 寄存器的第 1 位需要置为 1,以设置为上升沿触发模式。
按位与操作可以将某个寄存器中的某些位清零,而保留其他位不变。在这里,我们使用了 `~(1 << 1)` 的结果来清零 `EXTMODE` 寄存器的第 1 位,因为 `1 << 1` 的二进制表示为 `00000010`,按位取反后的结果为 `11111101`,这样和 `EXTMODE` 寄存器按位与的结果就能将第 1 位清零,而其他位不受影响。同理,我们使用了 `(1 << 1)` 的结果来将 `EXTPOLAR` 寄存器的第 1 位置为 1,因为 `1 << 1` 的二进制表示为 `00000010`,这样和 `EXTPOLAR` 寄存器按位或的结果就能将第 1 位置为 1,而其他位不受影响。
相关问题
配置 EINT1 引脚上升沿触发模式
配置 EINT1 引脚为上升沿触发模式时,需要将 `EXTPOLAR` 寄存器的相应位设置为 1,而 `EXTMODE` 寄存器的相应位需要设置为 0。
以下是配置 EINT1 引脚为上升沿触发模式的代码:
```
// 配置EINT1引脚上升沿触发
EXTMODE &= ~(1 << 1);
EXTPOLAR |= (1 << 1);
```
其中,`EXTMODE` 寄存器的第 1 位需要清零,以设置为上升沿触发模式;`EXTPOLAR` 寄存器的第 1 位需要置为 1,以设置为上升沿触发模式。
初始化EINT1为下降沿中断的代码
以下是在 LPC1768 微控制器上初始化 EINT1 为下降沿中断的代码:
```
// 使能外部中断
LPC_SC->EXTINT |= (1 << 1);
// 设置EINT1引脚为GPIO口
LPC_PINCON->PINSEL4 &= ~(3 << 20);
// 配置EINT1引脚下降沿触发
LPC_GPIOINT->IO2IntEnF |= (1 << 11);
// 设置中断优先级,这里设置为最高优先级
NVIC_SetPriority(EINT1_IRQn, 0);
// 使能EINT1中断
NVIC_EnableIRQ(EINT1_IRQn);
```
其中,EINT1 引脚对应 LPC1768 的 P2.11 引脚,代码中使用了 LPCOpen 库中的宏定义,如 `LPC_SC` 代表系统控制寄存器,`LPC_PINCON` 代表引脚控制寄存器,`LPC_GPIOINT` 代表 GPIO 中断控制寄存器,`NVIC_SetPriority` 和 `NVIC_EnableIRQ` 分别用于设置中断优先级和使能中断。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)