当前位置:首页 > 单片机 > 单片机
[导读]将接近检测传感器集成到系统后,一个经常遇到的问题是如何正确选择接近检测的门限,以便在用户通话期间打开或关闭屏幕。门限设置须确保出现错误判断的几率非常低,而且能够支持绝大多数使用者的情况。 门限滞回例程

将接近检测传感器集成到系统后,一个经常遇到的问题是如何正确选择接近检测的门限,以便在用户通话期间打开或关闭屏幕。门限设置须确保出现错误判断的几率非常低,而且能够支持绝大多数使用者的情况。
门限滞回例程

 

#define MAX44000_ADDR	0x94
#define INT_STATUS_REG	0x00
#define OFF_THRESHOLD	4600
#define OFF_DELAY		1
#define ON_THRESHOLD	4000
#define ON_DELAY		3

uint8 screenStatus;	// 0 means off, 1 means on

/*
  i2cWriteBytes()
  
  Arguments:
	uint8 address - device address
	uint8 start_reg - register where the first byte is written
	uint8 *data - data to write
	uint8 nbytes - number of bytes to write

  Consecutively writes several bytes to some i2c device starting at some 
  specified address -- implemented elsewhere
*/
void i2cWriteBytes(uint8 address,uint8 start_reg,uint8 *data,uint8 nbytes);

/*
  MAX44000InterruptHandler()

 

以下代码用于实现MAX44000 INT引脚的中断处理,假设MAX44000的接近检测传感器设置为14位模式,并已使能中断。此外,假设屏幕状态初始化为1或0,详细信息请参阅数据资料的寄存器说明部分。

 

*/
void MAX44000InterruptHandler() {

	uint8 i2cData[3];
	
	i2cRead1Byte(MAX44000_ADDR,INT_STATUS_REG,&i2cData);
	if (i2cData&0x01 != 0)
		return;	// check to make sure interrupt really fired
				// this simultaneously clears the interrupt flag
	
	if (screenStatus) {
		i2cData[0] = ON_DELAY;	
		i2cData[1] = ON_THRESHOLD >> 8 & 0xBF; // set ABOVE = 0
		i2cData[2] = ON_THRESHOLD & 0xFF;
	} else {
		i2cData[0] = OFF_DELAY;	 
		i2cData[1] = OFF_THRESHOLD >> 8 | 0x40; // set ABOVE = 1
		i2cData[2] = OFF_THRESHOLD & 0xFF;
	} // set the new threshold depending on what the screen status was
	
	// set the delay and threshold after each interrupt
	i2cWriteBytes(MAX44000_ADDR,0x0A,i2cData,3);
	
	return;
} // MAX44000InterruptHandler
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

SCL(serial clock):时钟线,传输CLK信号,一般是I2C主设备向从设备提供时钟的通道。

关键字: I2C 总线通信 时钟线

广州2023年8月29日 /美通社/ --  8月28日,保健食品行业迎来新规,国家市场监管总局正式发布《保健食品新功能及产品技术评价实施细则(试行)》(简称《实施...

关键字: UI BSP JOURNAL 检测方法

今天,小编将在这篇文章中为大家带来I2C总线的有关报道,通过阅读这篇文章,大家可以对它具备清晰的认识,主要内容如下。

关键字: I2C 总线

在这篇文章中,小编将对I2C总线的相关内容和情况加以介绍以帮助大家增进对它的了解程度,和小编一起来阅读以下内容吧。

关键字: I2C 总线

今天,小编将在这篇文章中为大家带来SPI总线和I2C总线的有关报道,通过阅读这篇文章,大家可以对二者具备清晰的认识,主要内容如下。

关键字: SPI I2C 总线

I2C总线将是下述内容的主要介绍对象,通过这篇文章,小编希望大家可以对它的相关情况以及信息有所认识和了解,详细内容如下。

关键字: I2C 总线

一直以来,I2C总线都是大家的关注焦点之一。因此针对大家的兴趣点所在,小编将为大家带来I2C总线的相关介绍,详细内容请看下文。

关键字: I2C 总线

本文中,小编将对I2C总线予以介绍,如果你想对它的详细情况有所认识,或者想要增进对它的了解程度,不妨请看以下内容哦。

关键字: I2C 总线

在这篇文章中,小编将为大家带来I2C总线的相关报道。如果你对本文即将要讲解的内容存在一定兴趣,不妨继续往下阅读哦。

关键字: I2C 总线

EFFISAYIL™ 2临床试验显示,佩索利单抗能显著预防泛发性脓疱型银屑病(GPP)发作长达48周1,2 该研究结果建立在EFFISAYIL™ 1临床试验数据基础之上,EFFISAYIL™ 1临床试验表明使...

关键字: GP UI
关闭
关闭