|
学习一下下 |
写的很详细,谢谢![]() |
| 帮你顶顶 |
xzxlove 发表于 2013-12-18 10:55 写的很详细, |
| 二楼的回答很详细了。 |
彬Lsl 发表于 2017-4-19 08:26 可以啊!简短点,我看了长程序就烦,因此,我基本不看别人的程序。 |
| 重复一下 |
| 正好在学习这部分,受教了 |
zl2168 发表于 2017-4-18 23:03 那可否问你个问题 |
彬Lsl 发表于 2017-4-18 16:01 当然咯,我在本站回帖全部有效,因为可以Proteus仿真确认有效,不信,去操作随帖上传的Proteus仿真DSN电路,验证一下!不过,仿真电路和Hex文件能在清华出版社网站免费下载,程序源代码只能到书上看了。 |
| 当然咯,我在本站回帖全部有效,因为可以Proteus仿真确认有效,不信,去操作随帖上传的Proteus仿真DSN电路,验证一下! |
zl2168 发表于 2017-4-17 22:38 程序确定有效? |
| 定义下开关然后写下流水灯的顺序然后延时下就可以得到你想要的这个了。 |
| 扫描方式时,按下后响应会影响程序的流程,原因是每次按键识别后,都要等待按键释放,程序处理原地死循环,这就是两者间的区别。想要按下后响应就要采用中断方式,识别后要关中,或设置标识位,其实关中后何时开中也很讨厌。 |
彬Lsl 发表于 2017-4-17 08:36 按键按下响应与松开按键响应的区别 实例5 4种不同方式键控信号灯 先Proteus仿真一下,确认有效。
实例5 不同方式键控灯.rar
(31.72 KB, 下载次数: 12)
以上摘自张志良编著《80C51单片机仿真设计实例教程——基于Keil C和Proteus》清华大学出版社ISBN 978-7-302-41682-1.书中电路和程序设计有详细说明,程序语句条条有注解。 |
| 其实成功就在眼前,万岁吗万岁 |
| 不过小惠子做的确实可以哦,继续加油啊,加油,第一就是你 |
| 哦哦,其实可以用的,小伙子想法不错 |
| 新手:按键按下响应与松开按键响应有什么区别 |
| 楼上的回复很精彩 |
|
给你说下流程吧,自己编出来才能进步: 1、首先确定是按下后响应还是松开按键后响应,建议松开按键后响应。 2、有一个按键扫描函数key1_scan();定义一个标志位bit key1,如果key1按下则置位,响应后清零,如果key1按键接的是P0.0口,按键按下后为低电平,则进行判断 if(p0.0不等于高电平)//key1按下 { key1 = 1; } 3、按键消抖10~20ms,在程序中建议不要使用延时,可以定义一个变量作为计时器unsigned char tim10ms,在定时器中断中进行计时if(key1 = 1){ tim10ms++;},主循环查询。 if(tim10ms >= 15) { if(p0.0为高电平){ 流水灯循环函数;key1 = 0;tim10ms = 0;}} 4、流程已经很清楚了,自己编吧,按键程序是基础程序,最好自己编,这样才有进步。可根据上面的流程,结合自己的电路和IC编吧。 |