完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛
|
学习鸿哥的编程风格,继续抛砖,代码未验证
按住一个按键的连续触发,我的理解连续触发应该是按住后每隔一段时间触发一次 unsigned char count_cnt1 = 0; //count_cnt1来记录间隔一段时间触发的次数 void key_scan() //按键扫描函数 { if(key_sr1==1) //IO是高电平,说明按键没有被按下,这时要及时清零一些标志位 { count_cnt1 = 0;//清除功能 key_lock1=0; //按键自锁标志清零 delay_cnt1=0; } else { ++delay_cnt1; //延时计数器 if(delay_cnt1>cnt_delay_long) //cnt_deyay_long 具体数值根据实际要求自己设置 { count_cnt1++; //如果不需其他功能,即触发固定功能, //这句可以不要,让下面的key_sec等于 某个固定值即可 if(count_cnt1 > x) // x为switch里面选择的个数 count_cnt1 = 1; //从1开始重新执行看需求,如果不用重新从1开始,if这2行可以不要 delay_cnt1=0; //清除延时计数器,重新计 cnt_delay_long个数 key_sec=count_cnt1; //触发第count_cnt次对应的功能 } } } |
|
|
|
|
|
|
|
|
谢谢你的积极参与,但是你的代码不是我想要的结果。欲知详情,请听下回分解。 |
|
|
|
|
|
|
|
|
switch提供了一个很好的,程序思路。如果流水灯是200路的,看来要考虑数组式的流水跑动了 |
|
|
|
|
|
|
|
|
这个结构只是我编程思路的一个子集,加我***”讨论 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
你是好东西啊,谢谢楼主
|
|
|
|
|
|
|
|
|
有没有扫描键盘的长按,双击和短按的呀~~~求楼主~~~
|
|
|
|
|
|
|
|
|
牛人啊,真是服了!
|
|
|
|
|
|
|
|
|
很好,学习了
![]() ![]()
|
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
求解外围电路实现的是4脚给持续低电平复位并正常工作,高电平不工作的原因
2381 浏览 1 评论
4238 浏览 3 评论
PIC1946程序有一个变量在运行过程中恢复初始值其他变量保持不变
2618 浏览 2 评论
3115 浏览 0 评论
PIC16F1825的RC5引脚,在主程序中操作无效,在中断中可以改变是为什么?
4572 浏览 5 评论
有套STM32与西门子200程序需要代写,有兴趣的工程师与有联系!
2487浏览 1评论
用XC8编译PIC18F25K80时提示下面Error,求怎么解决这个问题
6798浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-13 12:48 , Processed in 1.063623 second(s), Total 83, Slave 74 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖