EFR32BG22 FLASH模拟EEPROM

测试可行
FLASH_USERDATA空间有1K字节大小可供我们使用,可写入地址可以查看数据手册可知为0x0fe00000。在这里插入图片描述

EFR32BG22是一款基于Silicon Labs (原EmberZigbee) 的低功耗无线MCU,它支持GPIO (通用输入输出) 功能,包括GPIO中断。GPIO中断用于处理当GPIO线路上发生特定事件(如电平变化、定时到达等)时,系统需要执行的自定义操作。 要在EFR32BG22上添加GPIO中断,你需要按照以下步骤进行: 1. **配置GPIO**: - 首先,在设备树(DT)或代码中配置GPIO,设置其方向为输入或输出,并启用中断功能。 ```c GPIO_InitTypeDef gpio_config; gpio_config.Pin = GPIO_PIN_X; // 替换X为实际GPIO引脚 gpio_config.Mode = GPIO_MODE_IT_FALLING; // 或者GPIO_MODE_IT_RISING,根据需求选择上升沿或下降沿触发 GPIO_InitStructure.GPIO_Speed = GPIO_SPEED_FREQ_LOW; // 设置速度 GPIO_Init(GPIO_PORT_X, &gpio_config); // 替换X为实际GPIO端口 ``` 2. **连接中断服务函数**: - 在CMSIS库提供的`NVIC` API中,注册你的中断服务函数(ISR),该函数会在GPIO中断被触发时被调用。 ```c void EXTI0_IRQHandler(void) { // 在这里处理中断事件 } NVIC_EnableIRQ(EXTI0_IRQn); // 替换EXTI0为你的GPIO中断对应的中断ID ``` 3. **开启中断**: - 启动并使能相应的中断源。 ```c EXTI_ClearITPendingBit(EXTI_Line0); // 清除中断标志 EXTI_GenerateSWInterrupt(EXTI_Line0); // 触发中断 ``` 4. **处理中断后的操作**: - 中断服务函数结束后,记得更新中断标志和执行必要的后续任务,比如发送数据、更新状态机等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值