一、传感器信号是模拟信号
这一个情况,可以使用MCU或是DSP的ADC,也可以使用片外的ADC芯片,选型可以到TI或是ADI的官网上找找。根据你的采样率与采样精度。
这里就是对ADC的采样与计算了。
根据你的实时性要求选择算法。
比较常用的算法可以搜索一下。
二、使用传感器 模块的
这些模块一般都是I2C的通讯接口,你只需要进行I2C的通讯配置,将读出的参数进行计算或是操作。
在A/D转换器前加个多路复用(Multiplex);完全同时的多路采集用多路A/D转换器。通过编程来实现有序的处理
轮询
就是你在一个while(1)里面加入采集多路信号的指令
还有另外一种方法,就是你去找个专门的AD转换器,带I2C接口的那种,比如ADC0809,也可以很方便达到这个要求
您是在於問說如何處理多個Analog訊號吧?
基本上最簡單的就是一個傳感器對應一個ADC通道
不足可以用AD/DA IC去擴展
這是一種方法
因為您傳感器是接在同一腳上的,
所以無法動態切換其他傳感器的,
但可以用多工器(multiplexer)配合邏輯來選擇資料線N,就可以選擇2^N個傳感器通道
這是另外一種方法
以上供您參考
同意Eagleson和MOP的意见。
硬件:
采用多路复用器;也有一些AD自带多路复用器;
软件:
这个问题涉及到采样速率的问题。如果采样速率不高,比如1Hz,那么单片机有足够的时间来采集1个通道,然后再切换到下一个模拟通道。
如果采样速率很高,比如1KHz, 那么就要精确计算每个通道信号的时隙分配,确保通道之间不要构成串扰。