使用中断方式还查询方式?

本文翻译自MMA8452Q(一个加速度传感器)的application note AN4067 -----Data Manipulation and Basic Settings of the 

MMA8451, 2, 3Q section 9.0

 

9.0 Polling Data vs. Interrupts


每当有新数据时,可以通过轮询方式,对MCU设置硬件中断方式,及异常等方式来获得。尽管轮询方式低效,但是在不同的情况 下,一种方式会比其它方式更合你心意。

 

9.1 Polling Data

 

轮询方式只需对设备进行少量配置,易于实现。但是,MCU必须以比输出数据速率更快的速率来查询传感器。如果查询速率慢了,样例数据就会被错过,可以通过查询STATUS寄存器的重写标志位来检测这一条件。

 

9.2 Interrupt Routine to Access Data

 通过中断方式获得数据流比轮询方式更有效——因为只当加速度传感器有新数据时MCU才会处理。当有新的数据时,这数据是只读的。如果没有及时读新数据,STATUS中相应的重写标志位会被置1. 下面讲解怎样配置设备,以使当有新数据时产生一个中断。下面是MCU的中断服务例程(Interrupt Service Routine ISR),当有新数据时,执行这个例程,这个例程读出14bit,12bit 或者10 bit的XYZ数据,并设一个软件标志,以表明有新数据到达。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值