本资源提供了一个基于STM32微控制器和OLED显示屏的三级菜单系统框架,适用于嵌入式项目开发。包含详细代码与配置说明。
在主函数`int main(void)`中执行了以下操作:
1. 调用了`delay_init()`以初始化延时功能。
2. 通过调用`JTAG_Set(JTAG_SWD_DISABLE);`禁用了JTAG接口的SWD模式,然后启用SWD模式:`JTAG_Set(SWD_ENABLE);`
3. 设置了NVIC中断分组为级别2,该设置包括两个抢占优先级位和两位响应优先级。
4. 调用`uart_init(9600)`初始化串口通信的波特率为9600bps。
5. `LED_Init()`函数用于初始化与LED连接的相关硬件接口;
6. 执行了OLED屏幕的初始化:`OLED_Init()`;
7. 对NRF24L01模块进行初始化:`NRF24L01_Init();`
8. 调用`Adc_Init()`来启动ADC功能。
9. `KEY_EXTIX_Init()`用于配置外部按键中断;
10. 通过调用`TIM3_Int_Init(9999, 7199);`初始化定时器,设置计数频率为每秒1万次(即10Khz),当计数值达到5千时代表时间过去了半秒钟。
11. 最后执行函数`Detection_Hardware_Drive()`用于检测并判断硬件的状态。