昨天完成了OK6410输出PWM信号,今天编写程序完成读取传感器GP2Y的值,所用的引脚是开发板上的ADC1,直接将传感器的输出端接上即可,读取引脚数据的代码也挺简单:一直读取数据,保存读取到的最大值,没过一秒输出这个最大值并重置最大值,这样得到的数据会比较准确。但是也存在问题:一直用系统调用read(),对系统的开销比较大;如果有其他进程运行会影响read()的调用时间,得到的数据不会很准确。
解决方案:在一个驱动程序中实现不同引脚的驱动,一个做输出,一个做输入,这里面涉及到对定时器的共同使用问题。还没着手做,明天再说。明天补上ADC1的读取代码和输出波形。
读取adc1的数据: