找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 10113|回复: 10
打印 上一主题 下一主题
收起左侧

用51hei板子学习一键多功能按键识别技术

  [复制链接]
跳转到指定楼层
楼主

1.实验任务

开关S5接在P3.7/RD管脚上,在stc89c52单片机的P0端口接有四个发光二极管,上电的时候,D8接在P0.0管脚上的发光二极管在闪烁,当每一次按下开关S5的时候,D7接在P0.1管脚上的发光二极管在闪烁,再按下开关S5的时候,D6接在P0.2管脚上的发光二极管在闪烁,再按下开关S5的时候,D5接在P0.3管脚上的发光二极管在闪烁,再按下开关S5的时候,又轮到D8在闪烁了,如此轮流下去。

 

2程序设计方法

(1.       设计思想由来

在我们生活中,我们很容易通过这个叫张三,那个叫李四,另外一个是王五;那是因为每个人有不同的名子,我们就很快认出,同样,对于要通过一个按键来识别每种不同的功能,我们给每个不同的功能模块用不同的ID号标识,这样,每按下一次按键,ID的值是不相同的,所以单片机就很容易识别不同功能的身份了。

(2.       设计方法

从上面的要求我们可以看出,D8到D5发光二极管在每个时刻的闪烁的时间是受开关S5来控制,我们给D8到D5闪烁的时段定义出不同的ID号,当D8在闪烁时,ID=0;当D7在闪烁时,ID=1;当D6在闪烁时,ID=2;当D5在闪烁时,ID=3;很显然,只要每次按下开关S5时,分别给出不同的ID号我们就能够完成上面的任务了。下面给出有关程序设计的框图。

3程序框图

图4.9.2

 

4.源程序及其hex文件下载:

c语言版本   :http://www.51hei.com/ziliao/51hei-5/独立键盘_一键多功能_c.rar
汇编语言版本:http://www.51hei.com/ziliao/51hei-5/独立键盘_一键多功能_asm.rar

[此贴子已经被作者于2010-6-4 2:59:13编辑过]

评分

参与人数 1黑币 +3 收起 理由
0668866 + 3 赞一个!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏3 分享淘帖 顶 踩
回复

使用道具 举报

来自 2#
ID:996773 发表于 2023-3-1 14:26 | 只看该作者


英雄所见略同,我这个收音机操作菜单就和楼主一样思路,同一个按键执行三个操作流程

分别是频道,频率,设定三种模式,开机默认频道模式,频道左边白圈变黑圈,表示当前

功能选项,按一下蓝色按钮,往寄存器写个固定数值,执行到第二个功能频率模式,如果这

时候转动旋转编码器就可以执行相应的功能,再按往寄存器写数值,执行第三个设定功能,

这种软件思路方案虽然复杂一些,但做出成品操作非常简单,一个旋转编码器就能完成所有

操作,我学习汇编只有两年,也是自己冥思苦想出来的,宁可让数据多跑路也要让自己少动手

评分

参与人数 1黑币 +50 收起 理由
admin + 50 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

板凳
ID:14556 发表于 2010-8-28 15:24 | 只看该作者
学习学习中
回复

使用道具 举报

地板
ID:33544 发表于 2017-8-4 10:40 | 只看该作者
学习学习按键多功能
回复

使用道具 举报

5#
ID:57570 发表于 2017-12-6 10:13 来自手机 | 只看该作者
这个很好写吧!
回复

使用道具 举报

6#
ID:272625 发表于 2018-1-21 15:48 | 只看该作者
程序有问题,有些灯不该亮的亮了
回复

使用道具 举报

7#
ID:66287 发表于 2018-8-22 09:02 | 只看该作者
楼主,这个不属于一键多功能吧?
回复

使用道具 举报

8#
ID:507557 发表于 2019-4-9 09:29 | 只看该作者
很好!我都是用汇编,现在在学习C
回复

使用道具 举报

9#
ID:940085 发表于 2021-6-19 19:11 来自手机 | 只看该作者
这个看起来挺清晰的
回复

使用道具 举报

10#
ID:1042173 发表于 2023-10-9 12:16 | 只看该作者
yytlwz 发表于 2019-4-9 09:29
很好!我都是用汇编,现在在学习C

厉害,你居然会汇编语言。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表