主芯片IO口复用设计方案研究

2022-09-07 07:05:06李荫珑丘珊珊
日用电器 2022年7期
关键词:低电平高电平按键

李荫珑 丘珊珊

(珠海格力电器股份有限公司 珠海 519070)

1 设计背景概况

随着消费者的审美观的提高,产品设计的美观感、人性化设计要求也越来越高,目前,在空调控制器设计中,需要很多引脚来实现各种输入检测和输出控制。因为成本原因,常常不能选择更多引脚的芯片,而需要合理利用低成本芯片,将芯片原本有的资源利用到极致[1]。在使用过程中,许多用户也发现了单片机的部分缺点,最典型的缺点是:输入输出(IO)端口有限。因此如何增加和有效利用单片机的端口成为应用系统设计中的重要环节[2]。如需要实现更多功能,需要更多的IO口必不可免,可根据功能需要设计IO口复用电路,根据设计方案,选择相应的复用电路,有效解决主芯片IO口的紧缺问题,在芯片选型上,便可选择低成本的主芯片,在IO口的复用方案上,主要有以下几种方案,选择口电路与显示电路复用、拨码开关电路与显示电路复用、选择口电路与2003芯片驱动电路复用、按键电路与显示电路的复用,开发产品时,根据产品功能,设计不同的方案。

2 IO口复用硬件设计

2.1 与2003芯片复用

当选择口较多,且主芯片IO口资源有限时,可设计选择口与2003芯片复用,芯片口上电设置为输入口,检测选择口状态,确定选择口状态后,将芯片口设置为输出口,用于驱动2003芯片。此处选择口主要为上电时需要确定的某一种状态,例如:机型选择口、快测口等;2003芯片,主要用于负载的驱动,例如:步进电机、电子膨胀阀等负载,以步进电机的复用为例,其电路原理图可按如图1 所示。图中2003芯片用于驱动扫风电机,R1、R2、R3、R4为复用选择口时所用的上拉电阻。以其中一路为例,做为选择口时,通过上拉电阻R1可确定高电平状态,如果不装上拉电阻时,通过限流电阻R5以及2003内部电阻下拉到低,确定低电平状态,此可实现选择功能,确定选择功能后,正常作为2003的驱动口使用。

使用该复用电路,可节省4 个IO口,如果2003芯片管脚全使用的情况下,最多可节省7 个IO口。对于该电路设计,需要使用2003芯片内部固定的电阻,在外围电路的上拉电阻、芯片口限流电阻,需要根据实际情况进行选定,确保高低电平的可靠性。以其中一路为例,R1以及R5的选型需要满足芯片口的拉电流、灌电流、高低电平输入电压等要求。当选择口需要低电平时,即不安装上拉电阻R1时,具体的计算如下:拉电流I1=(5-0.7-0.7)/(R5+R内),此驱动电流不得大于主芯片IO口的驱动电流(拉电流)。当选择口需要高电平时,即安装上拉电阻R1时,具体的计算方法如下:拉电流I2=(5-0.7-0.7)/(5-0.7-0.7)/(R5+R 内),灌电流I3=5/R1,输入电压V=(5-0.7-0.7)*((R5+R内)/(R5+R内+R1))+1.4。(注:R内为2003芯片内部限流电阻,一般为2.7 K,此外需要考虑R1、R5、R内等电阻的极限电阻值,例如部分电阻有1 % 或5 % 的阻值偏差)。拉电流、灌电流、输入电压均需要满足主芯片的规格要求,根据以上的计算公式,便可确定上拉电阻以及限流电阻的阻值,确保主芯片IO口的输入输出均可满足芯片要求。避免造成芯片损坏或功能缺失。实现选择口与2003芯片的复用,实现IO口复用的可行性,从而较少IO口芯片的使用。

2.2 与显示电路复用

显示的使用应用于各个领域,例如空调的温度、模式显示,小家电产品的功能指示灯等,显示模块主要涉及数码管、LED指示灯等,其一般以共阴极或共阳极进行电路设计,常用的显示驱动方式有阴极扫描、阳极扫描,其占用芯片管脚最少需要9 个IO口,如在设计开发中,主芯片资源较少时,可设计与显示电路复用的方案,具体电路原理图如图2所示,图中涵盖了拨码开关与显示电路的复用、快测口与显示电路的复用、选择口与显示电路的复用、开关按键与显示电路的复用。

显示扫描与复用功能(拨码检测、快测口、按键检测、选择口检测等)使用分时复用的方式进行检测和显示驱动(注:图2中,阴极A~G,使用低电平扫描),可配置0.625 ms的定时中断,显示扫描及复用检测功能放至中断中处理,0.625 ms分时处理显示驱动和复用功能的检测,为减少中断的处理时间,中断中仅处理驱动的扫描以及复用功能的扫描检测,具体的显示内容以及复用功能的处理放至主循环中,此可提高中断的执行效率。需要注意的是,在处理显示过程中,需要合理操作位码、段码开通和关闭时序,可解决显示漏光的问题。例如:共阳极数码管结构,进行阴极扫描,关断顺序为关阳极,再关阴极;开通顺序为先开阴极,再开阳极;共阴极数码管结构,阴极扫描方式,关断、开通顺序则反之。

电路图中二极管,其在电路中的作用主要为多路复用功能同时起作用时(例如两个按键同时按下),防止相互影响,防止检测错误。图2中数码管A~G口扫描低电平,二极管方向不可更改,如果端口A~G扫描输出为高电平,则需要更改二极管方向,上拉电阻更改为下拉。如果复用电路中无二极管,则两个按键按下或多个复用功能起作用时,复用功能检测不正确,且会影响显示,故此处的二极管不可少,二极管的选型需要根据具体主芯片电气特性决定,如主芯片检测的低电平要求的电压较高,可选择导通压降较高的二极管,反之,则需要选择导通压降较低的二极管,避免主芯片无法准确检测到可靠的低电平信号。也可在公共端使用三极管,利用三级管的开关确定输出状态,如此便可不考虑二极管的导通压降,选择较低成本的二极管便可。

根据此电路设计方案,使用分时复用的方式,可有效减少IO口的数量,适用于IO口资源少的主芯片设计中,根据此电路的设计,增加一个IO口,便可设计8 个(8 段位选)按键(或者选择口、拨码开关、快测口等)。相对于单独显示、单独按键驱动、单独拨码开关或是单独的选择口配置电路,此方案有效节省IO口,功能灵活可靠。

3 IO口复用软件设计

3.1 与2003芯片复用

在软件设计中,上电初始化将复用的IO口设置成输入口,在主函数循环处理之前,读取完成选择口的状态(高低电平),此需要注意的是,读取选择口时,注意防抖操作,此方案可选择连续时间读取相同状态,如果在此连续时间内,读取状态一致,则确定选择口功能。待完成读取选择口功能后,将复用的IO口设置成输出状态,进行输出驱动相应的负载操作。

3.2 与显示电路复用

配置一个定时中断,每间隔0.625 ms进入中断处理,显示驱动以及复用电路的检测,通过分时复用的方式进行处理。

上电初始化时,将显示模块的段选、位选端口设置成输出状态,默认高电平或是低电平(根据具体电路确定,原则是上电数码管或是LED指示灯不点亮),复用端口的检测口设置成输入状态。

进入显示驱动处理时,每次进入显示处理,轮流对位选端口输出低电平,当需要点亮某一路的LED段时,通过公共端口输出高电平(根据实际电路设计确定,共阴极,公共端需要高电平,位选端需要低电平),便可点亮对应的LED。

进入复用电路检测时,根据对应显示位选依次输出的控制(低电平),当有按键按下时,复用端口便可检测到低电平状态(如无按键按下,则为高电平),便可检测是否有按键按下,同理,拨码开关检测、选择口检测、快测口检测,如果检扫描到该位选时,检测到对应的低电平状态,便可确定拨码开关、选择口、快测口的状态。在检测复用功能时,需要做防抖处理,一般情况,为了不增加硬件成本,首选软件防抖的形式,可使用芯片底层输入防抖配置或软件功能进行检测延时处理,即通过连续时间采样到相同的高电平或是低电平信息,才确定有效输入状态。

程序设计时,需要注意该输出端口是否为漏极开路口,如果是,确定该芯片是否可进行软件设置(设置成普通输出口),如果不能进行软件设置,需要在该端口配置上拉电阻,确保可输出高电平状态,也避免开发工作来回修改。

4 实验验证

根据复用电路及软件设计,在产品使用中,测试控制器电路板上相关波形,如下图3为测试与显示电路复用方案中,芯片口测试波形。绿色为复用口均导通(安装电阻或按键按下或拨码开关拨至ON位置)时芯片口波形,当阴极输出扫描低电平时,芯片检测均为低电平,测试波形符合设计要求。黄色线为复用电路中其中6 路导通,2 路不导通的情况,当阴极输出扫描低电平时,其中2 路检测为高电平外,其余均为低电平,测试波形符合设计。根据测试情况,高点平4.63 V,低电平0 V,满足主芯片检测高低电平电压要求。

图4为单按键按下时,按键检测口测试波形图,测试高电平时长1.25 ms,占总时长的1/8,测试数据满足设计要求。

图5为上电时刻,与显示电路复用芯片口检测波形,软件设计对选择口、拨码开关、快测口等需要掉电配置有效检测的功能进行检测。检测完成后,释放相应的端口。根据实际测试波形所示,上电后,先进行复用口检测,使用16 次防抖检测(16 次连续检测状态有效),检测有效后,程序运行其他功能,满足设计要求。

图6为2003驱动步进电机时的复位电路上电时芯片输出波形,上电后先进行选择口判断,上电时IO口为输入口,理论计算检测高电平为4.48 V,实际测试4.52 V,待确认后,芯片口做输出驱动2003,根据实际测试波形,满足设计需求。

5 总结

如上IO口复用的硬件软件方案,经过实际测试、分析、运用到产品中,方案可行。可正确驱动2003的同时,可正确检测选择口状态;在显示正常情况,按键检测无异常,选择口、拨码开关、快测口检测正确。且多按键、按键与拨码开关、快测口与选择口等多复用电路之间相互无影响、不干涉;软硬件设计方案稳定可靠,可大范围推广使用。

通过以上两种方案,在日常电子控制器产品开发时,可有效解决主芯片IO口短缺的问题,目前,家电产品、工业产品等各行各业均在降低开发成本,主芯片有从60引脚(或是更多引脚数量)降低到32引脚,按以往的设计思路,俨然不能满足目前的产品开发需求,需要寻求降低IO口的设计方案,显然,以上两种方案设计满足目前低成本芯片的开发需求,且软硬件开发难度不大,可推广性强。

此方案可推广使用的场所范围较广,需要使用到2003驱动,具有显示(数码管或者LED指示灯)功能的控制器均可使用,例如家电产品、工业自动化设备以及智能产品等,均可运用此设计方案,以解决引脚欠缺的问题。

猜你喜欢
低电平高电平按键
数字电路中“逻辑非”的用法辨析
一种基于FPGA的PWM防错输出控制电路
铁道车辆高/低电平信号智能发生器设计
基于有限状态机的按键检测程序设计
电子制作(2021年3期)2021-06-16 03:14:26
TS-03C全固态PDM中波发射机开关机控制电路原理及故障分析
科技传播(2019年15期)2019-08-22 08:07:44
2017款凯迪拉克2.8L/3.0L/3.2L/3.6L车型低电平参考电压总线电路图
DM 50KW中波广播发射机欠推动故障分析
PDM 1kW中波广播发射机保护电路分析
一种多方向导光按键结构设计
电子制作(2016年1期)2016-11-07 08:43:05
按键的多种状态检测及消抖处理方法
家电科技(2013年4期)2013-07-09 10:55:08