SCM作为一般电子产品项目的关键组件,经常被工程师用来将逻辑运算应用于处理数据,甚至包含一些软件算法。例如,工程师正在开发中。
在家用电饭煲项目中,单片机可以作为数据计算的核心设备,负责实现加热,定时,显示,按键等功能。在电动剃须刀项目中,单片机可以作为电机控制的核心设备,负责实现电机的正向旋转和电池电源管理等功能;在办公室碎纸机项目中,单片机可以用作逻辑分析的核心设备,负责处理正向旋转,反向旋转,阻塞旋转和人体保护等功能的实现;在此类项目的开发中,工程师将根据设计的功能要求确定微控制器所需的内部资源,即确定微控制器的类型。常用单片机的内部资源包括引脚数量,时钟频率,存储空间和通信接口等。工程师根据这些信息选择匹配的单片机模型。
确定MCU型号后,工程师可以执行项目的特定研发工作。硬件工程师开发电路原理图设计,软件工程师开发程序的代码设计。在项目开发阶段,工程师可能会遇到类型问题:
单片机项目
当项目的研发接近完成时,需要暂时添加其他功能;或者项目版本需要在更新迭代过程中临时调整其他功能;或者
面对这种情况,这些临时的添加和调整可能会导致先前选择的MCU的IO引脚数量不足的问题。当MCU的IO引脚数量不足时,工程师如何更好地解决呢?
工程师可以重新选择单片机的型号,并通过简单地增加IO引脚数直接解决。尽管可以解决此问题,但主要存在两个问题
1,重新选择新的MCU型号,相关的软件代码相当于需要重新开发设计,这增加了项目的开发工作量,工作效率不好;
2.重新选择新的MCU模型,与之关联的硬件电路相当于需要重新开发和设计,需要重新调试验证,尤其是一些可靠性测试的测试;
由于重新选择新的MCU型号存在这些问题,是否还有其他解决方案可以更好地解决它?
答案是肯定的。在项目开发过程中,当微控制器的IO引脚数量不足时,除了重新选择新的微控制器模型解决方案外,还有一种使用IO引脚扩展芯片的解决方案。例如,AL5524芯片是单个芯片。IO引脚扩展芯片可以解决此类问题;
那么,AL5524 IO引脚扩展芯片具有什么样的特性?如何解决微控制器的IO引脚数?如何扩展微控制器的IO引脚数量?
AL5524芯片引脚定义
Pin1引脚:INTB是实现中断功能;
Pin2&Pin3&Pin21引脚:ADD的功能是通过硬件定义IIC通信的地址信息。
Pin4〜Pin11引脚:RA是芯片扩展的IO引脚;
Pin13〜Pin20引脚:RB是芯片扩展的IO引脚;
Pin22和Pin23引脚:IIC通信接口功能引脚;
Pin12&Pin24:芯片的电源输入引脚;
AL5224引脚定义图
通过定义引脚功能,工程师可以基本分析芯片的工作原理,即通过IIC接口扩展微控制器的IO引脚数量,这从芯片的内部结构框图中更容易看出来。 。
AL5224芯片内部框图
在AL5224芯片的内部框图中,它主要包括四个部分:地址发生器,IIC控制器,寄存器和控制器以及普通IO引脚端口A和端口B;
AL5224功能框图
(1)地址生成器主要是通过ADD0,ADD1和ADD2的外部硬件电路定义IIC的通信地址。常见的简单设计是将ADD0,ADD1和ADD2直接接地。
(2)IIC控制器,主要是AL5224芯片与单片机之间的通讯桥,用于数据交换,实现IO引脚扩展功能;
(3)寄存器和控制器主要用于在此处临时存储IIC通信数据,方便转换为端口A和端口B引脚输出;
(4)通用IO引脚Port A和Port B,这两个引脚是芯片需要扩展的IO引脚,等效于单芯片的IO引脚功能;
在分析了这些内容之后,工程师可以对AL5224芯片的功能有更清晰的了解;但是这些内容仍然只是理论上的,那么如何将它们专门应用于项目开发?如何设计?如何开发电路?
AL5224芯片应用电路
在了解了AL5224芯片的基本电路特性之后,工程师迫切希望解决项目中的实际问题,否则将失去其工作意义;
AL5224芯片应用电路
AL5224芯片的应用电路易于工程师进行设计和开发。只需将SCL和SDA引脚连接到微控制器的IIC引脚,以便微控制器可以轻松解决扩展IO引脚数量的问题;微控制器使用2个IO引脚SCL和SDA扩展16个IO引脚的数量,这也实现了扩展IO引脚数量的功能。
在介绍了AL5224芯片的电路特性之后,工程师可能会在比较中发现,与重新选择新的单芯片模型相比,AL5224 IO引脚扩展芯片解决方案更具通用性和可操作性。具有双重性,必须有正反两面,AL5224芯片电路解决方案也有一些缺点
a)增加项目的BOM成本,主要是由于AL5224的芯片成本增加;
b)AL5224 IO引脚扩展芯片扩展了14个IO引脚的数量;显然,在实际项目开发中,即使AL5224系列芯片也支持扩展8个IO引脚的数量,很少会需要扩展14个IO引脚的数量,但这会造成一些多余的IO浪费固定资源;
,