www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁 > > 充電吧
[導(dǎo)讀]TSC2046簡介??????? TSC2046是一款電阻觸摸屏,電阻觸摸屏的工作原理主要是通過壓力感應(yīng)原理來實現(xiàn)對屏幕內(nèi)容的操作和控制的,這種觸摸屏屏體部分是一塊與顯示器表面非常配合的多層復(fù)合薄膜,

TSC2046簡介


??????? TSC2046是一款電阻觸摸屏,電阻觸摸屏的工作原理主要是通過壓力感應(yīng)原理來實現(xiàn)對屏幕內(nèi)容的操作和控制的,這種觸摸屏屏體部分是一塊與顯示器表面非常配合的多層復(fù)合薄膜,其中第一層為玻璃或有機玻璃底層,第二層為隔層,第三層為多元樹脂表層,表面還涂有一層透明的導(dǎo)電層,上面再蓋有一層外表面經(jīng)硬化處理、光滑防刮的塑料層。在多元脂表層表面的傳導(dǎo)層及玻璃層感應(yīng)器是被許多微小的隔層所分隔電流通過表層,輕觸表層壓下時,接觸到底層,控制器同時從四個角讀出相稱的電流及計算手指位置的距離。這種觸摸屏利用兩層高透明的導(dǎo)電層組成觸摸屏,兩層之間距離僅為2.5微米。當(dāng)手指觸摸屏幕時,平常相互絕緣的兩層導(dǎo)電層就在觸摸點位置有了一個接觸,因其中一面導(dǎo)電層接通Y軸方向的5V均勻電壓場,使得偵測層的電壓由零變?yōu)榉橇悖刂破鱾蓽y到這個接通后,進行A/D轉(zhuǎn)換,并將得到的電壓值與5V相比,即可得觸摸點的Y軸坐標(biāo),同理得出X軸的坐標(biāo),這就是所有電阻技術(shù)觸摸屏共同的最基本原理。
數(shù)據(jù)手冊:鏈接: http://pan.baidu.com/s/1pLxmr2b 密碼: j8uq

代碼

TSC2046.h
#ifndef?_TSC2046_H_
#define?_TSC2046_H_

#include?"lpc17xx.h"
#include?"Common.h"

#define?TSC2046_CS_GPIO		LPC_GPIO1
#define?TSC2046_CS_PIN		19
#define?TSC2046_DCLK_GPIO	LPC_GPIO1	
#define?TSC2046_DCLK_PIN	18
#define?TSC2046_DIN_GPIO	LPC_GPIO1	
#define?TSC2046_DIN_PIN		20
#define?TSC2046_DOUT_GPIO	LPC_GPIO1	
#define?TSC2046_DOUT_PIN	22
#define?TSC2046_PENING_GPIO	LPC_GPIO1	
#define?TSC2046_PENING_PIN	23

#define?TSC2046_CS_HIGH()						TSC2046_CS_GPIO???	->FIOSET?=?_BV(TSC2046_CS_PIN??)	
#define?TSC2046_CS_LOW()						TSC2046_CS_GPIO???	->FIOCLR?=?_BV(TSC2046_CS_PIN??)
#define?TSC2046_DCLK_HIGH()						TSC2046_DCLK_GPIO?	->FIOSET?=?_BV(TSC2046_DCLK_PIN)	
#define?TSC2046_DCLK_LOW()						TSC2046_DCLK_GPIO?	->FIOCLR?=?_BV(TSC2046_DCLK_PIN)
#define?TSC2046_DIN_HIGH()		????			TSC2046_DIN_GPIO??	->FIOSET?=?_BV(TSC2046_DIN_PIN?)	
#define?TSC2046_DIN_LOW()						TSC2046_DIN_GPIO??	->FIOCLR?=?_BV(TSC2046_DIN_PIN?)
#define?GET_TSC2046_DOUT()						(TSC2046_DOUT_GPIO	->FIOPIN?&?_BV(TSC2046_DOUT_PIN?))
#define?GET_TSC2046_PENING()					(TSC2046_PENING_GPIO->FIOPIN?&?_BV(TSC2046_PENING_PIN))

#define?TSC2046_MEASURE_X						0xD0
#define?TSC2046_MEASURE_Y						0x90
#define?TSC2046_MEASURE_Z1						0xB0
#define?TSC2046_MEASURE_Z2						0xC0

void?TSC2046_GPIO_Init(void);
void?TSC2046_Init(void);
uint32_t?TSC2046_ReadWithFilter(uint8_t?cmd);


#endif


TSC2046.c
#include?"TSC2046.h"
#include?"Delay.h"

//觸摸讀取次數(shù)??根據(jù)實際情況修改
#define?TSC2046_READ_TIMES?5
//丟棄值
#define?TSC2046_LOST_Val???1

void?TSC2046_GPIO_Init(void)
{
	TSC2046_CS_GPIO		->FIODIR?|=?_BV(TSC2046_CS_PIN);
	TSC2046_DCLK_GPIO	->FIODIR?|=?_BV(TSC2046_DCLK_PIN);
	TSC2046_DIN_GPIO	->FIODIR?|=?_BV(TSC2046_DIN_PIN);
	TSC2046_DOUT_GPIO	->FIODIR?&=?(~_BV(TSC2046_DOUT_PIN));
	TSC2046_PENING_GPIO	->FIODIR?&=?(~_BV(TSC2046_PENING_PIN));
}

void?Send_One_byte(uint8?data)
{
	uint8?i?=?0;
	for(i?=?0;i?<?8;i?++)
	{
		if(data?&?0x80)
		{
			TSC2046_DCLK_LOW();
			TSC2046_DIN_HIGH();
		}
		else
		{
			TSC2046_DCLK_LOW();
			TSC2046_DIN_LOW();
		}
		DelayUS(10);
		TSC2046_DCLK_HIGH();
		DelayUS(10);
		data?=	(?data<<?1);
	}
}

uint8?Read_One_byte()
{
	uint8?i?=?0;
	uint8?rec_data?=?0;
	for(i?=?0;i?<?8;i?++)
	{
		TSC2046_DCLK_LOW();
		DelayUS(10);
		rec_data?=?(rec_data?<<?1);
		if(GET_TSC2046_DOUT()?!=?0)
		{
			rec_data?|=?0x01;
		}
		TSC2046_DCLK_HIGH();
		DelayUS(10);
	}
	return?rec_data;
}

/*
排序函數(shù)
*/
void?SortBigToSmallUint16(uint16_t?*ptr,?uint8_t?n)
{
	uint8_t?i;
	uint16_t?*p;
	uint16_t?temp;

	if(n)
	{
		for(--n;?n;?--n)
		{
			p?=?ptr;
			for(i?=?0;?i?<?n;?++i)
			{
				if(*p?<?*(p?+?1))
				{
					temp?=?*p;
					*p?=?*(p?+?1);
					*(p?+?1)?=?temp;
				}
				++p;
			}
		}
	}
}


void?TSC2046_Init(void)
{
	TSC2046_GPIO_Init();
	TSC2046_CS_HIGH();
	
	DelayUS(10);
	
	TSC2046_CS_LOW();
	
	Send_One_byte(TSC2046_MEASURE_X);
	DelayUS(5);
	Send_One_byte(0);
	Send_One_byte(0);
	
	TSC2046_CS_HIGH();
}


uint16_t?TSC2046_Read(uint8_t?cmd)
{
	uint16?data;

	TSC2046_CS_LOW();
	Send_One_byte(cmd);
	DelayUS(5);
	data?=?Read_One_byte();
	data?<>?3);
}


uint32_t?TSC2046_ReadWithFilter(uint8_t?cmd)
{
	uint8_t?i;
	uint16_t?buf[14];
	uint32_t?temp;

	if(GET_TSC2046_PENING())
	{
		return?0;
	}
		
	for(i?=?14;?i;?--i)
	{
		buf[i]?=?TSC2046_Read(cmd);
	}
	
	SortBigToSmallUint16(&buf[0],?14);

	temp?=?0;
	for(i?=?5;?i?<?9;?++i)
	{
		temp?+=?buf[i];
	}
	temp?>>=?2;
	return?temp;
}


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

納祥科技推出太陽能+Type-C雙充電自行車前燈方案,方案核心模塊包含太陽能板、單片機、三極管、3顆LED燈珠與1200mAh電池,通過低功耗單片機與三極管驅(qū)動,支持強光/弱光/爆閃3種模式,高流明遠射程,適配多種車型

關(guān)鍵字: 方案開發(fā) 電子方案 自行車前燈方案 納祥科技

慕尼黑2025年9月11日 /美通社/ -- 當(dāng)?shù)貢r間9月9日,賽力斯動力在德國慕尼黑國際車展期間舉辦技術(shù)發(fā)布與交流會,正式在海外市場推出全新一代賽力斯超級增程、高效發(fā)動機和新一代分布式電驅(qū)動系統(tǒng),同時與來自全球的汽車產(chǎn)...

關(guān)鍵字: 慕尼黑 分布式 發(fā)動機 新能源汽車

慕尼黑2025年9月11日 /美通社/ -- 高端智能電動汽車品牌問界(AITO)在2025年德國國際汽車及智慧出行博覽會(IAA MOBILITY)上,正式發(fā)布了其最新全球產(chǎn)品陣容——專為中東市場深度本地化打造的AIT...

關(guān)鍵字: AI 智能駕駛 測試 生態(tài)系統(tǒng)

舍弗勒首次為中國頭部車企大規(guī)模生產(chǎn)高壓逆變磚 天津工廠一年內(nèi)完成量產(chǎn)準(zhǔn)備,逆變器模塊性能參數(shù)顯著提升 與合作伙伴羅姆半導(dǎo)體共研尖端碳化硅技術(shù),效率更高、性能更優(yōu) 模塊化可擴展設(shè)計使逆變磚易于集成,可廣泛...

關(guān)鍵字: 逆變 高壓 逆變器 集成

舍弗勒以"專注驅(qū)動技術(shù)的科技公司"為主題亮相IAA MOBILITY 2025(B3館B40展臺) 合并緯湃科技后首次亮相IAA MOBILITY,展示拓展后的汽車產(chǎn)品組合 憑借在軟件、...

關(guān)鍵字: 電氣 軟件 驅(qū)動技術(shù) BSP

拉斯維加斯2025年9月11日 /美通社/ -- 在9月8日至11日舉辦的RE+ 2025展會上,全球綜合儲能解決方案供應(yīng)商德賽電池(Desay Battery)全面展示了其創(chuàng)新成果,并宣布與深圳市華寶新能源股份有限公司...

關(guān)鍵字: 電池 電芯 人工智能 鋰電

香港2025年 9月12日 /美通社/ -- 全球領(lǐng)先的互聯(lián)網(wǎng)社區(qū)創(chuàng)建者 - 網(wǎng)龍網(wǎng)絡(luò)控股有限公司 ("網(wǎng)龍"或"本公司",香港交易所股票代碼:777)欣然宣布,其子公司My...

關(guān)鍵字: AI 遠程控制 控制技術(shù) BSP

慕尼黑2025年9月12日 /美通社/ -- 慕尼黑當(dāng)?shù)貢r間9月10日,在2025德國國際汽車及智慧出行博覽會(IAA MOBILITY)上,國際獨立第三方檢測、檢驗和認(rèn)證機...

關(guān)鍵字: 測試 慕尼黑 模型 HUBER

上海2025年9月12日 /美通社/ -- 近日,國際獨立第三方檢測、檢驗和認(rèn)證機構(gòu)德國萊茵TÜV大中華區(qū)(簡稱"TÜV萊茵")為上海...

關(guān)鍵字: 測試 信息安全 安全管理 開關(guān)

廣州2025年9月12日 /美通社/ -- 9月11日,由國際獨立第三方檢測、檢驗和認(rèn)證機構(gòu)德國萊茵TÜV大中華區(qū)(簡稱"TÜV萊茵"...

關(guān)鍵字: 數(shù)字化 供應(yīng)鏈 控制 電子
關(guān)閉