AN77759 PSoC® 5LP 入门 作者:Nidhin MS 相关器件系列:所有 PSoC 5LP 器件 相关文档:请点击此处查看相关文档的完整列表。 想要获取本应用笔记的最新版本或相关项目文件,请访问 http://www.cypress.com/go/AN77759。 AN77759 介绍了 PSoC® 5LP,一个基于 ARM® Cortex®-M3 的可编程片上系统。本应用描述了 PSoC 5LP 架构和开发 环境,并且还展示了如何使用 PSoC Creator™(PSoC 5LP 的一个开发工具)来创建您的第一个项目。此外,本应用笔 记还向您提供了更多的资源,用以深入学习有关一般 PSoC 以及 PSoC 5LP。 目录 1 简介 .......................................................................... 1 2 3 PSoC 资源 ................................................................ 2 PSoC Creator ........................................................... 2 3.1 PSoC Creator 帮助 .......................................... 3 6.3 第一部分:构建设计 ........................................ 9 6.4 第二部分:为器件编程 ................................... 16 7 总结 ........................................................................ 18 8 相关文档 ................................................................. 18 技术支持 .......................................................... 3 文档修订记录................................................................... 22 4 代码示例 ................................................................... 4 全球销售和设计支持 ........................................................ 23 5 PSoC 5LP 功能集 ..................................................... 5 产品 ................................................................................. 23 5.1 PSoC 的性能比 MCU 的更优越 ........................ 7 PSoC®解决方案............................................................... 23 5.2 PSoC Creator 组件的概念 ................................ 7 赛普拉斯开发者社区 ........................................................ 23 我的第一个 PSoC 5LP 设计 ...................................... 8 技术支持 .......................................................................... 23 3.2 6 1 6.1 入门 ................................................................. 8 6.2 设计概况 .......................................................... 9 简介 PSoC 5LP 是真正的可编程嵌入式片上系统,在同一芯片中集成了自定义的模拟和数字外设功能、存储器以及 ARM Cortex-M3 CPU。 PSoC 5LP 提供了一个经济实用的备用方案,能够替代一个 MCU 和外部 IC 的组合。PSoC 5LP 架构通过以下特性凸显 其性能: 带有工作频率高达 80 MHz 的 DMA 控制器、数字滤波处理器以及 32 位 ARM Cortex-M3 内核 超低功耗与工业级最宽电压范围 带有支持用户自定义的可编程数字和模拟外设 任意模拟或数字外设向任意引脚灵活路由的功能 单芯片 PSoC 器件可以实现上百项数字和模拟外设功能。因此不仅能够缩短设计时间、减少电路板尺寸、降低功耗和 系统成本,还可以提升系统性能。 如何使用本文档 下面几页会对 PSoC 5LP 和使用 PSoC 和 PSoC Creator 设计的优点进行说明。您同样可以跳转到我的第一个 PSoC 5LP 设计一节,以快速创建一个简单的设计。本节所创建的设计在 CE203303 代码示例中仍然可用。 www.cypress.com 文档编号: 001-93057 版本 *D 1 ® PSoC 5LP 入门 2 PSoC 资源 在赛普拉斯网站 www.cypress.com 上提供了大量资料,有助于选择符合您设计的 PSoC 器件,并能够快速有效地将器 件集成到设计中。有关资源的完整列表,请参考 KBA86521 — 如何使用 PSoC 3、PSoC 4 和 PSoC 5LP 进行设计。 下面提供了 PSoC 5LP 的简要列表: 3 概况:PSoC 产品系列、PSoC 产品路线图 产 品 选 型 : PSoC 1 、 PSoC 3 、 PSoC 4 或 PSoC 5LP。此外, PSoC Creator 还包含了 一个器件选择工具。 技术参考手册(TRM):对每个 PSoC 3、PSoC 4 和 PSoC 5LP 器件系列中所使用的架构和寄存器进行了详 细说明。 数据手册:描述并提供了适用于 PSoC 3、 PSoC 4 和 PSoC 5LP 器件系列的电气规范。 PSoC 培训视频:这些视频一步一步介绍了使用 PSoC 构建复杂设计的过程。 开发套件: ® CapSense 设计指南:了解如何在 PSoC 3、 PSoC 4 和 PSoC 5LP 器件系列中设计电容式 触摸感应应用。 应用笔记和代码示例:包括从基本到高级的广 泛主题。许多应用笔记包括代码示例。 CY8CKIT-059 是一种低成本的原型平台,适合于试 用 PSoC 5LP 器件。 CY8CKIT-050 是专门为模拟性能而设计的。通过该 套件,您可以评估和开发高精度模拟、低功耗以及 低电压的各种应用。 PSoC Creator PSoC Creator 是一个基于 Windows 的免费集成开发环境(IDE)。通过它可以对 PSoC 3、PSoC 4 和 PSoC 5LP 器 件同时进行硬件和固件设计。如图 1 所示,通过 PSoC Creator,您可以进行以下操作: 1. 2. 将组件图标拖放到主设计工作区中,以进行您 的硬件系统设计。 协作设计您的应用固件和 PSoC 硬件 www.cypress.com 3. 使用配置工具配置各组件 4. 提供包含 100 多个组件的库 5. 查看组件数据手册 图 1. PSoC Creator 特性 文档编号: 001-93057 版本*D 2 ® PSoC 5LP 入门 3.1 PSoC Creator 帮助 请访问 PSoC Creator 主页以下载 PSoC Creator 的最新版本。然后,启动 PSoC Creator,并逐步执行以下各项: 3.2 快速入门指南:依次选择菜单项 Help > Documentation > Quick Start Guide。本指南提供了开发 PSoC Creator 项目的基本知识。 简单的组件示例项目:依次选择菜单项 File > Open > Example projects。这些示例项目展示了如何配置及使用 PSoC Creator 组件。 入门设计:依次选择菜单项 File > New > Project > PSoC 5LP Starter Designs。这些入门设计展示了 PSoC 5LP 的独特特性。 系统参考指南:依次选择菜单项 Help > System Reference > System Reference Guide。该指南列出并描述了 PSoC Creator 提供的系统功能。 组件数据手册:右键单击组件,然后选择“Open Datasheet”项。请访问 PSoC 5LP 组件数据手册网页,获取所 有 PSoC 5LP 组件的数据手册列表。 文档管理器:PSoC Creator 提供了一款文档管理工具,便于寻找和查看文件资源。要想打开文档的管理工具,请 选择菜单项:Help >Document Manager。 技术支持 若有任何疑问,我们的技术支持团队很乐意为您提供帮助。您可以在 赛普拉斯技术支持页面上创建一个技术支持请 求。 如果您在美国,可以通过拨打我们的免费电话,直接与技术支持团队联系:+1-800-541-4736。选择提示符处的第 8 项。 若想快速获得支持,您同样可以使用下面的支持资源。 自助 所在地销售办事处 www.cypress.com 文档编号: 001-93057 版本*D 3 ® PSoC 5LP 入门 4 代码示例 图 2. PSoC Creator 中的代码示例 PSoC Creator 包含了多个代码示例项目。可以从 PSoC Creator 的“Start Page”(起始页)上获取这些项目,如图 2 所示。 这些示例项目为您提供了完整的设计(并非一个空白页),从而可 以加快您的设计过程。示例项目还介绍了如何将 PSoC Creator 组 件使用于不同应用中。此外,它还包含了多个代码示例和数据手 册,如图 3 所示。 在图 3 所示的 Find Example Project(查找示例项目)对话框中, 您可以选择以下选项: 根据 architecture(架构)或 device family(器件系列)(例 如:PSoC 3、PSoC 4 或 PSoC 5LP);category(类型)或 keyword(关键词)等选项筛选示例 从 Filter Options(滤波选项)的示例菜单中进行选择 查看选中的代码示例。您可以复制该窗口中的代码然后将其粘 贴到您的项目内,从而加快代码的开发过程,或 根据已选项目创建一个新的项目(若需要,可添加新的工作 区)。通过为您提供一个完整的基本设计,它可以加快您的设 计过程。然后,您可以根据自己的应用要求来调整该设计。 通 过 Documentation ( 文 档 ) 选 项 卡 , 查 看 选 中 的 数 据 手册 图 3. 带样本代码的代码示例项目 www.cypress.com 文档编号: 001-93057 版本*D 4 ® PSoC 5LP 入门 5 PSoC 5LP 功能集 PSoC 5LP 带有一个丰富的功能集,包括:一个 CPU 和存储器子系统、一个数字子系统、一个模拟子系统以及全部系 统资源,如图 4 所示(针对 CY8C58xxLP 器件系列)。 更多有关信息,请查看前面所列的 PSoC 5LP 系列器件的数据手册、技术参考手册(TRM)和应用笔记。 图 4. PSoC 5LP 架构(CY8C58xxLP) Analog Interconnect Clock Tree IMO Digital System Quadrature Decoder UDB UDB UDB UDB I 2C Slave Sequencer Universal Digital Block Array (24 x UDB) 8- Bit Timer 16- Bit PWM UDB UDB UDB UDB UDB UDB UDB UDB UDB UDB UDB UDB 22 UDB 8- Bit Timer Logic 8- Bit SPI UDB UDB FS USB 2.0 4x Timer Counter PWM 12- Bit SPI UDB I2C Master/ Slave CAN 2.0 16- Bit PRS Logic UDB UDB UART UDB UDB USB PHY GPIOs 32.768 KHz ( Optional) GPIOs Xtal Osc SIO System Wide Resources Usage Example for UDB 4- 25 MHz ( Optional) GPIOs Digital Interconnect 12- Bit PWM RTC Timer WDT and Wake EEPROM CPU System Cortex M3CPU SRAM Program & Debug Interrupt Controller GPIOs System Bus Memory System Program GPIOs Debug & Trace EMIF Cache Controller FLASH ILO PHUB DMA Boundary Scan LCD Direct Drive Analog System Digital Filter Block ADCs POR and LVD 1.71 to 5.5 V Sleep Power 1.8 V LDO SMP 4 x SC / CT Blocks (TIA, PGA, Mixer etc) Temperature Sensor GPIOs Power Management System 2x SAR ADC + 4x Opamp - + 1x Del Sig ADC 4x DAC CapSense 4x CMP - 3 per Opamp GPIOs SIOs Clocking System 0. 5 to 5.5 V ( Optional) 以下是 PSoC 5LP 的主要性能列表。有关详细信息,请参考相关文档或 PSoC 5LP 器件数据手册。 性能 工作频率介于 DC 至 80 MHz 之间 32 位 ARM Cortex-M3 CPU、32 个中断 存储器 程序闪存的最大容量为 256 KB SRAM 空间达 64 KB 24 通道直接存储器访问(DMA)控制器 24 位 64 抽头数字滤波处理器(DFB) www.cypress.com 此外,还有多达 32 KB 的闪存空间,用于存储纠错码 (ECC) EEPROM 容量为 2 KB 文档编号: 001-93057 版本*D 5 ® PSoC 5LP 入门 数字外设 4 个 16 位定时器、计数器和 PWM (TCPWM)模块 I2C,其总线速度为 1 Mbps 多功能 I/O 系统 46 至 72 个 I/O 引脚 — 多达 62 个通用 I/O(GPIO) 多达 8 个特殊功能 I/O(SIO)引脚 25 mA 灌电流 获得认证的全速(FS)USB 2.0,其速率为 12 Mpbs 可编程的输入/输出电压阈值 可作为通用模拟电压比较器使用 全速 CAN 2.0b 接口,16 个 Rx 缓冲区, 8 个 Tx 缓冲区 热交换功能和过压容限 20 到 24 个 通用数字模块(UDB),通过配 置 UDB 模块,可以创建有限数量的如下功 能模块: 8、16、24 和 32 位定时器、计数器和 PWM I2C、UART、SPI、I2S 和 LIN 2.0 接口 循环冗余校验(CRC) 伪随机序列(PRS)发生器 正交解码器 门限逻辑功能 可用作 GPIO 的两个 USBIO 引脚 任何 GPIO 均提供 CapSense 支持 模拟子系统 具有 8 至 20 位分辨率的可配置 Delta-Sigma 模数转换器 最 多 支 持 两 个 12 位 SAR 模 数 转 换 器 (ADC) 四个 8 位数模转换器(DAC) 可从任意一个数字或模拟外设连接到任意的 GPIO 任何 GPIO 都具有 LCD 直接驱动器功能,最多可驱动 46 × 16 行 1.2 V 至 5.5 V 接口电压,多达 4 个电压域 可编程时钟 内部振荡器的频率范围为 3 至 74 MHz,在 3 MHz 频 率时,精度为 1% 外部晶振的频率范围为 4 至 25 MHz 外部时钟晶振的频率为 32.768 kHz 内部 PLL 能够生成高达 80 MHz 的时钟 频率分别为 1 kHz、33 kHz 和 100 kHz 的低功耗内部 振荡器 可布线到任何外设或 I/O 的 12 个时钟分频器 有关 PSoC 5LP 性能的完整信息,请参考数据手册。 四个比较器 四个运算放大器(opamp) 四个可编程模拟模块,用于创建: 可编程增益放大器(PGA) 互阻放大器(TIA) 混频器 采样和保持(S/H)电路 CapSense®支持,多达 62 个传感器 1.024 V ± 0.1%内部参考电压 www.cypress.com 文档编号: 001-93057 版本*D 6 ® PSoC 5LP 入门 5.1 PSoC 的性能比 MCU 的更优越 图 5 显示了一款典型的 MCU。它包含一个 CPU,并且具有一系列外设功能(如:ADC、DAC、UART、SPI 和通用 I/O),所有器件都与 CPU 的寄存器接口相连。在某个内部 MCU 中,可以将 CPU 称为该器件的“心脏” — 由于它监 控着器件的所有活动,包括:设置工作、数据传输和时序。如果没有 CPU,那么该 MCU 便不能执行其性能。 图 6 显示了 PSoC 又存在差别。CPU、模拟、数字和 I/O 是可编程系统 PSoC 中同样重要的资源。 PSoC 的“心脏” 是系统的互联和可编程性,并不是 CPU。模拟和数字外设通过高度可编程的路由矩阵互相连接,以创建完全独特的器 件。所以,您可以通过编程 PSoC 来模拟 MCU,但不能通过编程 MCU 来模拟 PSoC。 图 5.典型 MCU 结构框图 Gen I/O Port B Gen I/O Digital System (w/ Programmable Logic) Gen I/O UART ADC Gen I/O Port A 图 6. PSoC 5LP 框图 Timer ARM8051 Cortex-M3 Gen I/O I2C Gen I/O SPI ARM CPU DAC PWM Analog System Gen I/O Port D Gen I/O Port C Gen I/O System Interconnect Gen I/O 典型的 MCU 要求 CPU 固件处理各种状态机制、使用定时器来进行计时,并驱动一个输出引脚。因此,其功能路径几 乎都是通过 CPU 实现的。通过使用 PSoC,可以进行异步并行操作。您可以配置 PSoC 中的组件,使其运行独立于 CPU。 比如,图 6 显示了 PSoC 5LP 没有 UART。但是,通过使用 PSoC Creator 中预设计和预测试的 UART 组件,您可以 在可配置数字逻辑内配置很多 UART。您可以将每个 UART 配置为具有一些所需的特性。 5.2 PSoC Creator 组件的概念 对于成功的 PSoC 设计,最关键就是 PSoC Creator IDE。PSoC Creator 将 PSoC 外设和其他资源组织为各个图形元 素(又称组件)。将各组件拖放到原理图内并将其连接,这样会使设计过程更简单。仅需要几次点击就可以更改设计。 比如,对于传统的 MCU 而言,如需要使用 PWM 外设使 LED 闪烁发亮,您必须执行以下操作: 1. 确定对应于 PWM 的寄存器的位置。 2. 根据所需 PWM 周期和占空比,计算需要写入到 PWM 寄存器内的值。 3. 编写许多代码行以便配置 PWM 寄存器,设置引脚驱动模式,并将 PWM 输出连接到该引脚上。 实现同 PSoC 的相同功能非常简洁,您可以在下一节找到相关内容。 引脚组件:给任意引脚配置任意功能 PSoC 5LP 包含一个扩展布线结构,通过它您能将某个功能(模拟或数字)模块连接至任意引脚上。PSoC Creator 提 供了一个引脚组件,通过几次鼠标点击您可以轻松地将它连接到一个 PSoC 资源,并将它分配给电路板上的某个物理 引脚。另外也很容易更改引脚组件连接,这样能够快速进行电路板等级的设计更改。 www.cypress.com 文档编号: 001-93057 版本*D 7 ® PSoC 5LP 入门 基于可编程数字资源的组件 PSoC 5LP 具有可编程数字模块(称为通用数字模块,即 UDB)。PSoC Creator 提供了一些由 UDB 构成的组件。这 些组件包括 UART、SPI、I2C、I2S、定时器、PWM、Counter、CRC、正交解码器、数字门(AND、OR、NOT、 XOR)等。您甚至可以创建自己的自定义状态机和数字逻辑。 基于可编程模拟资源的组件 PSoC 5LP 还具有可编程模拟模块(称为开关电容连续时间(SC/CT)模块)PSoC Creator 提供由 SC/CT 模块构成的 模拟组件,比如:可编程增益放大器(PGA)和互阻放大器(TIA)。 6 我的第一个 PSoC 5LP 设计 该部分包括以下内容: 6.1 演示了如何编程 PSoC,使其性能比传统 MCU 的更优越 说明了如何创建一个简单的 PSoC 设计,并将其安装在某个开发套件中 详细介绍了如何使用 PSoC Creator IDE 进行 PSoC 设计的技术 入门 您是否已经安装了 PSoC Creator? 在 PSoC Creator 主页上下载并安装 PSoC Creator。请注意,安装过程可能占用较长时间 — 具体情况请参考 PSoC Creator 的发布说明。 您是否具有开发套件? 表 1 列出了用于 PSoC 5LP 的所有赛普拉斯开发套件。其他供应商生产的套件都可用。 表 1. Cypress PSoC 5LP 套件 PSoC 5LP 套件 PSoC 5LP 器件编号 编程工具 CY8CKIT-059 CY8C5888LTI-LP097 集成编程器 CY8CKIT-050 CY8C5868AXI-LP035 集成编程器 CY8CKIT-001 CY8C5868AXI-LP035 MiniProg3 编程和调试套件 您是否想查看正在操作的项目? 若不想进行下一个章节所述的整个开发过程, 您可以在 CE203303 上下载完整的代码示例项目。这样您可以跳转到 构建和编程步骤。代码示例的设计是用于 CY8CKIT-059 的;而您可以容易修改该示例,以用于其它套件。 www.cypress.com 文档编号: 001-93057 版本*D 8 ® PSoC 5LP 入门 6.2 设计概况 在“CE203303 — PSoC 3 和 PSoC 5LP 呼吸 LED”代码示例中对该设计进行了详细介绍。该“呼吸 LED”效果专门 通过硬件实现(初始化时无需使用 CPU)。图 7 显示的是 PSoC Creator 原理图。 图 7. 呼吸 LED 原理图(用于 CY8CKIT-059 的引脚和 LED) 6.3 第一部分:构建设计 本节逐步向您介绍了设计流程。本节内容指导您通过硬件和软件进行设计。 注释: 这些指令假设您正在使用 PSoC Creator 3.3。整个开发过程与其他 PSoC Creator 版本的相同,但是一些对话 框是不一样的。 1. 创建一个新的 PSoC Creator 项目。 一个项目包含所有源代码和其他文件用于创建单个输出模块,可以将该模块下载到目标 PSoC 5LP 器件中。 A. 启动 PSoC Creator。 图 8. 创建一个新的 PSoC Creator 项目 B. 依次选择 File > New > Project…,如图 8 所示。 创建项目窗口将会显示。 www.cypress.com 文档编号: 001-93057 版本*D 9 ® PSoC 5LP 入门 2. 为 CY8CKIT-059 套件选择项目类型。请参考图 9。 PSoC Creator 通过自动对指定开发套件或目标器件设置各种项目选项,从而加快开发过程。 A. 点击 Target hardware(目标硬件)。 B. 在下拉菜单中,选择套件:CY8CKIT-059(PSoC 5LP)。 C. 然后点击 Next 按键。 图 9. 为 CY8CKIT-059 创建新的项目 A B C www.cypress.com 文档编号: 001-93057 版本*D 10 ® PSoC 5LP 入门 3. 选择一个空白原理图作为一个项目模板使用。请参考图 10。 PSoC Creator 根据现有的代码示例进行新设计,从而加快开发进度。对于该示例,我们将从一个空白的原理图开 始。 A. 点击 Empty Schematic。 B. 然后点击 Next 按键。 C. 在下一个对话框中,在 Workspace name 中输入文本。一个工作区中包含了一个或多个项目。一个项目通常 处于一个工作区中。 D. 在 Project name 中输入文本。项目名称与工作区名称可以相同,也可以不同。 E. 指定您工作区和项目的 Location(位置)。 F. 点击 Finish。 图 10. 创建新一个空白项目 A B C D E F www.cypress.com 文档编号: 001-93057 版本*D 11 ® PSoC 5LP 入门 创 建 了 一 个 项 目 。 一 些 新 的 面 板 将 会 显 示 : Workspace Explorer 、 Schematic ( TopDesign.cysch ) 和 Component Catalog。 4. 对设计中的硬件部分进行构建。 在此步骤中,您将组件从组件目录拖放到原理 图中。然后,您对组件进行配置,并将其连 接。 a. 在 Component Catalog 窗口、Cypress 选项卡中,寻找 PWM 组件,如图 11 所示。 b. 将 PWM 组件的两个实例拖放到原理图中 (请参考图 7)。 www.cypress.com 文档编号: 001-93057 版本*D 图 11. 选择 PWM 组件 12 ® PSoC 5LP 入门 5. 配置 PWM 组件,如图 12 所示。 这样会创建两个 PWM 方波,它们的工作频率不太一样。该频率差异会导致在 LED 上实现调制拍频。 在原理图中,双击每个 PWM 组件以对其进行配置。 A. 对于 PWM_1,在 PWM Mode 框中选择 One Output。 B. 不需要对 PWM_1 进行任意修改。点击 OK,关闭该对话框。 C. 对于 PWM_2,在 PWM Mode 框中选择 One Output。 D. 将 PWM_2 的 Period 设置为一个不同于默认值的数值。 E. 将 PWM_2 的 CMP Value 1 值设置为“周期”值的一半。 F. 对 PWM_2 进行的更改已完成。点击 OK,关闭该对话框。 图 12. PWM 组件的配置 C A D E B F 6. 将组件从组件目录拖放到原理图中并将其配置,表 2 已列出了其他组件。 不需要 Off-Chip 组件,但这些组件将帮助显示设计的总体目的。 注意:在每个配置对话框中,Name 字段被自动填充;您可以将名称更改为任意一个有效文本。在原理图中每个组 件的名称是唯一的。 表 2. 设计组件 组件目录 组件 www.cypress.com 选项卡 组合 更改默认配置 低逻辑 赛普拉斯 数字 > 逻辑 无 Xor 赛普拉斯 数字 > 逻辑 无 时钟 赛普拉斯 系统 将 Frequency(频率)设置为 5 kHz 数字输出引脚 赛普拉斯 端口和引脚 勾选 External terminal 框 电阻 片下 被动 无 LED 片下 二极管 无 接地 片下 供电 无 文档编号: 001-93057 版本*D 13 ® PSoC 5LP 入门 7. 选择连线工具(图 13),连接这些逻辑(也 可以使用快捷键‘w’)。 图 13. 选择连线工具 将各组件互连在一起,如图 7 所示。 8. 到这里已经完成了硬件设计,但还需要将引脚组件连接到相应的物理引脚上。 为您正在使用的开发套件中的 LED 选择物理引脚。(对于 CY8CKIT-059,所使用的引脚为端口 2 上的引脚 1,即 P2[1])。 A. 在工作区浏览器窗口上,双击您项目中的 .cydwr 文件,如图 14 所示。这样可打开设计范围资源(DWR) 窗口。 B. 选择 Pins 选项卡。将显示项目中定义的引脚组件以及目标器件的引脚框图。 C. 将原理图中的引脚组件分配给所需物理引脚。 图 14. 分配引脚 A C B 9. 您必须编写几个固件行。编写固件前,最好让 PSoC Creator 生成所有与组件相应的代码。 依 次 选 择 PSoC Creator 菜 单 项 Build > Generate Application,如图 15 所示。如果 没有出现错误,则 PSoC Creator 会生成几个 代码文件,这些文件位于 Generated_Source 文件夹中。 www.cypress.com 文档编号: 001-93057 版本*D 图 15. 生成应用 14 ® PSoC 5LP 入门 10. 将代码添加到自动生成的文件 main.c 中。该文件具有一个用于添加代码的框架,您需要添加的代码(用于启动两 个 PWM 组件)被突出显示,如代码 1 所示。在工作区浏览器窗口上,双击您项目中的 main.c 文件以打开它。 注释: 该代码假设 PWM 组件具有默认名称。如果您想重新命名 PWM 组件,而不是使用默认名称,则使用 _Start()函数条用的名称。 代码 1. 呼吸 LED 的主代码 #include <project.h> int main() { //CyGlobalIntEnable; /* Enable global interrupts. */ /* Place your initialization/startup code here (e.g. MyInst_Start()) */ PWM_1_Start(); PWM_2_Start(); for(;;) { /* Place your application code here. */ } } 11. 如果您不遵循设计的整个流程而跳到这一步,请执行下列操作: A. 从 CE203303 上下载 CE203303.zip 代码示例文件,然后将其解压到您的电脑中容易找到的位置。 B. 下载并安装 PSoC Creator,如第 9 页上的第 1 步所示。 C. 打开 PSoC Creator 中的 CE203303.cywrk 文件。 D. 确认该项目引脚分配与您的开发套件(DVK)相互匹配,如第 14 页上的第 8 步所示。 E. 依次选择 PSoC Creator 菜单项 Build > Build <project name>,如图 16 所示。 如果没有出现错误,则该项目已经创建 好 , 并 准 备 编 程 目 标 的 开 发 板 (DVK)。 www.cypress.com 文档编号: 001-93057 版本*D 图 16. 构建项目 15 ® PSoC 5LP 入门 6.4 第二部分:为器件编程 该编程过程同所有开发套件板的一样。请按照套件指南材料中介绍的指导进行设置您的开发板。 1. 请确认 PSoC Creator 和您的 DVK 板之间的连接状态。 选择 PSoC Creator 菜单项 Debug > Select Debug Target,如图 17 所示。 A. 将 显 示 “ Select Debug Target ” 对 话 框,如图 18 所示。点击您的目标 DVK 板 (PSoC Creator 支持多个 DVK 连接)。 B. 点击 Port Acquire 项。 图 17. 选择调试目标 图 18. 选择并获取调试目标以进行编程 A B www.cypress.com 文档编号: 001-93057 版本*D 16 ® PSoC 5LP 入门 2. 将 PSoC 连接到您的目标 DVK 板上。请参考图 19。 A. 点击 PSoC 5LP。 B. 点击 Connect。“Target unacquired”(未获取调试目标)信息将会更改为“Target acquired”(已获取调 试目标),并且按键的标签会更改为“Disconnect”(断开连接)。 C. 点击 OK,关闭该对话框。 PSoC Creator 已连接到目标 DVK 板和 PSoC,您可以对 PSoC 进行编程。 图 19. 连接到目标 PSoC 5LP A B C 3. 如 果 需 要 对 PSoC 5LP 进 行 编 程 , 请 选 择 PSoC Creator 菜单项 Debug > Program,如 图 20 所示。 4. 开 始 编 程 。 您 可 以 在 窗 口 左 下 角 的 PSoC Creator 状 态 栏 上 查 看 编 程 状 态 , 如 图 21 所示。 图 20. 编程器件 注释: 您也可能看到以下警报信息:“This programmer is currently out of date”(当前 该编程器已过期)。更多有关如何升级您的编 程器固件的信息,请参考套件文档中的 KitProg 用户指南。 图 21. 编程状态 在 CY8CKIT-059 DVK 板上,蓝色 LED 将在几秒时间内逐渐从全亮转到全灭。 www.cypress.com 文档编号: 001-93057 版本*D 17 ® PSoC 5LP 入门 7 总结 本应用笔记展示了 PSoC 5LP 架构以及开发工具。通过本应用笔记,可以了解的最关键概念是:PSoC 的性能比 MCU 更好。PSoC 5LP 是一个真正的可编程嵌入式片上系统,在同一个芯片上集成了可配置模拟和数字外设的功能、存储器 和一个 32 位 Cortex-M3 CPU。 由于具有集成特性以及低漏功耗模式,PSoC 5LP 是低功耗和经济高效嵌入式系统的理想选择。 8 相关文档 表 3 列出了系统级和通用的应用笔记,用以进一步学习 PSoC 和 PSoC Creator。 表 3. 通用和系统级应用笔记 文档 文档名称 AN61290、 AN88619 PSoC 3 和 PSoC 5LP 硬件设计的注意事项, ® PSoC 4 硬件设计的注意事项 AN81623 PSoC 3、PSoC 4 和 PSoC 5LP 数字设计的最佳实践 AN77900、 AN86233、 AN90114 PSoC 3 和 PSoC 5LP 低功耗模式和降低功耗技术, ® PSoC 4 低功耗模式和降低功耗技术, ® PSoC 4000 低功耗模式和降低功耗技术 AN68403 PSoC 3 和 PSoC 5LP 模拟信号链路校准 AN57821 PSoC 3、PSoC 4 和 PSoC 5LP 混合信号的电路板布局的注意事项 AN58827 PSoC 3 和 PSoC 5LP 内部模拟布线的注意事项 AN73854 PSoC 3、PSoC 4 和 PSoC 5LP 中实现的 Bootloaders 的说明 AN60616 PSoC 3 和 PSoC 5LP 启动程序 AN60631 PSoC 3 和 PSoC 5LP 时钟资源 AN77835 从 PSoC 3 升级到 PSoC 5LP 的指南 AN78175、 AN89056 PSoC 3 和 PSoC 5LP IEC60730 B 类安全软件库, ® PSoC 4 IEC60730 B 类安全软件库 ® ® ® ® ® ® ® ® ® ® ® 表 4 列出了各种应用笔记(AN)、代码示例(CE)和知识库文章(KBA),这些文档与 PSoC 5LP 功能集所列的器件 描述相关。 表 4. PSoC 5LP 特性的相关文档。 文档 文档名称 CPU 和中断 ® AN89610 PSoC 4 和 PSoC 5LP ARM Cortex 代码优化 AN54460 PSoC 3 和 PSoC 5LP 中断 ® 存储器 CE95313 ® PSoC 3、PSoC 4 和 PSoC 5LP 仿真 EEPROM 存储器 直接储存器访问(DMA) ® AN52705 PSoC 3 和 PSoC 5LP:DMA 入门 AN84810 PSoC 3 和 PSoC 5LP DMA 的高级主题 www.cypress.com ® 文档编号: 001-93057 版本*D 18 ® PSoC 5LP 入门 文档 文档名称 AN61102 PSoC 3 和 PSoC 5LP:使用 DMA 来缓冲 ADC 数据 CE95375 CE95376 PSoC 3 和 PSoC 5LP 的 SPI 主设备和 DMA ® PSoC 3 和 PSoC 5LP 的 SPI 从设备和 DMA ® ® 数字滤波器模块(DFB) ® CE95316 在 PSoC 3 和 PSoC 5LP 中使用 DFB 过滤 ADC,并将其转换为 VDAC CE95317 PSoC 3 和 PSoC 5LP 在轮询模式下使用 DFB 过滤 ADC,并将其转换为 VDAC ® I2C ® 2 CE95324 PSoC 3 和 PSoC 5LP 的 I C LCD CE95314 PSoC 3、PSoC 4 和 PSoC 5LP 的 EZI2C ® USB AN57294 USB 101:通用串行总线 2.0 的简介 AN57473 PSoC 3 和 PSoC 5LP 中 USB HID 的基础知识 AN58726 深入了解 PSoC 3 和 PSoC 5LP 中的 USB HID AN56377 PSoC 3 和 PSoC 5LP:简述实现 USB 数据传输 AN82072 PSoC 3 和 PSoC 5LP 中使用标准 HID 驱动程序通过 USB 进行通用数据传输 AN73503 PSoC 3 和 PSoC 5LP 的 USB HID Bootloader CE95390 PSoC 3 和 PSoC 5LP 的 USB 音频 CE95395 PSoC 3 和 PSoC 5LP 的 USB MIDI CE95394 PSoC 3 和 PSoC 5LP 的 USB HID 鼠标 CE95393 PSoC 3 和 PSoC 5LP 的 USB 批量传输 CE95392 PSoC 3 和 PSoC 5LP 的 USB Bootloader CE95396 PSoC 3 和 PSoC 5LP 的 USB UART ® ® ® ® ® ® ® ® ® ® ® 控制器区域网络(CAN) ® AN52701 PSoC 3 和 PSoC 5LP:控制器局域网络(CAN)入门 CE95282 PSoC 3 和 PSoC 5LP 中通过 CAN 实现控制节点 CE95283 PSoC 3 和 PSoC 5LP 中通过 CAN 实现删除节点 KBA86565 Full CAN 和 Basic CAN Mailbox 间的差别 KBA86566 针对 CAN 接收信息采用验收滤波器 KBA86567 在编程过程中修改 Full CAN Mailbox 的标识符 ® ® 通用数字模块(UDB) ® AN82250 PSoC 3、PSoC 4 和 PSoC 5LP — 使用 Verilog 实现可编程逻辑设计 AN82156 PSoC 3、PSoC 4 和 PSoC 5LP — 使用 UDB 数据路径设计 PSoC Creator CE95295 PSoC 3 和 PSoC 5LP 中基于 UDB 的 8 位计数器 CE95384 PSoC 3 和 PSoC 5LP 中基于 UDB 的 16 位定时器 CE95323 PSoC 3 和 PSoC 5LP 的硬件风扇控制 www.cypress.com ® TM 组件 ® ® ® 文档编号: 001-93057 版本*D 19 ® PSoC 5LP 入门 文档 文档名称 KBA85325 PSoC 3 和 PSoC 5LP 的 UDB 资源利用率与其他供应商 CPLD 的比较 KBA86336 PSoC 的 Verilog 基本知识 ® ® 模数转换器(ADC) ® AN84783 使用 PSoC 3 和 PSoC 5LP 的 Delta-Sigma 模数转换器(ADC)提高测量准确度 CE95277 PSoC 3 和 PSoC 5LP 中单端模式下的 Delta-Sigma 模数转换器 CE95271 PSoC 3 和 PSoC 5LP 中差分模式下的 Delta-Sigma 模数转换器 CE95276 PSoC 3 和 PSoC 5LP 的序列 SAR 模数转换器(ADC) KBA81866 在 PSoC 3 和 PSoC 5LP 中选择最佳放大方法从而获得更好的 Delta-Sigma 模数转换器性能 KBA84753 在 PSoC 3、PSoC 4 和 PSoC 5LP 中选择参考电压以获取准确的 ADC 测量 ® ® ® ® ® 数模转换器(VDAC) ® AN60305 使用 PSoC 3 和 PSoC 5LP 的 IDAC 来构建更好的 VDAC AN64275 PSoC 3 和 PSoC 5LP:提高 8 位 DAC 的分辨率 AN69133 PSoC 3 和 PSoC 5LP 中通过 WaveDAC8 组件更容易生成波形 CE95397 PSoC 3 和 PSoC 5LP 的电压 DAC CE95309 PSoC 3 和 PSoC 5LP 的抖动电压 DAC KBA84732 PSoC 3 和 PSoC 5 的 VDAC8 输出电压 KBA83238 使用 PSoC 3 或 PSoC 5 中的 VDAC 来驱动外部负载 ® ® ® ® ® ® 比较器 ® AN60220 PSoC 3 和 PSoC 5LP 的复用比较器 CE95292 PSoC 3 和 PSoC 5LP 的模拟电压比较器 CE95361 PSoC 3 和 PSoC 5LP 中使用内部 VDAC 的扫描比较器 CE95360 PSoC 3、PSoC 4 和 PSoC 5LP 中采用通用模式的扫描比较器 ® ® ® 运算放大器(Opamp) CE95339 ® PSoC 3 和 PSoC 5LP 的运算放大器(Opamp) 可编程模拟模块(SC/CT) ® AN60321 PSoC 3 和 PSoC 5LP 的峰值检测 AN62582 AM 调制和解调 CE95342 PSoC 3 和 PSoC 5LP 的可编程增益放大器 CE95343 PSoC 3 和 PSoC 5LP 的反相可编程增益放大器 CE95383 PSoC 3 和 PSoC 5LP 的互阻放大器(TIA) CE95357 PSoC 3 和 PSoC 5LP 的采样和保持 CE95337 PSoC 3 和 PSoC 5LP 的模拟信号混频器 ® ® ® ® ® CapSense ® ® AN75400 PSoC 3 和 PSoC 5LP CapSense 设计指南 CE95287 PSoC 3 和 PSoC 5LP 中使用调谐器的 CapSense CSD www.cypress.com ® ® 文档编号: 001-93057 版本*D 20 ® PSoC 5LP 入门 文档 文档名称 CE95284 PSoC 3 和 PSoC 5LP 的 CapSense CSD 设计 ® ® I/O ® AN72382 使用 PSoC 3 和 PSoC 5LP 的 GPIO 引脚 AN60580 PSoC 3 和 PSoC 5LP 中 SIO 的提示和技巧 KBA82883 使用固件来控制 PSoC 3 和 PSoC 5LP 的 GPIO KBA91716 PSoC 3 和 PSoC 5LP 中 SIO 和 GPIO 引脚之间的差别 ® ® ® 段式 LCD ® AN52927 PSoC 3 和 PSoC 5LP — 段式 LCD 直接驱动 CE95368 PSoC 5 段式 LCD ® 关于作者 姓名: Nidhin MS 职务: 高级应用工程师 背景: Nidhin 毕业于 GEC 特里苏尔(Thrissur)大学,并获得了电子与通信工程学士学位。他的技 术爱好是模拟信号处理、低功耗设计以及电容式触摸感应等领域。 www.cypress.com 文档编号: 001-93057 版本*D 21 ® PSoC 5LP 入门 文档修订记录 文档标题: AN77759 — PSoC® 5LP 入门 文档编号: 001-93057 版本 ECN 变更者 提交日期 ** 4521564 MSON 10/28/2014 本文档版本号为 Rev**,译自英文版 001-77759 Rev*B。 *A 4718360 HHLL 04/17/2015 本文档版本号为 Rev*A,译自英文版 001-77759 Rev*C。 *B 4766913 YLIU 05/15/2015 本文档版本号为 Rev*B,译自英文版 001-77759 Rev*D。 *C 4802431 YLIU 06/23/2015 本文档版本号为 Rev*C,译自英文版 001-77759 Rev*D。 *D 5045455 YLIU 12/22/2015 本文档版本号为 Rev*D,译自英文版 001-77759 Rev*E。 www.cypress.com 变更说明 文档编号: 001-93057 版本*D 22 ® PSoC 5LP 入门 全球销售和设计支持 赛普拉斯公司具有一个由办事处、解决方案中心、厂商代表和经销商组成的全球性网络。要想查找离您最近的办事处,请访问赛 普拉斯办公所在地。 PSoC®解决方案 产品 汽车级产品 cypress.com/go/automotive psoc.cypress.com/solutions 时钟与缓冲区 cypress.com/go/clocks PSoC 1 | PSoC 3 | PSoC 4 |PSoC 5LP 接口 cypress.com/go/interface 赛普拉斯开发者社区 照明与电源控制 cypress.com/go/powerpsoc cypress.com/go/plc 社区 | 论坛 | 博客 | 视频 | 培训 存储器 cypress.com/go/memory 技术支持 PSoC cypress.com/go/psoc cypress.com/go/support 触摸感应 cypress.com/go/touch USB 控制器 cypress.com/go/usb 无线/射频 cypress.com/go/wireless PSoC 是赛普拉斯半导体公司的注册商标,且 PSoC Creator 是赛普拉斯半导体公司的商标。此处引用的所有其他商标或注册商标归其各自所有者所有。 赛普拉斯半导体公司 198 Champion Court San Jose, CA 95134-1709 电话 传真 网址 :408-943-2600 :408-943-4730 :www.cypress.com ©赛普拉斯半导体公司,2012-2015。此处所包含的信息可能会随时更改,恕不另行通知。除赛普拉斯产品内嵌的电路外,赛普拉斯半导体公司不对任何 其他电路的使用承担任何责任。也不根据专利或其他权利以明示或暗示的方式授予任何许可。除非与赛普拉斯签订明确的书面协议,否则赛普拉斯不保证 产品能够用于或适用于医疗、生命支持、救生、关键控制或安全应用领域。此外,对于可能发生运转异常和故障并对用户造成严重伤害的生命支持系统, 赛普拉斯不授权将其产品用作此类系统的关键组件。若将赛普拉斯产品用于生命支持系统中,则表示制造商将承担因此类使用而招致的所有风险,并确保 赛普拉斯免于因此而受到任何指控。 该源代码(软件和/或固件)均归赛普拉斯半导体公司(赛普拉斯)所有,并受全球专利法规(美国和美国以外的专利法规)、美国版权法以及国际条约 规定的保护和约束。赛普拉斯据此向获许可者授予适用于个人的、非独占性、不可转让的许可,用以复制、使用、修改、创建赛普拉斯源代码的派生作 品、编译赛普拉斯源代码和派生作品,并且其目的只能是创建自定义软件和/或固件,以支持获许可者仅将其获得的产品依照适用协议规定的方式与赛普 拉斯集成电路配合使用。除上述指定的用途外,未经赛普拉斯明确的书面许可,不得对此类源代码进行任何复制、修改、转换、编译或演示。 免责声明:赛普拉斯不针对此材料提供任何类型的明示或暗示保证,包括(但不限于)针对特定用途的适销性和适用性的暗示保证。赛普拉斯保留在不做 出通知的情况下对此处所述材料进行更改的权利。赛普拉斯不对此处所述之任何产品或电路的应用或使用承担任何责任。对于可能发生运转异常和故障, 并对用户造成严重伤害的生命支持系统,赛普拉斯不授权将其产品用作此类系统的关键组件。若将赛普拉斯产品使用于生命支持系统中,则表示制造商将 承担因此类使用而招致的所有风险,并确保赛普拉斯免于因此而受到任何指控。 产品使用可能受限于赛普拉斯软件许可协议。 www.cypress.com 文档编号: 001-93057 版本*D 23