电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > 嵌入式系统/ARM技术 > 详细信息
嵌入式系统/ARM技术:基于嵌入式PsoC的MCU选色控制器设计
来源:   时间: 2008-2-19 5:18:19    
产生负电压的同步降压电路 电切换带通滤波器组设计 基于DSP的软件无线电基频发射机的设计与仿真 Silicon LabS推出直接传感器接口技术
 

  摘要:阐述Cypress公司的可配置片上系统(PSoC)的功能及其实现结构;结合选色控制器开发实例,详细阐述使用PsoC开发的方法和流程。其设计方法也可用于其它控制系统或工业自动化等各种应用。
   
  关键词:PsoC(可配置片上系统)选色控制器MCU
   
  引言
   
  最近几年,随着电子技术及半导体工艺的迅猛发展,片上系统(SoC),特别是可配置片上系统PsoC(ProgrammableSystemonChip),已逐渐成为微控制器的主流产品。因此,要求设计工程师必须迅速地掌握SoC的开发特点和要求,尽快融入SoC的开发大潮中去。但是,SoC系统设计带来了与传统系统设计全然不同的挑战,其中包括从处理器和存储器的选择到产品环境的考虑。如果设计工程师能够深入理解SoC的开发特点,并且考虑部件之间如何交互,以及各种因素带来的影响等问题,就可以直接提高产品设计的成功率和开发效率,降低系统开发的复杂性和费用,同时增强系统的可靠性和抗干扰能力。
   
  文章根据本人的开发经历,结合选色控制器的开发过程,为设计工程师提供指导,从所有层面上帮助他们为今后的设计项目做更好的准备。
   
  人们在各种各样的微控制器和嵌入式控制系统设计过程中发现,并非不同的设计就必须用到完全不同的外围器件;相反,这其吸大量共的部分,因此,启发了芯片设计工程师建立此种可配置微控制器。在芯片内建立一些通用的数字和模拟块(digitalandanalogblock),把它们配置成微控制器的各种功能模块(Module)。这样,在ASIC设计过程中,应用工程师就可以根据自己的不同设计要求调用不同的功能模块,完成芯片内部的功能配置,实现使用一块芯片就可以配置成具多种不同外围器件的微控制器。

  目前,市场上有CypressMicroSystems,InC和CygnalIntegratedProducts,Inc生产可配置的SOC微控制器。本控制系统选用CypressMicroSystems,Inc生产的M8C内核PsoC微控制器作为控制核心。
   
  下面我们首先熟悉开发的任务要求。选色控制器是一个由信息采集、键盘、显示及输出驱动等部分组成的控制系统,主要用来取代进口和国产剑杆织机上的纸带输入式光电纬纱选色器。
   
  为了便于用户根据不同的实际需要对工作方式及其它参数进行修改,要求所有的参数及组态均可通过面板睥几个操作键进行输入、检查、修改;并可在突然并机的情况下,重新开机后,自动恢复断点参数信息。
   
  根据用户提出的技术指标,我们还必须把它进步量化,并且进一步完成功能设计方案。
   
  1硬件方案设计
   
  1.1选择微处理器
   
  在设计任务确定后,应对控制系统所需要的硬件做出初步估计和选择。微处理器是整个控制系统的核心,它的选择将对整个控制系统产生决定性的影响。一般应从以下几个方面考虑微处理器是否符合控制系统的要求:字长、指令的种类和数量、内部寄存器的种类数量、微处理器的速度、中断处理能力以及微处理器的外围电路配套等。对于外围器件的来源、软件的运行等也是设计人员必须考虑的因素,因为其涉及到整个系统实时控制能力以及硬件和应用程序的分开。

  CypressMicroSystems,Inc生产的PsoC是新一代功能强大的8位可配置微控制器。PsoC微控制顺片内有8根独立的输入和输出总线,分别与数字和模block相连。其内部可用的block资源包含:4个基本类型和4个通信类型的数字block,各有3个CT、SCA和SCB类型模拟block。使用这些资源可以配置成不贩功能模块,用以实现微控制器标准外围器件的功能。

  使用基本类型数字block可配置:
  *计数器(counter);
  *定时器(timer);
  *脉宽调制(PWM);
  *循环冗余码校验(CRC)串行接收(serialreceiver)。
  使用通信类型数字block可配置:
  *基本数字block;
  *串行发送(serialtransmitter);
  *串行接收(serialreceiver);
  *SPI主端(SPIMaster);
  *SPI从端(SPISlave)。
  使用模拟block可配置:
  *多极滤波器(multi-polefilters);
  *放大器(gainstages);
  *数模转换(DACs);
  *模数转换(ADCs)。
   
  在模块功能设计方面,Cypress公司把各种常用处理器的外围器件作为设计Module的标准,把芯片内数字和模拟block资源组配成标准的功能模块(module),并把这些功能模块存储在器件库中。用户通过使用其提供的集成开发平台(IDE),调用这些功能模块、设定模块时钟输入,配置全局变量和局部变量,设定用户功能参数,完成功能模块的配置。另外,这些功能模块还可以相互连接,以完成更加复杂的功能。因此,通过合理的配置数字和模拟block就可以在片内实现大部分外围器件的工作。并且,由于设定的参数量存储在片内Flash中,因此,无论是在设计之初,还是在产品应用现场,工程师均通过软件重新配置数字和模拟block参数,从而增加/删除功能模块,定义输入/输出引脚,完成硬件升级。这就是可编程嵌入式片上系统的动态重新配置能力(DynamicReConfigurability)。因此,可配置片上系统(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——6264。
   
  当6264的CE1为高电平或CE2为怦时时,6264处于低功耗的保持状态,此时流过的电源电流为维持电流,只有μA级。在保持状态的情况下,VCC可降至3V左右,内部所存储数据不会丢失。由此可见,只要在掉电之后保持CE1为高,并保持VCC大于3V,就可保持RAM中所存储数据不变,且消耗VCC的电流很校由此可以建立数据存储保护电路。
   
  (3)液晶模块
   
  字符型液晶显示模块是一类专用于显示字母、数字、符号等的点阵型液晶显示模块。字符型液晶显示驱动控制器广泛应用于字符型液晶显示模块上。目前PSoC微控制器内液晶模块仅支持HD44780U显示驱动控制器。
   
  (4)输入电路
   
  单片机只能接受0~5的逻辑电路平信号,而现场工作信号是按钮、行程开关。输入电路完成电平转换任务,同时为了系统的安全和可靠,还要考虑信号的滤波和隔离问题。
   
  本系统采用的是光电隔离及电平转换电路。光电耦合器以光电转换原理传输信息,它不仅使信息发出端(收侧)与信息接收并输出端(二次侧)是电绝缘的,从而对地电位差干扰有很强的抑制能力,而且有很强的抑制电磁干扰能力,且速度高、价格低、接口简单,因而得到广泛的应用。光电耦合器的一次侧都是发光二极管,但是二次侧侧则有多种结构,如光敏二极管、光敏晶体管等,因而就有二极管-二极管光电耦全器、二极管一晶体管光电耦全器等多种型号的光电耦全器。本系统选用TPL521-4,它在同一个封装内4个相同而独立的光电耦合器。TPL521主要用于工业控制中,其速度不高。
   
  (5)输出电路
   
  输出电路主要包括两部分:一是隔离,二是功率放大。在顺序控制系统中,单片机输出的控制信号常用来控制继电器等执行机构,它们需要较大的功率,因此输出信号需要光隔离和放大后才输出到执行机构。
   
  2织机选色器的功能设计
   
  织机选色控制器是一个可以编程的顺序控制器。它有两个工作状态:编程状态和运行状态。编程状态的主程序的功能为更新显示器上显示的内容、用户键入编辑相应的用户程序。键盘有MOD、TAB、INC、DEC、ENT这5个键,用于输入程序和参数。下面介绍这些键的功能。
   
  MOD模式键:用于编程状态和运行状态之间的切换。编程状态下,用户可以完成用户程序的编辑;运行状态下,用于显示程序执行的步骤。
    
  TAB光标移动键:用于屏幕光标的移动,随着光标处于不同的变量位置,表明此变量处于编辑状态。此变量可以编辑。
   
  INC增加键:在编程状态下,按下此键,光 标所在位置的变量加1。
   
  DEC减少键:在编程状态下,按下此键,光标所位置的变量减1。
   
  ENT确认键:变量改变后,按此键确认更改。
   
为了使织机选色器能按照用户输入的程序执行,我们设定了固定的程序格式。用户按此格式输入用户程序,织机选色器就可按程序进行工作。其格式如下:程序号段号色号纬数最大段号
   
  程序号:表示执行或编辑的程序名称。
   
  段号:表示程序步的标号。
   
  色号:表示此次选中的颜色。
   
  纬数:表示打纬的次数。
   
  最大段号:表明程序循环段数。
   
  使用以上定义的几个键,就可以完成用户程序输入。在开机后处于运行状态中,此时执行监控中的键盘、显示器管理程序,输入信号监控。根据输入信号执行用户预先存储在存储器内的程序。
   
  3具体软件设计方案
   
  用户通过键盘编写用户程序,为此在外部存储空间中预留一定的存储空间供用户存储用户程序。用户可以随时调用、查看、编辑自己的选色程序。具体做法根据程序号确定高位址,根据段号确定低位地址,然后向不同字节写入色号和纬数的信息,最大段号存放在一个固定的地址中。在工作过程中,同样根据程序号确定高位地址,根据段号确定低位地址,然后读出存放在不同字节内的色号和纬数信息。
   
  4MCU内部资源配置
   
  和普通的ASIC设计相比较,PsoC的设计首先必须完成片内功能模块的设计。因此,可配置片上系统设计流程和集成开发环境上也与通用的ASIC设计流程及集成开发环境有所不同。PSoC设计必须首先完成芯片内部资源的规划,其片内资源设计流程具体为:
   
  *确定系统需求;
   
  *选择用户模块;
   
  *放置用户模块;
   
  *设置全局变量和用户模块参数;
   
  *定义输出引脚;
   
  *产生应用代码;
   
  *编辑应用代码。
   
  因此,在集成开发环境内按照设计流程完成设备编辑器参数配置。
   
  4.1用户模块的选择和放置
     
  选择Timer16、Timer8、PGA、SAR6、LCD模块,如图2所示。IDE内含用户模块描述、说明,以及用户指导/代码摘录、阅读模块的用户指导信息,以供配置使用。数字模块放置一般没有什么限制,尽量使用基本类型的数字模块;模拟模块只能放置在允许的位置。

  4.2设置全局变量和用户模块参数

  全局资源

  24V1=16;配置系统时钟一
  24V2=16;配置系统时钟二
  Timer16模块
  Clock=CPU_32KHz;时钟选择
  Capture=Low;捕捉功能关
  Period=65535;配置period
  CompareValue=TerminalCount
  ;指定中断类型
  InterruptType=TerminalCount
  ;指定中断类型
  Output=None
  Timer8模块
  Clock=CPU_32KHz;时钟选择
  Capture=Low;捕捉功能关
  Period=255;配置period
  CompareValue=TerminalCount
  ;指定中断类型
  InterruptType=TerminalCount
  ;指定中断类型
  Output=None
  PGA模块
  Gain=1;单元增益
  Input=AnalogColumn_InputMUX_3
  ;信号输入
  Reference=AGND;参考地
  Analogbus=Disable;输出总线
  AnalogColumn_InputMUX_3=PORT_0_2;输入总线
  SpecifyPinoutP0[2]=Analog_Input
  ;模拟输入引脚
  SAR6模块
  SignSource=ACA03;信号选择
  ClockPhase=Normal;时钟选择
  LCD模块
  LCDPort=Port_0;数据口
  BarGraph=Enable;启用

  4.3定义输出引脚

  输入/输出引脚指定
  P2[2]=StdCPURisingEdge(Int);选色
  P2[3]=StdCPUDisablrInt;倒棕输入
  P2[4]=StdCPUDisablrInt;加纬
  P2[5]=StdCPUDisablrInt;减纬
  P1[1]=AnalogColumn_InputMUX_3(HighZ)键盘输入
   
  4.4产生应用代码
   
  在完成功能模块的参数配置工作后,系统就自动生成应用程序接口API和中断服务程序ISR,并且自动插入到工程项目中。设计工程师可在此基础之上填写应用代码,完成用户程序的编制。
   
  结语
   
  总的来说,在基于PSoC的选色控制系统中,除了个别无法集成的器件以外,选色控制系统所应用的大部分器件均可以集成到PSoC芯片中去,应用系统电路板变得很简洁,这对于减小系统的体积和功耗、提高系统的可靠性都是非常有利的。与传统解决方案相比,可配置嵌入式片上系统提供的解决方案具有无法比拟的优越性。

相关信息
发表评论
打印本页 关闭本页
Atmel发布全集成汽车气囊系统供电芯片ATA6264
    Atmel公司日前发布全集成汽车气囊系统供电IC ATA6264,面向高端汽车气囊应用设计。该器件采用高压0.8um BCD工艺生产,拥有诸多新特性,包括抗低压及电池线缆失效,智能电源序列,集成监视器及其他监视功能。另外,ATA6264还具有高精度和高灵活性的特点。  ATA6264可为整个气囊系统提供电能(包括传感器、微控制器及启动装置),其电压可编程。它通过一个16位SPI与微控制器通讯,带有...
>>详细内容
已有(
)位对此新闻感兴趣的网发发表了看法 >>更多评论
内 容:
     
 
热点新闻
一周排行
关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com