lsd_tk413_01.c
来自「TI公司MSP430单片机实现方形触摸按键的C语言源代码。」· C语言 代码 · 共 94 行
C
94 行
//=================================================================
//
//
//
//==================================================================
//=====================定义常数=====================================
//
//==================================================================
//=====================定义变量=====================================
//==================================================================
//=====================子函数声明===================================
//
//
//==================================================================
//=====================包含头文件===================================
#include"msp430x41x.h"
#include"subroutine.h"
#include"subroutine.c"
//==================================================================
//==================================================================
//函数名称:void main(void)
//入口参数:空
//返回数据:空
//函数功能:系统主函数
//==================================================================
void main()
{
unsigned int i;
int tmp_min=255;
int tmp_max=0;
Init_Mcu();
for(i=0;i<NUM_KEYS;i++) //初始化按键形成地平面
{
Init_Key(&key[i],&key_config[i]);
}
for(i=0;i<100;i++) //多次扫描按键等待时钟的稳定
{
Scan_Key();
}
for(i=0;i<NUM_KEYS;i++) //读取各个按键的基本电容量
{
key[i].base_capacitance=key[i].filtered>>4;
key[i].filtered=0;
}
while(1)
{
Scan_Key();
reg_key_value=find_mean_position();
if(cnt_key_down>10)
{
reg_key_value_avg =reg_key_value_avg -tmp_min-tmp_max;
reg_key_value_avg /= 8;
// Lcd_Display(reg_key_value_avg);
// Uart_Tx(reg_key_value_avg);
cnt_key_down=0;
reg_key_value_avg =0;
tmp_min=255;
tmp_max=0;
}
cnt_key_down++;
reg_key_value_avg += reg_key_value;
if(reg_key_value<tmp_min)
tmp_min=reg_key_value;
if(reg_key_value>tmp_max)
tmp_max=reg_key_value;
if(reg_key_value == -1)
{
tmp_min=255;
tmp_max=0;
cnt_key_down=0;
reg_key_value_avg = 0;
for(i=0;i<8;i++)
{
LCDMEM[i]=0;
}
}
//Key_Position();
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?