实验目标:利用遥感开关往不同方向按下时在LCD显示屏分别显示表示方向的箭头。
实验原理:
(1)GPIO:K60的I/O口具有多功能信号复用、DMA或中断触发控制以及GPIO功能。
GPIO是单片机同外围设备数据传输的通道。单片机的大部分I/O口方向寄存器来配置成为输入或者输出功能。I/O作为输入使用时,可以对输入的信号进行检测,根据输入信号的电压大小,单片机可以将相应的电压信号转化为逻辑信号。
(2)Joystick:五个按键,包括上下左右和中间的按键,中间的select按键有外部的上拉电阻,其他四个方向键可以自由配置上拉或下拉电阻。当按下按键时相应的GPIO口就能检测到按键状态。
(3)LCD:像素为320X240。
(4)FlexBus:
知识点1:GPIO配置
(1)引脚控制寄存器:PORTx_PCRn
10-8:引脚复用功能选择:可以配置为GPIO、中断或其他复用功能等,当这三位配置为001时是GPIO功能。
(2)GPIO时钟配置寄存器:SIM_SCGC5
13-9.PORTx:分别使能或禁止端口时钟;
(3)GPIO数据方向寄存器:GPIOx_PDDR
31-0.PDD:配置为0则为输入,配置为1则为输出
(4)GPIO数据输入寄存器:GPIOx_PDIR
GPIO口会将读入的数据转化为高或低电平。
实验步骤:
1.确定原理图引脚
其中UP按键与PORTA24脚相连,RIGHT按键与PORTA26脚相连,LEFT与PORTA27脚相连,DOWN按键与PORTA25脚相连,SELECT按键与PORTA4脚相连。
2.软件部分
(1)GPIO引脚重命名
kGpio_up=GPIO_MAKE_PIN(HW_GPIOA,24U),
kGpio_down=GPIO_MAKE_PIN(HW_GPIOA,25U),
kGpio_left=GPIO_MAKE_PIN(HW_GPIOA,27U),
kGpio_right=GPIO_MAKE_PIN(HW_GPIOA,26U),
kGpio_select=GPIO_MAKE_PIN(HW_GPIOA,4U),
|