找回密码
 立即注册

QQ登录

只需一步,快速开始

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

请问STC89C52,如何用独立键盘控制TFT彩屏进行界面的切换

[复制链接]
跳转到指定楼层
楼主
怎么判断按键按下,然后从第一个画面到第二个画面
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:138119 发表于 2018-4-26 08:18 | 只看该作者
、用一个按键实现翻页,方法很多,但每种方法都有不同之处,你应该具体说一下你的项目的细节,比如显示的原理,刷卡的原理,还有是不是还有别的模块?我曾经用一个按钮实现长按开、关机,短按翻页、连续短按2此,跳到指定页面,类似鼠标的双击、单击、按下拖动一样。
回复

使用道具 举报

板凳
ID:138119 发表于 2018-4-26 08:24 | 只看该作者
#define Down_OK 64

unsigned char S1_OK, Page , Page_tmp;
unsigned int  i;
unsigned int i2;

extern unsigned char BL_PWM, BL_OUT,BL_tmp1,BL_tmp2;

extern unsigned char KEY_Too;
extern unsigned char Display_OFF_Logo_Bit, Disp_GO_bit;
extern unsigned char Power_off_bit;

unsigned char KEY_OFF_SYSTEM_bit;
void Scan_KEY(void)
{
        if(GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_6) == 0)                //读 S1 == 0
        {
                ++i;
                if(i >= Down_OK)
                {
                        i = 0;
                        if(GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_6) == 0)        //读S1 == 0
                        {
                                if(S1_OK == 0)
                                {
                                        S1_OK = 1;
                                       
                                        BL_tmp1 = 0;
                                        BL_tmp2 = 0; //延时进入PWM暗屏模式时间
                                       
                                        if(KEY_Too == 0) // = 0
                                        {
                                                KEY_Too = 1;        //标志
                                                BL_OUT = 0;                //全亮
                                        }
                                       
                                        if( GPIO_ReadOutputDataBit(GPIOB, GPIO_Pin_7) == 0 ) //开机
                                        {
                                                POW_ON__1;        //PB7 开机锁输出1
                                                POW_5V__1;        //PB5 开机5V输出1 //LCD_BL__1;        //PA8 LCD_BL背光1
                                        }
                                       
                                        ++Page_tmp;
                                        if(Page_tmp >= 3)                //一共0~3,4个页面
                                        {
                                                Page_tmp = 0;
                                        }
                                }
                                else
                                {
                                        if(Power_off_bit == 1) //3秒关机
                                        {
                                                Power_off_bit = 0;
                                                KEY_OFF_SYSTEM_bit = 1; //关机
                                        }
                                }
                        }
                }
        }
        else
        {
                Page = Page_tmp;        //释放 按钮
                S1_OK = 0;                //归零
                i2 = 0;
                i = 0;
        }
}
回复

使用道具 举报

地板
ID:139855 发表于 2018-4-26 09:07 | 只看该作者
给你个建议把这个分部分解
{
   1,是想彻底理解还是着急想做东西显示数据就可以
   2,彻底理解,51例程很多,多看看程序,在查原理,对照着来,自己编一段(一定自己编有个过程,记得清楚,最好在做个word记录)
   3,只是着急显示数据的话,就是找个例程看下,51还是很多的,把显示字的位置弄清楚,找到那几个函数的变量,改写就行
}
回复

使用道具 举报

5#
ID:302865 发表于 2018-4-28 15:31 | 只看该作者
yfpc2006 发表于 2018-4-26 08:18
、用一个按键实现翻页,方法很多,但每种方法都有不同之处,你应该具体说一下你的项目的细节,比如显示的原 ...

您好,如何用独立按键(比如k4)按下(只需要判定按下不用长按或者短按)代表确认,进入下一个界面,或者跳转到指定界面,
回复

使用道具 举报

6#
ID:302865 发表于 2018-4-28 15:34 | 只看该作者
love105827 发表于 2018-4-26 09:07
给你个建议把这个分部分解
{
   1,是想彻底理解还是着急想做东西显示数据就可以

您好,界面显示好了,现在需要独立键盘按下判断确认进入下一个画面或者返回上一个画面,请问如果做刷卡显示数据可以用RFID-RC522射频卡吗?
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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