找回密码
 立即注册

QQ登录

只需一步,快速开始

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

求助新手!用按键作显示模式选择键

[复制链接]
跳转到指定楼层
楼主
ID:245670 发表于 2017-11-3 13:58 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用按键作显示模式选择键,实现上述实验中3个显示画面的切换,即上电显示“1”,按1次键显示“1234”,再2次键显示2位秒计数器,按3次键又显示“1”……。这个怎么做呀?#define THCO   0xee
#define TLCO   0x0还有这个定义该怎么判断什么时候需要又如何来写呢??
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:244971 发表于 2017-11-4 16:26 | 只看该作者
1.)设一组8或16旗标,上电时LSB设1=显示“1”
2.)每按一次按1次键,左移一次
3.)检测旗标位置作出相对动作...DONE
回复

使用道具 举报

板凳
ID:111634 发表于 2017-11-4 17:32 | 只看该作者
上述实验在哪里啊???没头没脑。
回复

使用道具 举报

地板
ID:229799 发表于 2017-11-4 20:15 来自手机 | 只看该作者
注意几个地方,1按键去抖。2按键控制一个表示状态的变量,根据状态变量的值去执行不同的功能。3#define是宏定义,功能就是新名字直接替换
回复

使用道具 举报

5#
ID:244971 发表于 2017-11-5 10:25 | 只看该作者
//一只按键多种显示//
unsigned char roll_buf=0x01;        //上电时LSB设1(set a rolling buffer)
key_read_debce();                //读按键及去抖(read key & debounce)
if(key_press) roll_buf<<;        //如按键按下左移标号
.
.
.
switch(roll_buf)        //判断标号位置_作对应显示
                         {
                         case(0x01):
                         {display_1()};                //上电显示“1”
                         break;
                         case(0x02):
                         {display_1234()};        //按1次键显示“1234”
                         break;
                         case(0x04):
                         {display_cntx2()};        //再2次键显示2位秒计数器
                         break;       
                        }
.
.
.
回复

使用道具 举报

6#
ID:762573 发表于 2020-6-3 09:15 来自手机 | 只看该作者
利用单片机的串行口向PC机发送数据0x55,运行结果可以通过在PC的接收软件上看见,验证接收数据是否正确。
回复

使用道具 举报

7#
ID:762573 发表于 2020-6-3 09:49 来自手机 | 只看该作者
利用单片机的串行口向PC机发送数据0x55,运行结果可以通过在PC的接收软件上看见,验证接收数据是否正确。
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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