当前位置: 首页> 娱乐> 影视 > h5长图用什么软件做_上海中高风险地区_网站优化入门免费教程_青岛网站seo服务

h5长图用什么软件做_上海中高风险地区_网站优化入门免费教程_青岛网站seo服务

时间:2025/7/12 4:33:30来源:https://blog.csdn.net/qq_57484399/article/details/144217740 浏览次数:0次
h5长图用什么软件做_上海中高风险地区_网站优化入门免费教程_青岛网站seo服务

按键中断+OLED显示计数值

本项目工程代码:

点击下载

1.接线图

我们些许修改了一下触发方式, 使用PB1, 进行触发按键

image-20241203142103725

2.Hal库功能

① 选择STM32F103C8T6芯片

② 锁定PB1引脚, 配置成GPIO_EXTI1模式

image-20241203145658885

③设置成下降沿检测, 并设置用户标签为SensorCount

image-20241203145837862

④使能PB1中断

image-20241203150219175

3. Hal库工程配置

点击跳转

个性化:

工程名字: Key_Exit_oledShow

4.keil5工程编译烧录配置

点击跳转查看

5.编写代码

(1)key中断代码编写

1.我们首先锁定void EXTI1_IRQHandler(void)函数

2.想要跳转, 需要我们先编译一遍工程

image-20241203154722114

3.进入启动函数, 找到中断向量表, 然后f12进入中断1, 后续我们在这里操作

image-20241203154844246

4.我们定义一个按键计数变量,每次按下按键, 进入中断后, 变量值加1

uint16_t hhRetCount = 0;

image-20241203155528982

5.当中断触发时, 我们要判断一下,是否是PB1,触发的中断, 所以需要判断一下标志位

if(__HAL_GPIO_EXTI_GET_FLAG(SensorCount_Pin))
{hhRetCount++;	//计数值加一
}    
image-20241203160257158

注意, 我们的代码和大括号, 都在USER CODE里面

6.其实这个数值也可以进行闭源的,就是我们调用stm32f1xx.it.c里面的函数,函数进行返回hhRetCount即可

uint16_t GetCountRet(void)
{return hhRetCount;
}
image-20241203160502286

(2)OLED显示按键次数

利用江协科技的OLED代码, 我们可以进行移植, 也可以在我创建好的工程上, 进行创建

点击跳转江协科技OLED保姆移植

1.回到main.c文件, 我们初始化OLED, 然后显示Count次数(记得包含 #include “OLED.h”)

    OLED_Init();OLED_Clear();OLED_ShowString(0,0,"Counts:",OLED_6X8);OLED_Update();
image-20241203160930372

2.然后我们在while(1)里面循环刷新显示按键变量值即可

        OLED_ShowNum(0, 16, GetCountRet(), 5, OLED_8X16);OLED_Update();
image-20241203161029428

3.然后编译烧录, 按下按键, 观察按键次数

6.埋雷

我们会发现多次进入中断, 我们采用定时器喂狗模型进行按键消抖

韦东山stm32hal库–定时器喂狗模型按键消抖原理+实操详细步骤

关键字:h5长图用什么软件做_上海中高风险地区_网站优化入门免费教程_青岛网站seo服务

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: