赛普拉斯公司的CY
图1:模拟多路复用器/系统连接。
工业控制应用常常需要许多模拟输入,即使是具有一个PWM输出的最简单的风扇控制器也有可能需要对数量众多的温度传感器进行监控。模拟输入是宝贵的资源,经常很快就会被消耗殆尽。在很多场合,设计工程师不得不采用一个更加昂贵的部件,从而导致一些多余的空闲资源,或者必须增加外部多路复用器,以满足对模拟输入信号访问次数增加的需要。而且,传感器并不总是提供一个缓冲输出电压,它们有可能将信号转换成某些非电压参数,比如电阻或电容。在不少情况下,信号调节的成本会超过控制器的成本。
在选择控制器的时候,始终存在这样一个问题,那就是设计工程师必须规定多少个模拟输入。对于一个只需要6个输入的系统而言,8个输入是否足够?需求会不会继续提高?一个特定的控制器系列能够处理多少个模拟输入?如果我的设计需要升级至一个具有更多输入的器件,那么我的可选方案是什么?这种选择必须在竭力满足项目的成本要求、并同时顺应客户和市场部门不断变化的规格要求的情况下做出。一种简单的解决方案便是使每个引脚都能够成为一个模拟输入,而这在过去是做不到的,I/O模拟多路复用器将其变为了现实。
I/O模拟多路复用器是一种大型交叉开关,它允许将任何引脚连接至一个控制系统的模拟阵列。就是这样的一个多路复用器被内置于CY
图2:具有电流DAC的模拟多路复用器。
传感器是一种换能器,用于把某种物理量变换成可进行电气测量的参数。对于许多换能器来说,这种转换的最终结果是电压。例如,LM35温度传感器就提供了一个与温度成正比的输出电压。温度的测量只需对输出电压进行数字化处理,采用适当的转换公式(在本例中为:Temp=Vmeasured/10mV)即可把电压转换成温度。
以一个需要在系统中测量16处温度的控制应用为例,简单的做法是在所需之处安放传感器并将其各自连接至一个引脚。模拟阵列被配置为一个ADC并连接至模拟总线。利用该拓扑结构,即可将每个传感器顺序连接至模拟总线并进行数字化处理。某些类型的传感器具有一个阻性输出,此类传感器包括热敏电阻、光电管、应力计和传导单元。这些传感器的信息读出需要通过电阻测量来完成,通常的做法是采用一个DC电流来模拟传感器输出并测量负载电压。
为了方便电阻的测量,在CY
现在,传感器电阻读数的准确度仅受限于基准电阻器的准确度和ADC的分辨率。任何增益误差都不会被带入计算之中。
然后,假设先前讨论的控制应用在规格上有一个变化,即要求用热敏电阻来代替LM35。所选的特定热敏电阻具有10kW/
图3:具有放电电路的模拟多路复用器。
有些类型的传感器具有容性输出,其中包括加速计和压力传感器。与产生DC负载电压的阻性传感器不同,当采用DC电流来激励时,容性传感器将产生一个斜坡电压,斜率与激励电流成正比,而与测量电容成反比。为了方便该转换速率的测量,在CY
比较器的输出负责控制放电开关。该拓扑结构形成了一个弛张振荡器(relaxaTIon oscillator)。当斜坡电压上升至跳变点(trip point)时,比较器将关闭放电通路并重新把模拟总线放电至地电位。然后,比较器释放开关,电压继续上升。比较器输出被馈送至配置了一个频率计数器或周期定时器的数字部分。电容值可以从测量的数字信号推导出来。
现在,假设一个需要测量压力的控制应用。微加工技术的发展使得能够利用固定在玻璃衬底上的硅薄膜来制作廉价的压力传感器。压力的变化会使薄膜产生偏移,从而导致电容的改变。然而,热膨胀也会引发电容的变化,使得这些传感器容易受到温度的影响。相应的解决方案是在相同的衬底上设置一个基准电容器,并测量两个电容的比值。
在测量压力时,将两个容性输出均与PSoC引脚相连。模拟部分如今被配置为一个具有1.3V触发电平的采样比较器,并用于控制放电开关。电流源被设定为10μA。对于一个10pF的标称电容,产生的电压变化斜率为1V/μs。在该速率条件下,斜坡电压将需要1300ns的时间才能达到1.3V的跳变点。数字部分计算出的频率为769kHz。测量频率与测量电容成反比。对每个电容进行顺序测量,并计算一个比值。这两个数值之比将消除任何由于电流源或用于计算频率的系统时钟的不精确性所引发的误差。