1、双击打开工程,工程路径为……\Project\KEIL-ARM\Project.uvprojx,打开的工程如下:
2、客户可以参考Demo在该路径下……\Examples\TK\TK_ONLY,将此目录下的所有文件复制拷贝到User目录(默认的SDK已经完成拷贝),之后打开工程……\Project\KEIL_ARM\Project.uvprojx。下面介绍该demo的主要参数及调用方法a)先看下使能的TK的按键及个数和是否开启led与tk的硬件扫描宏定义,通过查看ts32fx_tk_cfg.h (在项目的TS32Fx_HAL_driver 下有ts32fx_hal_tk_bsp.c双击打开后,查看代码中的#include “ts32fx_tk_cfg.h”的位置,并鼠标点击此位置右击再点击open documer “ts32fx_tk_cfg.h”文件即可打开该文件)即可查看到使能的tk的位为:0x0017f,个数为8,根据使能位可以知道使能tk0,tk1,tk2,tk3,tk4,tk5,tk6,tk8,共8个tk,且TK_LED_BOTH_HW_AUTO_SCAN宏定义为0,表示只使用tk进行硬件扫描。如下图:
3、b)demo中是如何使用tk的:1、初始化TK的IO: hal_tk_gpio_init() (该函数为抽象层自带)2、初始化TK的控制: hal_tk_ctl_init() (该函数为抽象层自带)3、在需要获取按键的地方调用hal_tk_key_map_get(TK) 获取key被按下的bit-map(该函数为抽象层自带)。如下图:
4、客户可以参考Demo在该路径下……\Examples\TK\ TK&LED_HW_AUTO_SCAN,将此目录下的所有文件复制拷贝到User目录,之后打开工程……\Project\KEIL_ARM\Project.uvprojx。下面介绍该demo的主要参数及调用方法a)先看下使能的TK的按键及个数和是否开启led与tk的硬件扫描宏定义,通过查看ts32fx_tk_cfg.h (在项目的TS32Fx_HAL_driver 下有ts32fx_hal_tk_bsp.c双击打开后,查看代码中的#include “ts32fx_tk_cfg.h”的位置,并鼠标点击此位置右击再点击open documer “ts32fx_tk_cfg.h”文件即可打开该文件)即可查看到使能的tk的位为:0x0017f,个数为8,根据使能位可以知道使能tk0,tk1,tk2,tk3,tk4,tk5,tk6,tk8,共8个tk,需要将TK_LED_BOTH_HW_AUTO_SCAN宏定义置为1,因为这样表示只使用tk与led都为硬件自动扫描。如下图:
5、b)demo中是如何初始化tk及led的,及使用tk:1、初始化led: led_ctl_init() (该函数需要用户根据自己定义修改)2、初始化没有被led复用的tk引脚,将这些引脚配置为输出低: tk_no_reuse_pins_init() (该函数需要用户根据自己定义修改)3、初始化tk控制: hal_tk_ctl_init() (该函数为抽象层自带)4、在需要获取按键的地方调用hal_tk_key_map_get(TK) 获取key被按下的bit-map(该函数为抽象层自带),如下图:
6、(1) 确认芯片的引脚数,并在sdk中设置相应的宏定义;打开ts32fx_system.h文件将相应的引脚宏定义置1
7、(1) 确认芯片是否同时使用tk与led内部硬件扫描,并设置相应的宏定义;打开ts32fx_tk_cfg.h
8、(1) 确认硬件使用tk的索引,配置使能的tk map位及数量;打开ts32fx_tk_cfg.h
9、(1) 调用tk抽象层的初始化函数
10、(1) 在程序循环主体中,插入tk工具调试的接口
11、(1) 开启tk工具调试的宏定义,并配置相应的单pin调试串口参数;
12、(1) 插入串口中断调试函数如上图使用的串口调试为UART0,即在ts32fx_irq.c中的UART0中断中加入函数
13、(1) 确认芯片的引脚数,并在sdk中设置相应的宏定义,同上面方法1;(2) 确认芯片是否同时使用tk与led内部硬件扫描,并设置相应的宏定义,同上面方法1;(3) 确认硬件使用tk的索引,配置使能的tk map位及数量,同上面方法1;(4) 调用tk抽象层的初始化函数,同上面方法1;(5) 插入调试代码;打开ts32fx_irq.c文件在TK_DONE_IRQHandler中断函数中插入调试代码
14、(1) 开启tk调试的宏定义;打开文件ts32fx_hal_tk_bsp.h中USE_TK_JLINK_DEBUG 置为1
15、(1) 点击编译后再点击keil中的在线调试,添加tk_debug_data到调试窗口,按下按键进行tk调试。
16、如下图为该数组的含义,可根据这些参数设置相应的软件阈值及硬件阈值
17、本经验只供参考,如有不足,还请见谅,如果有什么疑问请在下边留言,及时给你解答。。。