当前页面为 开发中 版本,查看特定版本的文档,请在页面左下角的下拉菜单中进行选择。

key例程

1 功能概述

本代码示例主要演示PAN221x的GPIO应用之按键输入实验。通过本例程,我们可以了解到PAN221x的GPIO作为输入的使用方法。

2 环境要求

  • Board: PAN221x_EVB

  • PANCHIP RISC IDE

3 编译和烧录

例程位置:PAN221x_DK_Public\01_SDK\extension_demo\key

打开key_control目录下key.sproj工程,编译整个代码工程。

4 按键硬件设计

image

按键硬件电路图

如上图所示,为按键检测电路,需配置GPIO为输入模式,当按键未按下时,GPIO状态为高电平,按键按下去后,GPIO状态为低电平。

5 按键板级支持包(bsp_key.c)

● key_init:按键初始化;

● key_scan_10ms:每10ms进行一次按键扫描;

6 测试方法和现象

1、设置系统时钟源为dpll,并分别配置系统时钟为8Mh;

2、开启一个100ms的定时器,每100ms翻转一次LED灯,用于指示系统是否在正常运行;

3、初始化按键,并扫描按键是否按下;

4、初始化串口(P15:TX,P16: RX);

5、key1键按下,抬起后,串口打印key1 pressed

6、key1键长按下,抬起后,串口打印key1 long pressed

7、key2键按下,抬起后,串口打印key2 pressed

8、key2键长按下,抬起后,串口打印key2 long pressed

9、key2键按下,抬起后,串口打印key3 pressed

10、key2键长按下,抬起后,串口打印key3 long pressed

备注:

key1用的P10,P10默认为PCL,下载程序时,需要用,待下载完程序后,需要将拨码开关拨到key1端

key2用的P11,P11默认为PDA,下载程序时,需要用,待下载完程序后,需要将拨码开关拨到key2端

key3用的P17,P17默认功能为reset,下载程序后,key3按下,芯片可以复位,程序运行后,将P17复用为GPIO功能,此时P17的复位功能失效;

按键的长按1s,则认为为长按;

7 Rom/Ram资源使用情况

rom 760 bytes, ram 16 bytes