Files
TencentOS-tiny/board/ALPHA_I.MX_emmc_256ddr/bsp/touchscreen/bsp_touchscreen.h
daishengdong 3d9d6198c8 add cortex-v7a support
How To Run:
    see TencentOS-tiny\board\ALPHA_I.MX_emmc_256ddr\README.md

TODO Next:
1. VFP support
2. fault diagnosis support
3. qemu vexpress ca9 support
4. raspberry pi support
5. SMP support
2020-01-19 19:06:24 +08:00

63 lines
2.1 KiB
C

#ifndef _TOUCHSCREEN_H
#define _TOUCHSCREEN_H
/***************************************************************
Copyright © zuozhongkai Co., Ltd. 1998-2019. All rights reserved.
文件名 : bsp_touchscreen.c
作者 : 左忠凯
版本 : V1.0
描述 : 触摸屏驱动头文件,触摸芯片为FT5426
其他 : 无
论坛 : www.openedv.com
日志 : 初版V1.0 2019/1/21 左忠凯创建
***************************************************************/
#include "bsp.h"
#include "bsp_gpio.h"
/* 宏定义 */
#define FT5426_ADDR 0X38 /* FT5426设备地址 */
#define FT5426_DEVICE_MODE 0X00 /* 模式寄存器 */
#define FT5426_IDGLIB_VERSION 0XA1 /* 固件版本寄存器 */
#define FT5426_IDG_MODE 0XA4 /* 模式寄存器 */
#define FT5426_TD_STATUS 0X02 /* 触摸状态寄存器 */
#define FT5426_TOUCH1_XH 0X03 /* 触摸点坐标寄存器,
* 一个触摸点用6个寄存器存储坐标数据
*/
#define FT5426_XYCOORDREG_NUM 30 /* 触摸点坐标寄存器数量 */
#define FT5426_INIT_FINISHED 1 /* 触摸屏初始化完成 */
#define FT5426_INIT_NOTFINISHED 0 /* 触摸屏初始化未完成 */
#define FT5426_TOUCH_EVENT_DOWN 0x00 /* 按下 */
#define FT5426_TOUCH_EVENT_UP 0x01 /* 释放 */
#define FT5426_TOUCH_EVENT_ON 0x02 /* 接触 */
#define FT5426_TOUCH_EVENT_RESERVED 0x03 /* 没有事件 */
/* 触摸屏结构体 */
struct ft5426_dev_struc
{
unsigned char initfalg; /* 触摸屏初始化状态 */
unsigned char intflag; /* 标记中断有没有发生 */
unsigned char point_num; /* 触摸点 */
unsigned short x[5]; /* X轴坐标 */
unsigned short y[5]; /* Y轴坐标 */
};
extern struct ft5426_dev_struc ft5426_dev;
/* 函数声明 */
void touchscreen_init(void);
void gpio1_io9_irqhandler(void);
unsigned char ft5426_write_byte(unsigned char addr,unsigned char reg, unsigned char data);
unsigned char ft5426_read_byte(unsigned char addr,unsigned char reg);
void ft426_read_len(unsigned char addr,unsigned char reg,unsigned char len,unsigned char *buf);
void ft5426_read_tpnum(void);
void ft5426_read_tpcoord(void);
#endif