广告

Tiny4412开发板学习:裸机开发-按键检测

2022-08-12 10:10:31 DS小龙哥-嵌入式技 阅读:
Tiny4412开发是友善之臂推出的Android、Linux学习开发板,CPU采用三星的EXYNOS4412,32位芯片,属于Cortex-A系列,主频是1.5GHZ,可以运行ubuntu、Android5.0、纯Linux等操作系统。这篇文章就介绍利用这款开发板继续完成按键编程,了解GPIO口基本的输入输出配置。
广告

1. 前言

Tiny4412开发是友善之臂推出的Android、Linux学习开发板,CPU采用三星的EXYNOS4412,32位芯片,属于Cortex-A系列,主频是1.5GHZ,可以运行ubuntu、Android5.0、纯Linux等操作系统。

上篇文章已经介绍过LED裸机编程,完成LED灯控制,这篇文章就介绍利用这款开发板继续完成按键编程,了解GPIO口基本的输入输出配置。

下面是开发板的实物图:

image-20220124143157723

开发板的配置:

image-20220124143510661

2. 按键编程

要完成程序开发,需要先搭建交叉编译环境,安装arm-linux-gcc编译器,上篇文章已经介绍了,这篇就不再重复。

环境搭建好,就得看原理图,了解按键接在CPU的哪个IO口,了解按键是什么电平表示按下,再去看芯片手册,找到对应IO口的配置寄存器,完成GPIO模式配置,最终完成按键检测。

2.1 查看原理图

tiny4412开发板有两个原理图,分别对应底板和核心板,按键是接在底板上,下面就分别打开底板、核心板原理图,找到按键具体的接线位置。

image-20220124150737525image-20220124150829928image-20220124150929792

从原理图里看到,按键一共有4个按键,分别接在GPX3_2 GPX3_3 GPX3_4 GPX3_5 这些GPIO口上。

image-20220124153048304

2.2 查看芯片手册

在芯片手册里找到GPX3这个寄存器的位置。

image-20220124151601954image-20220124151631609

GPX3CON是模式配置寄存器。

GPX3DAT是数据输出输入控制寄存器。

按键是检测外部电平来判断按键是否按下松开,需要配置成输入模式。

2.3 编写按键检测代码

下面代码实现效果: 检测按键是否按下,按键按下后就点亮LED灯,开启蜂鸣器,按键松开就关闭LED灯,关闭蜂鸣器。

/* 蜂鸣器的寄存器---GPD0_0*/
#define GPD0CON   (*(volatile unsigned int *)0x114000A0)
#define GPD0DAT   (*(volatile unsigned int *)0x114000A4)
​
/* LED的寄存器  GPM4_0 1 2 3*/
#define GPM4CON   (*(volatile unsigned int *)0x110002E0)
#define GPM4DAT   (*(volatile unsigned int *)0x110002E4)
​
/* KEY的寄存器 GPX3 2 3 4 5*/
#define GPX3CON   (*(volatile unsigned int *)0x11000C60)
#define GPX3DAT   (*(volatile unsigned int *)0x11000C64)
​
//BEEP---GPD0_0
int main(void)
{
    /*1. 配置GPIO口模式--配置蜂鸣器*/
    GPD0CON&=~(0xF

2.4 烧写程序测试

程序编译之后会生成main.bin文件,将SD卡插入到电脑上,运行程序烧写脚本,执行dd命令,烧写成功后。

拔出SD卡,插在开发板上,选择从SD卡启动,然后按下按键测试效果。

[wbyq@wbyq sd_fuse]$ sudo ./sd_write.sh /dev/sdb ../main.bin 
复制代码

 

image-20220124152745788

在三星官方的手册里写明了,如果使用SD卡,SD卡内部数据该如何存放。上面烧写程序就是安装这个说明编写的代码,使用dd命令将可执行文件烧写到SD卡的对应位置。

如果使用EMMC,就是按下下面的布局:

image-20220124152945070

本文为EET电子工程专辑 原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • Omdia :2024年生成式AI软件市场将增长124% 许多拥有大型语言模型(LLM)的供应商的收入运行率表明,2024 年的收入增长将达到三位数……
  • IDC首测8款最热门移动端大模型,3款获好评 本次报告的测评涵盖了市面上最热门的八个Chatbot App:kimi智能助手、豆包、海螺AI、天工、通义、文心一言、讯飞星火以及智谱清言(按照公司拼音首字母顺序排列)。
  • Imagination GPU为边缘智能提供高效率的加速 在“2024奕斯伟计算开发者伙伴大会”上,来自Imagination英国总部的专家发表了主题为《用RISC-V CPU + PowerVR GPU迎接边缘生成式AI的到来》的演讲。
  • 面向AI的下一代以太网技术 随着AI应用的广泛普及和数据流量的迅猛增长,传统以太网技术在延迟、带宽、拥塞控制和高性能可扩展方面天然局限,导致其难以应对AI网络的复杂需求。
  • 智能手机疲软,但超薄柔性玻璃出货量势头正猛 可折叠盖板玻璃必须符合以下所有标准:透明、可折叠、坚固、平整和轻薄,这些基本要素缺一不可。
  • 全球折叠屏手机快速增长,中国品牌压制三星 • 得益于西欧、关键亚洲市场和拉丁美洲市场的增长,以及中国品牌的持续领先,全球折叠屏手机出货量在2024年第二季度同比增长了48%。 • 荣耀凭借其在西欧特别强劲的表现,成为最大的贡献者,成为该地区排名第一的品牌。 • 摩托罗拉的Razr 40系列在北美和拉丁美洲表现良好,为其手机厂商的出货量贡献了三位数的同比增长。 • 我们预计,头部中国手机品牌厂商的不断增加将至少在短期内抑制三星Z6系列在第三季度的发布。
  • AI网络物理层底座: 大算力芯片先进封装技术 AI技术的发展极大地推动了对先进封装技术的需求,在高密度,高速度,高带宽这“三高”方面提出了严苛的要求。
  • 智能手表OLED面板超 60%中国制造 智能手表在新冠肺炎疫情后获得了越发广泛的关注,其功能包括语音、健康检查、运动和活动追踪、GPS、通信和个人数据监控。全球智能手表显示面板的出货量已从2022年的2.59亿片增长到2023年的3.51亿片。到 2024年,Omdia预测智能手表显示面板的出货量将达到3.59亿片,其中TFT LCD占63%,OLED占37%。
  • 无处不在的Arm软硬件生态赋能开发者AI创新 随着计算变得愈发复杂,计算效率的重要性更胜以往。
  • 荣耀拿下欧洲横折手机榜第一 既然可以保留几乎相同的旧款手机,或者以更低的价格购买旧款手机,为什么要购买最新款的智能手机呢?但变化已经到来,智能手机品牌厂商正带着其最前沿的创新技术重返欧洲市场……
广告
广告
热门推荐
广告
广告
广告
EE直播间
在线研讨会
广告
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了