基于PSoC的PWM控制与实现【毕业作品】

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于PSoC的PWM控制与实现
摘要
随着半导体技术的进步和单片机芯片集成度的升高,越来越多的厂商开始提供在单一芯片上实现复杂功能的解决方案,即基于PSoC的解决方案。

这种解决方案加强了设计的条理性,增强设计的可靠性,缩短了设计周期,简单明了,并且大大降低了设计成本,很大程度上满足了市场的需求。

本文首先介绍PSoC系列单片机中CY8CKIT-050芯片的特性、功能以及原理图,接着介绍PSoC单片机的硬件环境。

然后介绍了关于PSoC单片机的开发环境:creator2.0,其开发环境中有很多用户模块,在用户使用中只需调用相应的API函数。

根据课题需要,细致讲解了PWM模块,然后利用PWM模块产生的PWM 信号控制LED小灯。

最后,通过之前的学习与实践,构建一个小车控制平台。

首先,了解驱动电路的类型和工作原理,然后动手设计和焊接了一个H桥式驱动电路。

接着用PSoC 芯片当控制器,来驱动小车,实现小车的基本功能。

关键词:PSoC单片机;creator2.0; pwm;小车
Abstract
With the increase of advances in semiconductor technology and integrated single chip,more and more manufacturers began to offer solutions to implement complex functions on a single chip, which is based PSoC solutions.This solution is designed to strengthen the rational, enhanced reliability of the design, shorten the design cycle, simple, and greatly reduces the design cost, largely to meet the needs of the market.
In this paper, first briefly describes the features of PSoC series microcontrollers CY8CKIT-050 chip, function, and schematics. Then introduced PSoC software operating environment creator2.0, learning and summarize the addressing modes, interrupt mode, storage mode, each system module functions, and the pwm module creator2.0 in-depth study.
Learn about the basics of PSoC later, we learned the H-bridge circuit using PSoC plate and bridge driver circuit to drive the car, and finally achieve the basic functions of the car.
Keywords:PSoC microcomputer,creator 2.0,pwm,car
目录
第1章绪论 (6)
1.1 PSoC单片机的来源及应用 (6)
1.2 PSoC单片机发展状况 (6)
1.3 研究内容及目标 (7)
1.4 本章小结 (7)
第2章PSoC系列单片机介绍 (8)
2.1主要部件及结构原理 (8)
2.2引脚分布 (10)
2.3器件分类和资源介绍 (12)
2.4硬件环境介绍 (12)
2.4.1 I/O端口 (12)
2.4.2储存器系统 (13)
2.4.3数字子系统 (15)
2.4.4模拟子系统 (15)
2.4.5 CPU系统 (16)
2.4.6 时钟及电源系统 (18)
2.4.7 中断控制器 (19)
2.5开发环境介绍 (20)
2.5.1 PSoC Design (20)
2.5.2 PSoC Express (21)
2.5.3 PSoC Creator (21)
2.6 本章小结 (22)
第3章基于PSoC的PWM控制LED (22)
3.1 PWM模块详解 (22)
3.1.1 PWM模式 (23)
3.1.2 参数和设置 (23)
3.1.3 应用程序编程接口 (26)
3.2 LED显示控制的实现 (27)
3.3 本章小结 (29)
第4章基于PSoC的小车系统设计 (30)
4.1小车实现的功能 (30)
4.2设计要求 (30)
4.3 原理框图 (30)
4.4 小车调速与前进后退基本原理 (30)
4.4.1调速基本原理 (31)
4.4.2 PWM脉冲波的产生方法 (32)
4.5小车驱动电路方案 (32)
4.5.1 驱动原理 (33)
4.5.2 驱动电路的设计 (33)
4.5.3 电路驱动保护 (34)
4.6软件部分设计 (34)
4.6.1小车前进后退软件部分 (35)
4.6.2小车加减速软件部分 (37)
4.7 本章小结 (38)
结论 (39)
参考文献 (40)
致谢 (41)
基于PSoC的PWM控制与实现
第1章绪论
1.1 PSoC单片机的来源及应用
片上系统(system on chip,soc)的理念是20实际90年代提出的,随后立刻成为微电子芯片技术研究与发展的热点,但是soc还是远不能满足模拟和数字混合系统的需求,因此关于它的应用受到了比较大的限制。

由于市场的需要,于是微电子技术与计算机技术的结合产物:单片机,一经推出就得到了市场的认同,现在已经成为集成电路大家庭中的十分重要的成员,单片机在各个方面都有广泛的应用。

但是最开始主流的单片机一般是mcu+有限的固定的模拟或数字外围,功能不够强大,满足不了用户需求,且随着芯片集成度的提高和半导体技术的发展,越来越多的厂商开始投入大量人力物力研究在单一芯片上实现更多更复杂的功能。

美国cypress公司最先在该领域实现了使用而且强大PSoC解决方案,即:提高设计安全性,增强芯片外围电路(mcu+可编程模拟外围电路+可编程数字外围电路),较少系统设计周期,降低设计成本。

PSoC可运用于电子类产品,如MP4、家电、VCD、移动设备等,也可使用于医疗仪器,如血糖检测仪、病人监护器等,汽车电子领域,如汽车电子锁、汽车黑匣子,检测系统等,工业领域,如雾霾感应器、水/电/气表、各种检测设备、语音识别器等。

PSoC为以上领域应用提供了具有嵌入式控制功能的高性能现场可编程单片系统。

1.2 PSoC单片机发展状况
单片机正朝着功能复杂化,单片系统化,设计周期缩短,功耗降低的方向发展。

突出表现在:第一,从intel公司MCS-51系统单片机的一枝独秀,快速发展到如今cypress推出的PSoC系列单片机,两者互为补充,兼容并蓄,百花齐放的新格局;第二,片上系统是内部装配单片机的系统芯片,他把电机整机(测控系统)的功能全部集成到一个芯片中,暗示着不久以后,IC与电子整机之间的界限将被打破;第三,单片机目前正被集成各种电容,传感器,通信接口等,传统单片机仅有mcu+有点固定的模拟或数字外围已被打破。

PSoC结合了mcu,模
拟,数字外围,把三者完美的结合在一起,此外PSoC具有A/D,D/A的两个模块,有效解决了两种信号的接口问题。

PSoC也由当初的稚嫩到了今天的成熟,由PSoC1内置(M8)8位处理器,处理速度4MIPS,到今天的PSoC3和PSoC5分别采用了8051和ARM Cortex—M3处理器,速度分别到达33MIPS和100MIPS。

开发工具也发生了很大变化,增加了输入电路退构筑结构等功能,设计的周期缩短,而且变得极为灵活。

且推出了无需编码的可视化设计工具软件:PSoC Express。

PSoC Express不需要编程,只需根据设计需求选择输入输出设备、添加且定义系统的各个接口等方法,即可自己正确快速的生成所有代码,大大缩短了设计时间。

1.3 研究内容及目标
目前使用的主流单片机为8051系列单片机、MOTOROLA单片机等,且高校大学生大多数使用8051单片机来设计小车,从而对PSoC系列单片机较为陌生,并且缺乏学习陌生但相似单片机的学习方法。

此次设计使用一种新的单片机,与传统市面上的单片机有很大不同。

自己独立完成对单片机的认识,操作环境的认识,语言的学习,并且完成硬件驱动电路和软件编程。

通过这次实践,对PSoC 单片机有了深刻的了解,为日后学习各种单片机时,能在较短时间内熟悉并掌握其控制原理和操作环境,积累了一定的学习方法,受益匪浅。

1.4 本章小结
本章主要描述PSoC系列单片机的出现、发展和现况,以及本次实验的方法和目的。

第2章PSoC单片机介绍
2.1主要部件及结构原理
图2.1 PSoC5的结构原理图
如图2.1所示,PSoC5包含的主要部件有:
(1)ARM Cortex-M3 CPU子系统;
(2)非易失性储存子系统;
(3)编程,调试和测试子系统;
(4)输入和输出;
(5)时钟资源;
(6)电源系统;数字子系统;
(7)模拟子系统。

模拟子系统支撑整个PSoC5系统的一半可配置能力。

所有模拟子系统的性能取决于高精度的绝对电压参考。

配置模拟子系统包括:模拟交叉开关;模拟混频器;比较器;电压参考;模拟—数字转换器;数字—模拟转换器。

PSoC也提供两个逐次逼近寄存器(Successive Approximation Register,SAR)的12位ADC,最高采样速度达到1Msps,该ADC也提供了低非线性和低偏置误差,以及SNR高于70dB的性能指标。

所以,可以很好的使用于各种不同的
高速的模拟应用环境中。

所有的GPIO引脚通过使用内部的模拟总线能将模拟号连接到芯片的输入/输出。

这允许芯片接口连接最多62个离散的模拟信号。

模拟子系统的主要部件是高准确性,可以配置的ADC转换器,其特征包括:小于100uv偏置;增益误差0.2%;积分非线性误差(INL)小于1LSB;差分非线性误差(DNL)小于1LSB;在16位模式下,信噪比(SNR)高于90dB。

PSoC5的CPU子系统使用32位3级流水的ARM Cortex—M3处理器,运行最高速度为80Mhz。

Cortex—M3子系统包括类别丰富的调试和跟踪模块,集成的嵌套向量中断控制器NVIC。

这个CPU子系统包括DMA控制器、Flash Cache、RAM。

PSoC提供了5种类型的I/O接口,其使用非常灵活。

所有的I/O可以设置多种驱动模式。

PSoC5提供了四个I/O电压域。

每个GPIO都有LCD驱动,灵活的中断相应,数字输入输出,模拟输入输出、电容感性和抖动率控制的能力。

PSoC5支持较宽范围的电压,它的电压范围从1.71~5V。

如果是低电压供电的需求,PSoC5提供片上升压转换器。

PSoC5使用串行调试SWD接口或者4线的JTAG用于编程、测试和调试。

Cortex—M3调试和跟踪模块包括:仪器跟踪宏,嵌入式跟踪宏。

端点和闪存地址重载和跟踪和数据监视点。

2.2引脚分布
Vddd
图2.2 PSoC5的电气连接示意图
(1)DAC0,IDAC1,IDAC2,IDAC3:用于高电流DAC的低阻抗输出;
(2)OpAmp0out,OpAmp1out,OpAmp2out,OpAmp3out:可供使用的放
大器的高电流输出。

(3)Extref0,Extref1:用于模拟系统的外部参考输入;
(4)OpAmp0-,OpAmp1-,OpAmp2-,OpAmp3-:运算放大器的反相输入;
(5)OpAmp0+,OpAmp1+,OpAmp2+,OpAmp3+:运算放大器的同相输入;
(6)GPIO:与CPU相连的通用输入输出接口,电容感应,中断,LCD段
驱动器,数字外设,模拟外设。

(7)I2C0:SCL,I2CL,SCL:I2CSCL时钟线提供了在地址匹配的情况下
的唤醒。

如果不要求唤醒,任何I/O引脚也能用于I2SCL。

(8)I2C0:SDA,I2C1,SDA:I2CSDA数据线提供了在地址匹配的情况下的唤醒。

如果不要求唤醒,任何I/O引脚也能用于I2CSDA。

(9)Ind:与升压泵连接的传感;
(10)kHZ XTAL:Xo,kHZ XTAL:Xi.32.768kHZ晶体振荡器引脚;
(11)MHZ XTAL:Xo,kHZ XTAL:Xi.4—33MHZ晶体振荡器引脚;
(12)nTRST:可以选择的JTAG测试复位编程和调试口,连接到JTAG连接的复位端。

(13)SIO:比较特别的输入输出使用,可以编程的高门槛电压、高吸收电流、模拟比较器和高阻抗状态(未上电)提供了与数字外设、中断,甚至是CPU 的连接接口。

(14)SWDCK:串行线调试时钟编程和调试端口连接;
(15)SWDIO:串行线调试输入/输出编程和调试端口连接;
(16)SWV:串行线察看器调试输出;
(17)TCK:JTAG测试时钟编程和调试端口连接;
(18)TDI:JTAG测试数据输入编程和调试端口连接;
(19)TDO:JTAG测试数据输出编程和调试端口连接;
(20)TMS:JTAG测试模式选择编程和调试端口连接;
(21)TRACECLK:Cortex—M3 TRACPORT连接,为TRACEDATA引脚提供时钟。

(22)TRACEDATA[3:0]:Cortex—M3 TRACEPORT连接,输出数据;
(23)USBIO,D+:D+可以快速连接USB2.0总线,可以用于一个数字I/O 引脚;可以从Vddd供电。

当不使用USB时,为NC引脚;
(24)USBIO,D-:D-可以快速连接USB2.0总线,可以用于一个数字I/O 引脚;可以从Vddd供电。

当不使用USB时,为NC引脚;
(25)Vboost:电源感应连接到升压泵;
(26)Vbat:电池供电连接到升压泵;
(27)Vcca:模拟核管理器的输出,其输入到模拟核。

要求一个1uf电容连接Vssa。

管理器的输出不用于外部。

(28)Vccd:数字核管理器的输出,其输入到数字核。

要求在Vccd和Vssd 之间连接一个电容。

管理器的输出不用于外部。

(29)Vdda:为所有模拟核管理器和模拟的外围设备供电。

Vdda必须是芯片上的最高电压。

其他供电引脚必须小于等于Vdda
(30)Vssa:模拟外设的低;
(31)Vssb:升压泵的地;
(32)Vssd:所有数字逻辑和I/O引脚的地;
(33)Vddio0—Vddio3:给输入输出引脚供电,每个引脚的电压都应该在此电压范围内(1.7~5.5V),其小于等于Vdda。

如果没有使用和Vddio0,Vddio2,Vddio3相关的I/O引脚,则Vddio接地;
(34)XRES:外部复位引脚输入;
(35)Vddd:为所有数字核管理器和外围数字设备供电。

Vddd必须小于等于Vddd。

2.3器件分类和资源介绍
PSoC5是嵌入式可编程片上系统,在此芯片上集成了可自由配置数字和模拟外围设备的功能、微控制器和存储器。

PSoC5包括了CY8C53XX、CY8C54XX、CY8C55XX、CY8C52XX四个系列,PSoC5架构可通过以下方法改善性能:
(1)低耗与业界最宽的电压范围;
(2)基于PLD的可编程逻辑;
(3)32位ARM Cortex—M3 CPU最多80MHz;
(4)集成了高精度20位分辨率模拟ADC转换器。

2.4硬件环境介绍
2.4.1 I/O端口
Posc提供两种类型的I/O引脚;同时也提供与USB相连的引脚。

特殊输入输出(SIO)和通用输入/输出提供了类似的数字功能,它们的主要区别在于它们各自的驱动能力和模拟电路能力。

PSoC提供了两个USBIO引脚支持有限的GPIO功能和特定的USB功能。

所有的I/O都可用于数字输出和输入,I/O口都支持中断。

所有的I/O也能用于LCD段驱动,电容感性,输入。

而SIO引脚可以用于可编程输出电压和用在超出V DDA的电压。

I/O有8种引脚模式:高阻模拟、高阻数字、上拉、下拉、开漏驱动低、开漏驱动高、强驱动、上拉和下拉。

如图2.4所示:
图2.4 驱动模式
驱动模式如2.1表所示:
模式编号驱动模式PRTxDM2 PRTxDM1 PRTxDM0 PRTxDR=1 PRTxDR=0
0 高阻模拟0 0 0 高阻高阻
1 高阻数字0 0 1 高阻高阻
2 上拉0 1 0 电阻高(5kΩ)强低
3 下拉0 1 1 强高电阻低(5kΩ)
4 开漏驱动低 1 0 0 高阻强低
5 开漏驱动高 1 0 1 强高高阻
6 强驱动 1 1 0 强高强低
7 上拉和下拉 1 1 1 电阻高(5kΩ)电阻低(5kΩ)
I/O引脚的其他特性:引脚寄存器,双向模式,抖动率和限制模式,引脚中断,输入缓冲区模式,I/O供电支持,模拟链接,CapSense,LCD段驱动,可调输出电平,可调输入电平,SIO作为比较器,热插拔,过电压容限,复位配置,低功耗功能,特殊引脚功能,JTAG边界扫描。

2.4.2储存器系统
PSoC中存储器包括:静态存储器(SRAM)、Flash程序存储器、外部存储器、EEPROM等。

同时PSoC也提供了外部存储器接口(EMIF),可以用来连接外部的存储器设备。

(1)静态存储器SRAM的作用是用来暂存数据,PSoC5提供最大64KB的SRAM存储空间。

DMA和Cortex-M3 CPU能在同一时间访问两个不同的32KB 块的SRAM空间。

SRAM的数据通道全是32位宽的,CPU可直接连到SRAM,不需要通过PHUB。

结构如图2.5所示:
图2.5 CY8C55 SRAM结构图
(2)Flash为用户的配置数据、用户海量数据存储和可选择使用的纠错码数据提供非易失性的存储空间。

结构如图2.6所示:
图2.6 Flash块图
(3)EEPROM是字节可寻址的非易失行存储器。

PSoC提供了一个预建立的,并且通过测试的标准的设备库,这些库通过工具(UART,SPI,LIN,PRS,CRC,计数器,定时器,OR,AND,PWM)映射到UDB阵列。

对于不是标准外设,我们可以通过使用硬件描述语言HDL来实现。

每一个UDB包含了支持自定义编程的逻辑设备PLD功能和可编程的阵列逻辑PAL,并且当配备其它小的状态机时,可以支持大量不同类型的外设。

数字子系统包括:通用数字块UDB,DSI布线接口,USB总线模块,定时器模块、计数器模块、PWM模块、I2C模块、CAN总线模块、数字滤波器模块。

简介如下:
(1)UDB模块主要元件有:PLD块、数据通路、状态和控制、时钟和复位、链接信号、布线通道、系统总线接口。

(2)DSI布线接口是在UDB阵列核底端和顶端的连续分布的垂直和垂水平布线通道。

DSI在各种外部设备之间提供了通用的可编程布线资源,包括模拟外设、I/O、中断、UDB、固定功能外设和DMA。

(3)USB模块是与主机通信的一个重要模块,包含一个USB设备。

支持全速通信(12Mbps),并且和USB2.0协议兼容。

(4)定时器模块:提供了捕获定时器用于确定硬件事件的时间间隔,定时器提供了一个较为简单的方式来确定事件的时序,几乎不需要cpu的干涉。

其有两种实现方式:UDB和固定功能。

(5)计数器模块:它有两种方式实现:固定功能和UDB。

当使用UDB来配置时,它具有丰富的功能。

当配置模式为固定功能时,计数器是一个常见的简单的计数器。

(6)PWM模块:提供比较输出用于产生连续的时序或单一时序,同时还可以产生控制信号。

PWM为PSoC提供了一种简单的方式来产生精确的复杂实时事件。

(7)I2C模块:提供检测硬件地址,但此硬件地址的宽度为7位。

同时还为PSoC设备提供了同步两线接口。

(8)CAN总线模块:CAN外设是一个多功能的控制器的局域网络,最大通信波特率是1Mbps。

CAN控制器支持两种规范:CAN2.0B和CAN2.0A,且允许实现高级的协议,同时不会影响MCU CPU的性能。

(9)数字滤波器模块:包括了一个专项的累加器和乘法器,它们可以在一个时钟周期内计算48位的累加步骤和24×24位的乘法。

通过这种形式可以直接产生有限脉冲相应滤波器映射,所以一个周期就可以产生一个FIR的结果。

模拟可编程系统根据应用的实际需求,把高级和标准模拟信号处理模块巧妙的结合在一起。

通过这些模块的相互支持与联结,并且模块的各个引脚可以连接到芯片的任意端口上,提供了更为安全和高级的设计。

模拟子系统包括:模/数转换器ADC模块、运算放大器模块、数/模转换器DAC模块、模拟比较器模块、LCD直接驱动模块、温度传感器模块、Capsense 模块、可编程SC/CT模块。

(1)模/数转换器ADC模块:△-∑ADC功能,提供了很好的线性度,较高的分辨率,差分输入。

有四种工作模式:连续采样、单采样、快速FIR(平均)、快速滤波器。

同时也含有两个逐次逼近型(SAR )ADC,支持两种输入模式:单端和差分,这使得ADC可以工作于复杂环境下的采样和控制领域。

(2)运算放大器:三个速度模式:慢、中和快。

低速模式是所需功率最小,同时消耗最小的静态功耗。

快速模式是所需功率最大,消耗也最大的。

(3)数/模转换器DAC模块:PSoC为用户提供了4个数-模转换器DAC,每一个DAC都支持8位,并且都能配置为电压或者电流输出。

(4)模拟比较器模块:模块的正和负输入引脚全部来自模拟的全局总线,模拟本地总线,模拟复用线和精度比较高的参考源。

两个输入LUT中任意一个输入都含有比较器的输出,同时LUT的输出可以分布到UDB的数字系统接口。

PSoC内部一般都含有4个LUT,每一个LUT都有两个输入,一个输出。

(5)LCD直接驱动模块:由LCD、DAC、LCD驱动器、CPU、DMA、UDB 和RAM。

其有如下特性:直接驱动LCD面板;支持类型B(低损耗)和类型A (标准)波形;接受较宽范围的LCD偏置(2~5.2V);静态的,1/3,1/4,1/5的偏置电压电平;里面生成偏置的电压;最多可有62个通过公共和段输出;
(6)温度传感器模块:用于测量PSoC芯片内部晶片的温度,其主要使用△V be方法来用于数字温度的测量。

(7)CapSense模块:提供有效和丰富的测量方法来测量电容量,该模块支持同时扫描两个电容传感器;能实现丰富的电容感应技术等。

(8)可编程SC/CT模块:PSoC包含了四个这样的模块。

每个模块都是一个带有电容、开关和电阻阵列的轨至轨的放大器。

闪存外设输入/
片上
调试图2.7 8051CPU系统
其主要特性有:一个周期的8051CPU;最大64KB的Flash,2KB的EEPROM,8KB的SRAM;可以嵌套和编程的中断控制器;外设HUB;外面直接存储器接口。

PSoC5使用了ARM的Cortex-M3 CPU核,这个CPU是一个耗能很低的总共32位具有三级流水线的内核,其性能达到了1.25DMIPS/Mhz。

此CPU系统包括以下特性:
(1)外部存储器接口EMIF;
(2)DMA控制器;
(3)外设HUB;
(4)超高速缓存Cache控制器;
(5)最大256KB的Flash存储器,2KB的EEPROM,64KB的SRAM;
(6)集成的全特性的调试和跟踪模块;
(7)集成可嵌套的向量的中断控制器;
为了保证在不占用太多CPU资源的同时拥有较快的指令执行速度,PSoC5在CPU和Flash存储器之间增加了一个指令高速缓存器Cache。

Cache自身也减少了对Flash的访问次数,这样可以降低系统的功耗。

Cache控制器主要特点有:(1)指令高速缓存;
(2)全关连,任意的Flash地址都可以存储在Cache中;
(3)共有16行1K字节的高速缓存;
(4)数据存储使用单端口RAM,表示不能同时进行读写操作;
(5)32位寻址;
(6)PHUB Flash和CPU之间读接口的专用8字节宽的缓冲区;
(7)PSoC Creator 支持读,写,锁定,无用,刷新和使能高速缓存。

外设之间的数据传输以及CPU和外设之间的数据传输,一般都用DMA和PHUB控制器。

在启动的时候,PHUB和DMA也控制设备的配置。

2.4.6 时钟及电源系统
时钟系统用于在PSoC系统内产生、分布和分配时钟。

内部的相位锁相环(PLL)和主振荡器(IMO)在一起能产生最高66/80Hz时钟。

系统额外的内部和外部时钟源为用户配置高精度、低功耗和开销的时钟源提供条件。

大部分的系统时钟源都放置于UDB和16位的时钟分频器内,从而能产生其他的不同时钟频率来满足工程需要。

PSoC Creator IDE图形化界面可以对时钟进行分配和生成。

这个是基于一个完整的系统条件,很大程度上加快的设计的进程。

在PSoC Creator操作环境下,设计者可以使用最小的输入建立时钟系统。

操作人员可以自己设定时钟的频率和精度。

主要功能如下:
(1)七个通用的时钟源:
①3~62/74Mhz IMO,3MHz的精度为±1%;
②4~33MHz 外部晶体振荡器;
③USB模块所需的倍频时钟可以由时钟加倍器提供;
④来自外面的I/O或者其余的逻辑的DSI信号;
⑥来自IMO,MHzECO,DSI的24~67/80MHz部分的PLL;
⑦时钟加倍器;
⑧休眠定时器和看门狗的定时器(WDT)使用1kHz,33kHz,100kHz的ILO;
⑨实时时钟RTC由外置的32.768kHz晶体振荡器提供。

(2)内部主振荡器有一个独立的USB状态,可以自行锁定到USB总线的时钟上,而不需要借助于USB的外部晶体振荡器。

(3)不受外部影响,独立的分频器。

(4)数字系统拥有8个16位的时钟分频器。

(5)模拟系统中拥有4个16位的时钟分频器。

(6)CPU时钟和CPU总线拥有独立的16位分频器。

(7)PSoC Creator 的自动时钟配置。

2.4.7 中断控制器
(1)结构原理图
下图2.8给出了中断控制器的块图结构。

中断源包含了以下:具有稳定功能的模块、DMA通道和UDB模块。

1
2
31
图2.8 终端控制器的块图结构
(2)中断的执行
中断控制器主要用于当有中断信号产生时,来确定和处理信号。

步骤如下:
①明确中断源;
②设置Pending位,表示中断此时此刻正在等待执行;
③中断的优先级信号送入到优先级解码模块,然后确认优先级,执行优先级较高的中断;
④中断控制器向CPU发送中断的请求信号和用于执行中断的中断向量地址;
⑤CPU接到发来的中断请求并且做出响应;
⑥中断入口-CPU响应中断入口。

中断控制器清除pending位。

⑦通过中断控制器,将当前的中断号和优先级进入到中断控制器的堆栈中。

⑧中断结束与退出-当中断执行完毕后,CPU空闲出来寻找下一个中断的请求。

(3)PSoC5的中断控制器
Cortex-M3的嵌套向量中断控制器(NVIC)不但支持16个系统异常而且还支持来自外设的32个不同类型的中断,如下表2.2所示:
表2.2 Cortex—M3异常和中断
2.5开发环境介绍
PSoC的开发环境经过长时间的发展,包括了不同风格的集成开发环境。

现有三种不同的开发环境。

2.5.1 PSoC Design
PSoC Designer是PSoC的最初开发环境,适用于PSoC1板。

它是一种多功能的基于图形用户接口(GUI)的设计工具套件,可用C语言或汇编语言编程。

其特点如下:
(1)提供在线源代码调试功能,用户可以利用事件触发器、单步进和多断点方式对设计进行调试。

(2)可采用C语言或汇编语言编程。

(3)提供用户所需的应用程序接口(API)函数,用户只需调用相应的API函数就可完成对用户模块的编程。

(4)模块化思想,提供丰富的数字和模拟用户模块如PGA、A/D、D/A、比较
器、PWM等。

用户可根据设计需要直接选用相应模块,方便快速的完成设计。

2.5.2 PSoC Express
PSoC Express 是无需编码的可视化设计工具软件,采用模块化设计,可迅速完成从构思到嵌入式系统的实现。

特点如下:
(1)具有仿真功能,可以对系统设计进行软件仿真,仿真正确后可将程序下载到目标系统中。

(2)自动生成物料清单、设计说明书和原理图。

(3)其设计可在PSoC Designer中打开并查看。

(4)可将常用传感器和输入设备接口抽象成输入设备(如温度传感器、开关、电位计),将常用的执行器接口抽象成输出设备(如继电器、风扇、数码管)。

设计人员只需选择输入输出设备,添加和定义系统接口等,PSoC Express可正确的生成程序。

2.5.3 PSoC Creator
PSoC Creator 是最先进的集成开发环境(Integrated Development Environment,IDE),带有创新性的图形设计编辑器,构成独特而强大的硬件/软件协同设计环境,本次主要介绍PSoC Creator环境。

PSoC Creator软件平台能为给定的应用产生相关的应用程序接口函数(API),这些API函数可以对硬件进行控制。

在开发阶段,设计人员可以依靠自己的意愿灵活的改变硬件参数,甚至是目标处理器也可以改变。

设计者可以在新的目标上修改任何应用,甚至是从8位的移动到32位的平台上。

PSoC Creator的特点:
(1)内部具有调试器;
(2)集成源代码编辑器;
(3)提供较多的IP元件核资源;
(4)集成原理图捕捉功能在于设备配置;
(5)支持自己定义元件;
操作主界面的右边是元件的库的分类列表,整个库里具有丰富的元件,可以满足设计者的不同需求。

具有各式各样的元件:模拟、数字、通信元件。

符号编辑器只需画一个符号和相关的设计关联符号,从而使设计人员能设计可重复使用的元件,可以减少设计所需时间和精力。

PSoC Creator可以放置新的符号。

锚定工具(Anchoring tool)由:设计入口工具,用于源代码的集成的C汇编器和编辑器和一个项目控制管理器构成。

它是一个高级别的,可以自由定值的用户接口。

相关文档
最新文档