|
官方提供的BSP例程是通过按键轮流执行各个demo模块,操作起来不方便。本实验是通过触摸菜单来随意选择demo模块,操作起来就方便多了。 在BSP例程中,获得触摸坐标值是通过触摸中断标志和结构体返回的,对应的代码如下: if (TouchDetected == SET) //触摸信号处理 { TouchDetected = RESET; if (BSP_TS_Get_MultiTouchState(0, &TsMultipleState) != BSP_ERROR_NONE) { Error_Handler(); } tou_x = TsMultipleState.TouchX[0]; tou_y = TsMultipleState.TouchY[0]; 获得当次触摸坐标后,就可以通过菜单项显示的位置来确定当前触摸的菜单项,代码如下: now_option = (tou_y -50)/24; //根据触摸位置确定菜单选项 解决了触摸菜单项的选择之后,启用对应的demo就简单了,我是直接用switch语句,直观方便: switch(now_option){ case 1: Led_demo(); break; case 2: Touchscreen_demo(); break; case 3: AudioPlay_demo(); break; case 4: AudioRecord_demo(); break; case 5: MotionSensor_demo(); break; case 6: SD_demo(); break; case 7: OSPI_NOR_demo(); } 这是对应的菜单选项:
这是执行的界面:
这是完整的代码截图:
|
STM32L562DK探索板——重写Led闪烁demo
STM32L562DK探索板——简单的显示变量函数
STM32F746G-DISCO移植lvgl9.0性能基准测试
【福利三:逢7发帖赢大礼】使用MPU6050模块、img_dsc、img_btn机制实现一些简单有趣的动画效果
STM32L562DK探索板——建立演示菜单
STM32L562DK探索板——字符显示功能的剖析
【福利三:逢7发帖赢大礼】使用arc弧形拉条控件控制PWM舵机及使用SPI3接口操作NRF24L01模块进行无线通信
STM32L562DK探索板——继续测试Audio
经验分享 | STM32 IAP应用时的跳转注意事项
请教下STM32N6570 怎么把分辨率改成320x240并可以全屏显示
微信公众号
手机版