stm32开发实战labview卷_STC15单片机实战项目软件开发第三讲 按键检测(外部中断)...

软件开发第三讲 - 按键检测(外部中断)

一、工具链接

1、Keil c51 UV4

     https://yunpan.360.cn/surl_yrIfYYmeRFk

   2、STC-ISP下载软件

     https://yunpan.360.cn/surl_yxH4CuUUvI3

   说明:复制网址到浏览器,即可下载

   二、学习板获取方式

方法1:自己设计PCB,自行打板焊接;

  方法2:用群主设计的PCB,自行打板焊接;

  方法3:向群主购买,淘宝链接:

https://item.taobao.com/item.htm?ft=t&id=612010801228

stm32开发实战labview卷_STC15单片机实战项目软件开发第三讲 按键检测(外部中断)..._第1张图片

三、程序功能

1、单击按键1,运行指示灯状态翻转;

2、长按按键1超过2s,运行指示灯闪一下。

     四、硬件部分

stm32开发实战labview卷_STC15单片机实战项目软件开发第三讲 按键检测(外部中断)..._第2张图片

  运行指示灯 -> P34;

  按键1      -> P32,外部中断0

  说明:设计了硬件消抖,提高抗干扰能力。

五、外部中断

stm32开发实战labview卷_STC15单片机实战项目软件开发第三讲 按键检测(外部中断)..._第3张图片

编程说明

1、文件结构如下:

stm32开发实战labview卷_STC15单片机实战项目软件开发第三讲 按键检测(外部中断)..._第4张图片

     main.c  -> 主函数文件,包含main函数等;

     Public.c -> 公共函数文件,包含Delay延时函数等;

     Sys_init -> 系统初始化函数,包含GPIO初始化函数等;

     LED.c    -> LED外设函数,包含LED打开、关闭函数等;

Timer0.c -> 定时器函数,包含定时器初始化,中断函数等;

KEY.c   -> 按键函数,包含按键检测,中断函数等。

2、主函数如下:

stm32开发实战labview卷_STC15单片机实战项目软件开发第三讲 按键检测(外部中断)..._第5张图片

  通过结构体Hardware_Init的函数指针调用系统初始化函数,完成GPIO与按键中断的初始化,接着进入主循环,进行按键检测。

 3、外部0中断函数

stm32开发实战labview卷_STC15单片机实战项目软件开发第三讲 按键检测(外部中断)..._第6张图片

   按键1按下,产生下降沿,CPU进入外部中断0函数,设置按键标志位,具体按键动作,在主函数进行检测。

  说明:1、关键字interrupt表明此函数为中断函数;

         2、interrupt后面的数字0为中断号,CPU根据中断号,找到对应的中断向量地址。

4、源代码

360云盘链接:

   https://yunpan.360.cn/surl_yx8CULX6TCP

、直播

     3月28号,21:00,在bilibili平台进行直播。有时间的朋友,可以看直播,没时间的朋友,可以看回播。

  直播地址: https://live.bilibili.com/21988510

实战项目计划:1、STC15单片机实战项目;          正在进行
2、STM32+GPRS 物联网实战项目;
3、基于STM8的太阳能对锂电池充电实战项目;

4、

单片机产品实战项目教学,开源项目,开发工具,技术资料以及更多原创技术文章,请关注微信公众号。

81c2c60757d1c5f9a6b46ea7c401197a.png

扫描二维码

获取更多精彩

硬件家园

stm32开发实战labview卷_STC15单片机实战项目软件开发第三讲 按键检测(外部中断)..._第7张图片 625bbe01ae8c0c018e38ba9cd4a55852.png

stm32开发实战labview卷_STC15单片机实战项目软件开发第三讲 按键检测(外部中断)..._第8张图片

讲师:刘杰,软硬件工程师,10多年单片机产品开发经验。长期进行单片机实战项目教学。

你可能感兴趣的:(单片机定时器一1ms12MHz,单片机检测stc没反应)