简单手势唤醒便携设备的设计思路及其代码
en (that is, x[0])
* uint8 *weights - w[0]...w[QUEUE_SIZE]
* uint8 *queue - the discrete sequence x[0]...x[QUEUE_SIZE]
*
* Returns:
* The FIR-filtered output, y
*/
uint8 fir_filter(uint8 input, uint8 *weights, uint8 *queue)
{
uint8 i;
int sum = 0;
// pop first entry in the queue, then
// push new data into the last position
push_into_queue(queue,input);
// input is now x[0]
for (i=0; i {
sum += weights[i]*queue[i];
}
return (sum/QUEUE_SIZE);
}示例代码3
// this handles hardware-level interrupts on the micro
__interrupt void irq_handler( void )
{
...
// if the hardware interrupt came from the MAX44000 sensor
// pulling its \INT pin low
if ( irq_source == MAX44000 )
{
// if the device is in sleep mode
if (device_status == SLEEP_MODE)
{
device_status = WAKE_MODE; // wake up the device
...
// reconfigure whatever else you need here as the system wakes up
}
// otherwise, handle it however it is you wish
else
{
...
}
}
...
}
/**
* configure_max44000_for_sleep_mode()
*
* Sets up the MAX44000 to trigger a hardware interrupt when the proximity
* counts go above some set threshold.
*
* Arguments:
* uint8 upper_threshold - the set threshold (8-bit mode)
*
* Returns:
* n/a
*/
void configure_max44000_for_sleep_mode(uint8 upper_threshold)
{
uint8 max44000_thresh_registers[] = {0x0B,0x0C};
uint8 max44000_upper_thresh[] = {0x40,0};
max44000_upper_thresh[1] = upper_threshold;
// do a consecutive write of 0 followed by upper_threshold to
// registers 0xB and 0xC, respectively
// MAX44000_ADDR is usually 0x94
// interrupt will trigger only if proximity value is above the threshold
write_i2c_register(MAX44000_ADDR,max44000_thresh_registers,
max44000_upper_thresh,2);
// write to bits 2 and 3 of register 0x0A here if you wish to set the
// persist time to anything other than one sample
// writes to register 0x01 to enable interrupts on the MAX44000
max44000_enable_interrupt();
return;
}
- 设计用于嵌入式系统的图形用户界面(12-20)
- 复杂电路接地和供电的实用方法(07-06)
- 可穿戴设备有哪些图形内存需求?(03-16)
- 大联大世平集团推出基于 Intel、Rockchip、Spreadtrum的平板电脑解决方案(12-21)
- 大联大旗下富威推出基于晶晨M801的平板电脑参考设计(12-21)
- 智能手机和平板电脑设计中的单键开 / 关机和复位的智能方案(10-29)