基于嵌入式PsoC的MCU选色控制器设计
扫描二维码
随时随地手机看文章
阐述Cypress公司的可配置片上系统(PSoC)的功能及其实现结构;结合选色控制器开发实例,详细阐述使用PsoC开发的方法和流程。其设计方法也可用于其它控制系统或工业自动化等各种应用。
引言
最近几年,随着电子技术及半导体工艺的迅猛发展,片上系统(SoC),特别是可配置片上系统PsoC(Programmable System on Chip),已逐渐成为微控制器的主流产品。因此,要求设计工程师必须迅速地掌握SoC的开发特点和要求,尽快融入SoC的开发大潮中去。但是,SoC系统设计带来了与传统系统设计全然不同的挑战,其中包括从处理器和存储器的选择到产品环境的考虑。如果设计工程师能够深入理解SoC的开发特点,并且考虑部件之间如何交互,以及各种因素带来的影响等问题,就可以直接提高产品设计的成功率和开发效率,降低系统开发的复杂性和费用,同时增强系统的可靠性和抗干扰能力。
文章根据本人的开发经历,结合选色控制器的开发过程,为设计工程师提供指导,从所有层面上帮助他们为今后的设计项目做更好的准备。
人们在各种各样的微控制器和嵌入式控制系统设计过程中发现,并非不同的设计就必须用到完全不同的外围器件;相反,这其吸大量共的部分,因此,启发了芯片设计工程师建立此种可配置微控制器。在芯片内建立一些通用的数字和模拟块(digital and analog block),把它们配置成微控制器的各种功能模块(Module)。这样,在ASIC设计过程中,应用工程师就可以根据自己的不同设计要求调用不同的功能模块,完成芯片内部的功能配置,实现使用一块芯片就可以配置成具多种不同外围器件的微控制器。
目前,市场上有Cypress MicroSystems,InC和Cygnal Integrated Products,Inc生产可配置的SOC微控制器。本控制系统选用Cypress MicroSystems,Inc生产的M8C内核PsoC微控制器作为控制核心。
下面我们首先熟悉开发的任务要求。选色控制器是一个由信息采集、键盘、显示及输出驱动等部分组成的控制系统,主要用来取代进口和国产剑杆织机上的纸带输入式光电纬纱选色器。
为了便于用户根据不同的实际需要对工作方式及其它参数进行修改,要求所有的参数及组态均可通过面板睥几个操作键进行输入、检查、修改;并可在突然并机的情况下,重新开机后,自动恢复断点参数信息。
根据用户提出的技术指标,我们还必须把它进步量化,并且进一步完成功能设计方案。
1 硬件方案设计
1.1 选择微处理器
在设计任务确定后,应对控制系统所需要的硬件做出初步估计和选择。微处理器是整个控制系统的核心,它的选择将对整个控制系统产生决定性的影响。一般应从以下几个方面考虑微处理器是否符合控制系统的要求:字长、指令的种类和数量、内部寄存器的种类数量、微处理器的速度、中断处理能力以及微处理器的外围电路配套等。对于外围器件的来源、软件的运行等也是设计人员必须考虑的因素,因为其涉及到整个系统实时控制能力以及硬件和应用程序的分开。
Cypress MicroSystems,Inc生产的PsoC是新一代功能强大的8位可配置微控制器。PsoC微控制顺片内有8根独立的输入和输出总线,分别与数字和模block相连。其内部可用的block资源包含:4个基本类型和4个通信类型的数字block,各有3个CT、SCA和SCB类型模拟block。使用这些资源可以配置成不贩功能模块,用以实现微控制器标准外围器件的功能。
使用基本类型数字block可配置:
*计数器(counter);
*定时器(timer);
*脉宽调制(PWM);
*循环冗余码校验(CRC)串行接收(serial receiver)。
使用通信类型数字block可配置:
*基本数字block;
*串行发送(serial transmitter);
*串行接收(serial receiver);
*SPI主端(SPI Master);
*SPI从端(SPI Slave)。
使用模拟block可配置:
*多极滤波器(multi-pole filters);
*放大器(gain stages);
*数模转换(DACs);
*模数转换(ADCs)。
在模块功能设计方面,Cypress公司把各种常用处理器的外围器件作为设计Module的标准,把芯片内数字和模拟block资源组配成标准的功能模块(module),并把这些功能模块存储在器件库中。用户通过使用其提供的集成开发平台(IDE),调用这些功能模块、设定模块时钟输入,配置全局变量和局部变量,设定用户功能参数,完成功能模块的配置。另外,这些功能模块还可以相互连接,以完成更加复杂的功能。因此,通过合理的配置数字和模拟block就可以在片内实现大部分外围器件的工作。并且,由于设定的参数量存储在片内Flash中,因此,无论是在设计之初,还是在产品应用现场,工程师均通过软件重新配置数字和模拟block参数,从而增加/删除功能模块,定义输入/输出引脚,完成硬件升级。这就是可编程嵌入式片上系统的动态重新配置能力(Dynamic ReConfigurability)。因此,可配置片上系统(PSoC)允许用户根据自己的需求,定义整个系统所需要的功能模块的种类和数量,分配芯片的资源,完成芯片内部的功能配置。
对于本控制系统来说,可以利用其内部的多个定时器功能模块,完成各个动作之间的间隔和定时,从及复杂的逻辑关系;利用A/D、PGA模块,实现键盘输入等功能;利用液晶模块,实现参数的显示等功能;利用PsoC具有I/O多的特点,可以方便地实现对多个开关信号量的控制。因此,利用PsoC就可以实现使用一块芯片来配置多种不同外围元器件微控制器。建立一种可配置控制器,可以实现从确定系统功能开始,到软/硬件划分,并在片内完成整个选色控制器的设计过程。
本系统使用PSoC微控制器具有三个明显优势:①通过使用数字和模拟block配置不同的外围器件,大量的外围器件可以设计成SoC;②通过使用内部总线连接用户所选的功能,用户可以建立实际系统信号链,减少大量的外部线路,甚至可以重新分配输入/输出引脚,帮助优化电路板的布局;③最大的益处是它可以实时重新定义模块功能,迅速完成硬件升级,能够适应非常复杂的实时控制需求,同时增强系统的可靠性和抗干扰能力。
1.2 确定总体控制方案
选色控制方式是一种典型的顺序控制方式。顺序控制是工业自动控制系统中一种常见的控制方式,其控制系统一般具有以下一些特性:开关信号量多、定时范围大、逻辑关系复杂、可靠性要求高等。因此,在总体方案设计时必须考虑其控制特点。
PSoC微处理器的所有输入/输出引脚都可以申请中断,各个内部数字和模拟模块也可以申请中断。因此本系统可以根据要求,方便灵活地申请执行多个中断。
经过对上述各项认真分析后,就可以画出整个系统的概略框图。本选色控制系统是由存储器、输入/输出电路、液晶显示模块、键盘电路等部件构成,其系统组成如图1所示。
1.3 具体硬件设计方案
进入具体设计阶段,必须认真考虑和反复权衡硬件和软件的分工及比例。
硬件和软件设计过程必须同时进行,两者相辅相成。对于本控制系统的设计来说,由于大部分外围器件的功能是在微控制器片内实现的,因此,外部硬件的主要工作集中在输入/输出接口设计上,而输入/输出接口设计又往往和控制程序交织在一起。此外,存储器的连接和扩充也是必做的工作。
硬件设计过程中,器件应注意筛选,在布线和安排时,注意制作技术和装配技术,以克服电气干扰。下面就是具体的硬件设计:在单片配备8位液晶显示器,2×4的键盘,8KB的存储器。输入/输出都采用光电隔离,每一路输出还经过功率放大。
(1)PSoC微控制器
PSoC微控制器控制系统中最主要的部件,它完成对输入信号的判断和逻辑运算,产生时序控制信号,对PSoC微控制器的配置可以通过其系统提供的IDE集成开发平台上的图形化工具来完成。选择本控制系统所需的计时器、放大器、液晶等功能模块,配置其内部参数,指定其输入与输出关系,主、输出引脚。在全局变量部分要配置CPU的工作频率、系统时钟、中断、电荷泵以及其它特性,以此完成PSoC微控制器片内配置。
(2)存储器
存储器用来存储工作参数和用户应用程序。随机存储器有动态随机存储器DRAM和静态随机存储器SRAM两种。DRAM虽然价格低,但它需要不断刷新。PSoC单片机没有刷新功能,为了使用DRAM,不得不增加刷新电路。这样总的价格并不低,且使电路复杂化,可靠性降低,因此本系统中采用SRAM