打印

使用PSoC 3和PSoC Creator简化应用设计

[复制链接]
10758|21
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Go_PSoC|  楼主 | 2010-11-23 18:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用PSoC 3和PSoC Creator简化应用设计作者:胡泊 Cypress应用工程师   时间:2010-09-29  来源:电子产品世界
http://www.**/article/113127.htm
摘要:本文首先介绍了Cypress PSoC®3产品功能以及其集成开发环境PSoC Creator的使用方法,然后以一个12路PWM占空比检测模块为例,展示了如何使用PSoC®3和PSoC Creator简化应用设计。  关键字:PSoC®3, PSoC Creator,占空比检测
  Abstract: This paper first introduces the basic features information about Cypress PSoC®3 product and fundamental guideline about PSoC Creator, an IDE (Integrated Development Environment) for PSoC®3. This paper also shows how PSoC®3 and PSoC Creator can simplify application design with an example, 12-channel PWM duty cycle measurement.
  Keywords: PSoC®3, PSoC Creator,Duty Cycle Measurement
  1. 引言
  遵循着摩尔定律,半导体技术飞速发展,芯片的计算能力不断增强,内部资源也越来越多,这令使用芯片设计产品的工程师在选择芯片时的视角也发生了变化。设计者不再担心芯片内部资源是否足够,而是更加关心如何能够更快的开发出产品,缩短上市周期。此外,如果能够使用芯片内的丰富资源,替换原有设计中电路板上众多的外围器件,那么无论是在产品开发、 制造还是产品设计保护方面都存在明显优势。Cypress的PSoC®3系列芯片和与之对应的PSoC Creator开发环境即着力满足设计者的上述需求。
  2. PSoC®3 简介
  PSoC®3是Cypress在第一代可配置片上系统PSoC®1基础之上推出的新一代可配置芯片族,现包含CY8C32,CY8C34,CY8C36和CY8C38四个系列产品。与PSoC®1相比,PSoC®3处理核心基于增强型8051,指令集与标准8051完全兼容,支持乘法和除法指令,最高可运行在67MHz时钟;PSoC®3内部Flash容量最高可达64KB,并且具有多个层次的保护权限设置,能够充分保护Flash内的程序内容不被外部程序或设备读取;PSoC3包含最多8KB的SRAM,以及最多2KB的EEPROM。此外,PSoc®3还提供了具有24个通道,可传输32位数据高性能的DMA模块,可以由CPU动态使能工作或是通过内部连线由模块产生的中断触发。
  除了处理核心之外,PSoC®3还包含三个重要组成部分:数字系统(Digital System),模拟系统(Analog System)以及系统资源(System Wide Resources),从图 1的片内系统框图可以看出这三个部分通过系统总线(System Bus)与处理核心通信,通过数字内部互联(Digital Interconnect)和模拟内部互联(Analog Interconnect)与芯片管脚连接。

  图 1 PSoC®3芯片系统框图
  数字系统主要包含两个部分:一些专用的功能模块和一组通用数字模块(Universal Digital Block,简称UDB)。一些常用功能,如8位,16位或是32位的定时器(Timer),计数器(Counter)和脉宽调制(PWM),SPI,I2C和UART接口,以及CAN总线和Full-Speed USB接口等都可以由专用模块或是UDB实现。有时设计者希望实现一些与应用相关的数字功能,例如马达控制,数字多路器或是与非门逻辑等,此时可以使用UDB实现所需功能。

  图 2 UDB系统结构图
沙发
Go_PSoC|  楼主 | 2010-11-23 18:01 | 只看该作者
UDB基于可编程逻辑器件(PLD)技术, 图 2是UDB的系统结构图,,每一个UDB都包含  Ø 一个8位的数据通路(Datapath)
  Ø 两个PLD逻辑器件(PLD 12C4),12位输入,其中8位作为与操作的乘积项
  Ø 一个状态与控制模块(Status and Control)
  Ø 一个时钟与复位模块(Clock and Reset)
  数据通路包含一个8位的算术逻辑单元(ALU),两个累加器,两个数据寄存器,两个含有4个单元的FIFO以及一个移位器(Shift)。其中,ALU可以配置成加法器,减法器,自增1,自减1,逻辑与,逻辑或,逻辑异或和无操作共八种功能;而移位器可以实现左移,右移,高四位与第四位景象调换和无操作四种功能。某种程度上,一个数据通路就像一个“迷你型”处理器,可以处理8位基本运算逻辑功能,如果把多个数据通路以菊花链的拓扑连接起来就能实现复杂功能。
  PSoC®3也具备高性能的模拟系统,以资源较少的CY8C32系列为例,其模拟功能模块包括:
  Ø 一个1.024伏内部电压参考,14ppm/℃,误差0.9%上下
  Ø 一个可配置的12位Delta-Sigma ADC,采样率最高可达192 ksps,70 dB 信噪比,1 位INL/DNL
  Ø 一个8位8Msps的IDAC或是1Msps的VDAC
  Ø 两个75ns响应时间的比较器
  Ø 一个触摸按键扫描模块
  对于资源最多的CY8C38系列,其模拟功能模块更多,甚至包括一个67MHz,24位定点数字滤波器模块以实现IIR、FIR滤波功能。
  PSoC®3的系统资源提供了多种可选频率的时钟系统以供数字系统和模拟系统使用,除此之外,还包含了内部晶振,内部复位电路,WatchDog模块,低电压检测模块,休眠模块等必要系统功能。
  3. PSoC Creator使用介绍
  针对PSoC®3包含的众多数字模块和模拟模块,Cypress提供了集成开发环境PSoC Creator。PSoC Creator将硬件资源抽象成了众多的功能模块(Component),每个模块实现一种基本功能,例如PWM模块,I2C模块,基本与门,中断响应模块,输入输出管脚等等。设计者像绘制原理图一样,选择适当模块,将其输入输出与其他模块连接,然后通过每个模块提供的图形化配置向导设置模块参数,之后编写适当的软件代码,即可实现所需功能。这种模块化的设计方法令设计者能够将更多精力集中在实现应用的功能上,而无需关注许多底层硬件配置细节。
  图 3是使用PSoC Creator开发应用的屏幕截图,此应用使用了三个PWM模块,分别输出三个PWM信号至芯片管脚上,为了令PWM模块工作,需要提供一个时钟和复位信号(图中左侧),图中间三个绿色的矩形是三个PWM模块,右侧一个粉色的矩形包含三个芯片输出管脚,图中绿色的连线代表通过芯片内部互联系统将PWM的输出连至芯片管脚,此外,图 3最右侧的树状结构列出了可以使用的功能模块列表。图 4是配置PWM模块时的配置向导,在该向导中,可以设置PWM是8位还是16位,周期,以及占空比等参数。设置结果直接体现在向导上的波形图中,以便设计者及时检验参数设置是否合适。

  图 3 PSoC Creator使用实例

  图 4 PWM模块图形配置向导
  4. 应用实例:12路PWM占空比测量
  本节就以一个实际的应用实例——12路PWM占空比测量,展示如何使用PSoC®3和PSoC Creator简化应用设计。在大型服务器上,散热用的风扇会使用固定频率但是占空比可变的PWM信号反馈风扇转速信息,不同的转速对应不同的占空比,通过实时检测反馈的转速信号,控制可以根据当前服务器内温度决定是否需要增加或是减少风扇转速。

  图 5 12通道PWM占空比检测模块
  图 5是用来循环检测12通道PWM占空比的功能模块,12个PWM速度信号通过12个管脚输入进PSoC®3,然后经过一个内部的16路多路器输出一路信号至一个D触发器(DFF)采样,采样结果借助一个反相器形成两路互相反相的信号,分别作为使能信号输入给两个定时器Timer_rising_1和Timer_falling_1,两个中断响应模块isr_rising_1和isr_falling_1用来捕捉两路反相信号的上升沿,以便在中断服务程序中读取定时器中的计数值。通过对两个定时器计数值的计算,即可得出当前PWM信号的占空比。

使用特权

评论回复
板凳
Go_PSoC|  楼主 | 2010-11-23 18:01 | 只看该作者
每当检测完一路PWM,通过设定控制寄存器CTRL_REG_Tach_Input_SW_1的数值,将多路器输出切换至下一路PWM输入,从而依次检测12路PWM的占空比,注意16路多路器的后4路没有使用,始终为低电平。图中CTRL_REG_Reset_1模块控制系统在需要时进行复位。该模块大部分功能都是基于硬件模块,软件中仅需在两个中断服务程序中读取响应的定时器计数值即可。  5. 小结
  实际上,上述例子仅仅是PSoC®3和PSoC Creator的基本应用,PSoC®3的丰富资源和PSoC Creator良好的设计方法可以令设计者更快实现产品的功能,而不是深陷琐碎的技术细节之中。
  参考文献
  [1]. PSoC®3:CY8C38 Family Datasheet, Cypress Semiconductor Ltd.
  [2]. PSoC®3:CY8C32 Family Datasheet, Cypress Semiconductor Ltd.
  [3]. PSoC®3 Architecture Technical Reference Manual, Cypress Semiconductor Ltd.
  [4]. PSoC Creator: Timer Component Datasheet, Cypress Semiconductor Ltd.
  [5]. PSoC Creator: Interrupt Component Datasheet, Cypress Semiconductor Ltd.

使用特权

评论回复
地板
lium| | 2010-11-23 23:03 | 只看该作者
确实强大

使用特权

评论回复
5
hongqh| | 2011-1-17 23:13 | 只看该作者
学习了

使用特权

评论回复
6
zzgezi| | 2011-5-11 10:41 | 只看该作者
谢谢楼主。学习了

使用特权

评论回复
7
傳說勝劍| | 2011-5-11 11:38 | 只看该作者
作者是:BOB………………有时间再看看。

使用特权

评论回复
8
qwasd| | 2011-5-12 22:30 | 只看该作者
学习了

使用特权

评论回复
9
大笨蛋| | 2014-11-30 10:13 | 只看该作者
各位老师 怎样读取psoc 的复位原因

使用特权

评论回复
10
shibalihuandao| | 2014-11-30 19:58 | 只看该作者
好分享 支持楼主

使用特权

评论回复
11
zgsxhzac| | 2014-11-30 19:58 | 只看该作者
好久没看到楼主的新分享了

使用特权

评论回复
12
sishangcine| | 2014-11-30 20:06 | 只看该作者
不错不错 楼主的分享就是好

使用特权

评论回复
13
heibaiyinjiag| | 2014-11-30 20:24 | 只看该作者
好久没见楼主了

使用特权

评论回复
14
taihezhibanh| | 2014-11-30 20:32 | 只看该作者
楼主分享 必属精品

使用特权

评论回复
15
危险人物| | 2014-12-1 12:27 | 只看该作者
恶意围观

使用特权

评论回复
16
危险人物| | 2014-12-1 12:29 | 只看该作者
继续围观

使用特权

评论回复
17
u880| | 2014-12-22 07:59 | 只看该作者
围观一下 好久没见版主发帖了

使用特权

评论回复
18
huigoushang| | 2014-12-22 08:00 | 只看该作者
学习学习 很有用

使用特权

评论回复
19
G21372| | 2014-12-22 08:08 | 只看该作者
很实用的说

使用特权

评论回复
20
yangguangaisha| | 2014-12-22 08:09 | 只看该作者
不错 学习一下

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

898

主题

5336

帖子

15

粉丝