Linux用的4.1的内核,芯片是iMX6Q,AD用的是TI的ADS1178,52Ksps的采样率。
作为初学者,我一开始的想法用的系统自带的spi、gpio驱动,使用ADS1178的dataready信号作为GPIO外部中断信号,用户态用poll监测gpio中断然后再read AD的数据,试了下发现根本无法快速响应52K的采样率。
后来我想了想是不是只能编写AD驱动在内核进行数据采集,不知道这样能不能保证AD数据不丢,即外部中断到达后的20us内要用SPI读完几十个字节,SPI操作是不是不能在驱动gpio外部中断函数内进行?如果不能,是不是很难保证数据不丢?
希望大神们能给个思路。。。