PSOC微处理器拥有多系列、多规格的应用芯片,以满足不同用户的不同层次的需要,如CY8C26XXX/CY8C24XXX/CY8C22XXX等等。它的出现使设计者逐步摆脱了板级电子系统设计方法层次而进入芯片级电子系统设计,减少了单片机的品种和规格,同时更有利于新品开发和升级换代。与同种价位的普通单片机比较,其丰富的内部资源、新颖的设计界面、灵活的设计方式、简单的编程技巧都使其极具特点。文中以CY8C24223为例,介绍一种典型应用――基于PSoC可编程片上系统的感烟火灾探测器。它将对烟雾变化信号的放大、处理、模数转换功能集成到微处理器的内部完成,减少了芯片的外围器件,提高了系统整体的集成性能。
1 内部资源及开发环境
1.1 内部资源介绍
PSoC内部有一个高速M8C内核、快闪内存和SRAM数据内存


其中的n是抽样等级。这个抽样滤波器是由软硬件协同工作完成的。式(1)中分母部分的二次积分项由硬件实现,分子部分的二次差分项的抽样率计算由软件实现。
2.2 动态可重新配置功能
嵌入式系统设计人员利用PSoC架构的灵活性,在单个器件上动态地创建多种

对于增益≥1的运算放大器,可编程电阻风、Rb、Ra串联,Rb一端连到放大器的输出端。Ra一端连接VGND,VGND有多种选择,用户可根据不同需要将VGND接数字地、模拟地、内部带隙电压或外部输人电压信号;Rb与Ra中间连接端连到放大器的负反馈输人端。由此,可推出放大器的传输函数如下:
![]()
对于增益<1的衰减运算放大器,需配置成电压跟随器,可编程电阻Rb一端连到放大器的输出端,Ra一端连到VGND,Rb与Ra中间连接端连到用户模块输出端。由此,可推出负增益放大器的传输函数如下:
![]()
在应用中,PGA模拟模块的输入端、增益参数、输出端都可进行动态配置。其输入端可以和一个模拟信号输入引脚连接,也可以动态地将此PGA模块与另一个模拟信号输入引脚相连接,在不同时刻完成对多路模拟输入信号的放大工作,而无需在单个器件上配置多个PGA模块;其增益参数也可以动态调节(从负增益0.06倍到最大正增益48倍),极方便地拓展了PGA模块的输入电压范围;其输出端也可以按需要动态地接到输出引脚、A/D模块输入端或滤波器。其动态重配置部分的程序如下:
3 CY8C24223在感烟火灾探测器中的应用
光电感烟火灾探测器应用散射原理,将烟雾浓度的变化转化为微弱的光电信号,经放大和滤波处理后,进行A/D转换,完成对烟雾浓度的检测,实现火灾报警功能。感烟火灾探测器的工作原理框图如图4所示。

目前,光电感烟火灾探测器多使用带A/D转换的普通嵌入式微处理器,需通过外部电路完成信号的放大和滤波处理工作。在产品的原理设计过程中,需要反复对外部电路作硬件参数调整;在PCB板布线时,又要注意避免来自空间及器件间的电磁干扰。可以肯定,要解决这些问题是件非常复杂而费时的工作。 当选用CY8C24223芯片作为探测器的微处理器时(虚线框内为PSoC芯片内所具有的模块功能),与选用带A/D功能的微处理器相比,节省了大量的外部资源,如放大器及其相关元器件、滤波元器件等等。设计人员可在PSoC的设备编辑器中,通过配置模拟模块阵列和数字模块阵列完成信号放大、滤波、模/数转换、数据存储、通信等工作,并避免了由于放大器等外围器件在PCB布线时造成的电磁干扰问题。更为重要的是,用户可根据环境的变化,如白天与夜晚、洁净空间与污染空间,动态配置放大器的增益系数,并实现多路模拟信号输入的检测,以降低火灾探测器的误报率。
在探测器的快速原型设计中,通过片上系统的可编程混合信号阵列的集成应用及动态配置,极大提高了工作效率,使开发成本降低了1/2,PCB的板级空间缩减了l/3,生产成本降低了1/10。
结 语
PSoC方便、快捷的设计界面,面向对象的设计开发系统,混合信号阵列的模块化及动态可配置功能使其在嵌入式系统应用中拥有更为灵活的设计方式,使设计人员能够随意创建新的系统功能。利用PSoC可以快速、便捷地完成相应程序的开发工作,缩短产品的研发周期,降低开发成本和生产成本。