查看: 2773|回复: 1

[求助] MAPS 四色板K64试用2:方向按键控制液晶屏

[复制链接]

该用户从未签到

10

主题

46

帖子

0

注册会员

Rank: 2

积分
108
最后登录
2018-5-24
发表于 2015-8-31 15:44:23 | 显示全部楼层 |阅读模式
原作者:ECBC_LYX


MAPS开发板上配备了GVDA液晶屏和五向按键,今天我们就使用五向按键控制液晶屏幕显示不同的内容


目的:使用五向按键控制液晶屏显示不同的图片内容


基本的硬件连接


1.首先介绍一下五向按键的硬件连接方式


五向按键是通过连接了一个下拉电阻接到了地,在配置MCU是需要将GPIO配置为上拉模式这样是GPIO采集到的信号更准确。


方向按键控制液晶屏 1.png


2.液晶屏是通过FLEXBUS连接到MCU的。


方向按键控制液晶屏 2.png


软件的配置方法


简要介绍一下软件的配置方法,首先MCU的给个引脚都是复用的方式,并且还有中断和GPIO,在这里我们是将引脚配置成了GPIO模式再读取IO的值进行判断按键是否有按下。


在使用GPIO时要配置以下寄存器:
  • I/O模块时钟配置寄存器SCGC5[PORTx]
  • I/O的控制与中断寄存器PORTx
  • I/O控制寄存器n PORTx_PCRn
  • GPIO输入数据寄存器GPIOx_PDIR
  • GPIO设置方向寄存器GPIOx_PDDR

官方给出的库函数中可以有两个层面的选择,一个是HAL层,另一个是Driver层配置,


简单的理解HAL层的函数更贴近硬件函数简单功能单一,Driver层函数相对复杂,功能强大。


在本次实例中使用的是HAL层的函数配置的GPIO:
  • 使用SIM_HAL_EnablePortClock使能对应硬件的端口
  • 使用PORT_HAL_SetMuxMode将引脚配置成GPIO模式
  • 使用GPIO_HAL_SetPinDir再将对应的引脚配置成输入模式
  • 使用PORT_HAL_SetPullCmd使能上下拉电阻模式
  • 使用PORT_HAL_SetPullMode配置上拉电阻模式

这样就配置好了GPIO的基本模式


接下来就可以使用GPIO_HAL_ReadPinInput读取引脚的值,


按键程序中还要添加消抖,和松手检测,这样才算是一个相对完整的按键程序,同时也提高了按键程序的稳定性。


另外LCD的显示比较复杂今天这里就不做介绍了


官方给出的库函数中给出了显示用的函数可以直接调用,简要介绍一下图片在LCD上的显示原理,图片在程序中是以数组的形式存在的,显示的时候是将数组中的每个像素点的值读出送给显示控制器,在屏幕上显示一个像素点,逐行逐列的显示就实现了一个画面,图片到数组的转化需要一些小工具,例如:Image2Lcd


将图片到工具中转化为数组添加到程序中,使用的时候直接调用就可以了,


我在这个例程中使用的是


初始化 显示 hello world


中间的按键显示ECBC 各个方向键显示各个方向的箭头。


下面是显示的照片。


初始化
方向按键控制液晶屏 3.jpg

中间按键
方向按键控制液晶屏 4.jpg

方向按键上
方向按键控制液晶屏 5.jpg

方向按键下
方向按键控制液晶屏 6.jpg

方向按键左
方向按键控制液晶屏 7.jpg

方向按键右
方向按键控制液晶屏 8.jpg

我知道答案 目前已有1人回答

评分

参与人数 1NXP金币 +20 收起 理由
小七 + 20

查看全部评分

回复

使用道具 举报

  • TA的每日心情
    开心
    2017-1-24 09:50
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    654

    主题

    3262

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    13258
    最后登录
    2019-1-27
    发表于 2015-8-31 16:43:02 | 显示全部楼层
    看看,赞一个
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-9-2 09:11 , Processed in 0.095857 second(s), 29 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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