您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > 基于PSoC的Creatord程序设计
第6章基于PSoCCreator的程序设计何宾2011.12PSoCCreator软件功能PSoCCreator2.0(以下简称PSoCCreator)是最先进的集成开发环境(IntegratedDevelopmentEnvironment,IDE),带有创新性的图形设计编辑器,构成独特而强大的硬件/软件协同设计环境。图形化的设计入口简化了配置一个特殊元件的任务。设计者可以从元件库内选择所要求的功能,并且将其放置在设计中。所有的参数化元件都有一个编辑器对话框,允许设计者根据需要对功能进行裁减(定制)。PSoCCreator软件功能PSoCCreator软件平台自动的配置和布线I/O到所选择的引脚,并且为给定的应用产生应用程序接口函数API。修改PSoC的配置是非常简单的,比如添加一个新元件,设置它的参数和重新建立(rebuilding)工程等。在开发的任何阶段,设计人员都能很自由的修改硬件配置,甚至是目标处理器。设计者可以将应用修改到新的目标上(硬件和软件),甚至是从8位平台移植到32位平台上(只需要选择新的设备,并进行重新的建立)。设计者也可以修改C编译器和进行性能评估。PSoCCreator软件功能PSoCCreator软件平台的特点主要有:集成了原理图捕获功能用于设备配置;可供选择的丰富的元件IP核资源;集成了源代码编辑器;内置调试器;支持自定义元件创建(设计重用)功能;系统注解(Annotation)设计功能;静态时序(StaticTimingAnlysis,STA)分析功能;PSoC3编译器-KeilCA51(无代码大小限制);PSoC5编译器-CodeSourcery的SourceryGLite版本PSoCCreator软件功能其中:系统注解功能能帮助设计者,详细描述描述PSoC芯片外所使用的器件和PSoC芯片之间的关系。静态时序分析功能帮助设计者了解设计中,数字逻辑部分的各种时序关系和系统的功能性能。GPIO控制程序的设计1.在计算机上的桌面上,选择开始-所有程序-Cypress-PSoCCreator2.0-PsoCCreator,打开PSoCCreator软件;2.在PSoCCreator2.0软件的主界面菜单下,选择File-New-Project...;3.按下图设置参数:GPIO控制程序的设计图6.1新建工程界面GPIO控制程序的设计--查看和配置公共资源图6.2选择GPIO.cydwr文件选中,然后查看公共资源.GPIO控制程序的设计如图6.3所示,该文件界面的正中间是所选择芯片的类型和引脚分布。下面是Pin(引脚)标签、Clock(时钟)标签、Interrupts(中断)标签、DMA标签、System(系统)标签、Directive(指令)标签和FlashSecurity(Flash安全性)标签。GPIO控制程序的设计图6.3公共资源的配置界面GPIO控制程序的设计图6.4公共时钟参数鼠标双击该区域GPIO控制程序的设计图6.5时钟树结构用汇编语言编写GPIO控制程序参考Cypress公司PsoC3寄存器手册,存储器映射地址0x5100对应于端口0的数据输出寄存器。下面将通过编写汇编语言程序来控制端口0。下面给出编写汇编语言的步骤:用汇编语言编写GPIO控制程序添加汇编源文件在编写汇编语言程序前,需要添加汇编源文件到工程中,下面给出添加汇编源文件的步骤:1.如图6.6所示,在WorkspaceExplorer窗口下,选择Project‘GPIO’,点击鼠标右键,出现浮动菜单,选择Add-NewItem...;用汇编语言编写GPIO控制程序图6.6准备添加汇编源文件用汇编语言编写GPIO控制程序2.出现如图6.7所示的界面,选择8051KeilAssemblyFile。修改汇编源文件的名字为:main_asm.a51,点击“OK”按钮。图6.7添加汇编文件用汇编语言编写GPIO控制程序如图6.8所示,出现汇编源文件模版。图6.8汇编模板源文件用汇编语言编写GPIO控制程序按照8051汇编语言的书写规则,添加图6.9中的汇编语言代码到汇编模板源文件。图6.8添加代码的汇编源文件在main.c中添加函数调用在WorkspaceExplorer窗口下,选择main.c文件,并按照图6.10添加代码到main.c文件中,表示通过C语言调用汇编语言所编写的CONTROL_GPIO()函数。图6.10添加代码到main.c文件中在main.c中添加函数调用代码添加完成后,在PSoCCreator的主菜单下选择Build-BuildGPIO,对整个设计进行软件和硬件编译处理。添加并配置数字引脚为了看到汇编语言对P0端口的操作和控制,需要添加数字端口。下面给出这个步骤:1.如图6.11所示,选择Cypress标签栏,该标签栏下的窗口列出了Cypress提供的各种IP核资源。在该列表中找到PortsandPins选项,并展开,找到DigitalOuputPin条目。添加并配置数字引脚图6.11选择数字输出端口界面添加并配置数字引脚2.如图6.12所示,用鼠标将该条目拖拽到设计原理图界面上。图6.12添加数字引脚后的原理图界面添加并配置数字引脚3.用鼠标双击该引脚符号,打开图6.13所示的配置界面。进行如下设置:图6.13数字输出引脚配置界面构建完整的硬件设计结构PSoCCreator2.0版本增加了注解(Annotation)特性,该特性使得设计者在原理图界面内不但可以清楚地给出PSoC器件内各个模块之间的联系,而且可以清楚地描述出PSoC器件外部的元器件和PSoC的连接关系,这样可以帮助设计者更加清楚地描述所构建的硬件系统的结构。在该设计中,将Pin_1的7位输出分别连接到CY8CKIT-030开发平台的LED灯上,为了描述这个连接关系,将使用注解工具进行描述。下面给出实现这个描述的步骤,其步骤主要包括以下内容:构建完整的硬件设计结构1.在主界面中间的绘图列中,选择连线按钮,按照图6.14所示的界面,在Pin_1引脚后面连接一根线。注意:要使用这一特性,在对引脚进行配置的时候,必须选中“ShowAnnotationTerminal”选项。图6.14添加注解符号连接总线构建完整的硬件设计结构2.在主界面的右侧窗口中,选择“Annotation”标签,该标签栏下给出了各种注解符号。如图6.15所示,找到Diodes条目,并展开,选择LED条目,并用鼠标将该符号拖到原理图界面中。图6.15LED注解符号构建完整的硬件设计结构3.如图6.16所示,找到Passive条目,并展开,选择Resistor条目,并用鼠标将该符号拖到原理图界面中。图6.16Resister注解符号构建完整的硬件设计结构4.点击鼠标右键,对注解符号进行旋转,按图6.17所示位置放置这两个符号。图6.17放置两个注解符号构建完整的硬件设计结构5.鼠标双击电阻注释符号,如图6.18所示,打开配置界面,将Value属性值改为100。图6.18修改电阻注解符号值构建完整的硬件设计结构6.如图6.19所示,复制,粘贴这两个符号8次。完成注解符号的添加。图6.19完成添加注解符号构建完整的硬件设计结构7.如图6.20所示,在“Annotation”标签栏下,找到Power条目,并展开,选择“Ground”.图6.20找到地注解符号构建完整的硬件设计结构8.如图6.21所示,将其添加到原理图界面中。图6.21添加地注解符号到设计中构建完整的硬件设计结构9.如图6.22所示,选择连线工具,完成电阻、LED和地注解符号的连接。图6.22连接电阻、LED和地构建完整的硬件设计结构10.下面选择连线工具,准备连接电阻到总线上。如图6.23所示,首先选择连线工具将R_1连列到总线上。图6.23连接R_1到总线上构建完整的硬件设计结构11.鼠标双击该连线,打开图6.24所示的界面,按下面进行参数设置:不选中Usecomputednameandwidth;在SignalName下,不选中SpecifyFullName;Indices下选择Bit,并将Index(索引)设置为0;12.点击“OK”按钮。关闭属性设置界面。图6.24连线属性设置界面构建完整的硬件设计结构13.重复上面的第10步-第12步,分别将R_2、R_3、R_4、R_5、R_6、R_7、R_8分别连接到总线上,并且按照图6.24的设置,将Index分别设置为1,2,3,4,5,6和7。14.完成上述步骤后,完整的硬件设计如图6.25所示。构建完整的硬件设计结构图6.25完整的硬件设计构建完整的硬件设计结构注意:通过注解特性,可以很清楚地看到整个的设计结构,其中包括PSoC芯片的内部设计和PSoC外部所应该连接的电子元器件,更加清楚地建立完整电子系统设计的思想。引脚配置1.在PSoCCreator软件主界面左侧的WorkspaceExplorer窗口下,选择并打开GPIO.cydwr文件。2.按照图6.26所示,通过Pin栏下的下拉框,将Pin_1[7:0]逻辑引脚分配到PSoC3芯片的P0[7:0]端口。图6.26引脚分配界面下载并调试工程本书所有的设计均在Cypress提供的CY8CKIT-030硬件开发平台上实现。基于Cypress提供的平台,可以采用下面的两种方式下在程序到目标系统中:1.开发板默认的编程接口是一个基于USB的板上编程接口。当给PSoC3编程时,将USB电缆插到开发板的编程USB连接器J1接口。当使用板上编程器时,不需要外部的12V电源或9V的电池电源。用于编程的USB电源可用于开发板的供电。如果板子已经从其它地方供电的话,插入USB编程接口不会损坏开发板。下载并调试工程2.板上的PSoC3芯片也可以通过使用MiniProg3(CY8CKIT-002)。当使用MiniProg3编程PSoC3时,使用开发板上的连接器J3。注意:MiniProg(CY8CKIT-002)不包含在PSoC3开发工具中。需要从Cypress另外购买。下面准备下载代码到芯片,并对设计进行调试。下面给出实现这一过程的步骤:1.准备Cypress提供的CY8CKIT-030开发板;2.在板子上,用导线将P0[0:7]端口中的任意4个端口和板子上的四个LED灯进行连接(为了观察程序对端口的控制)。下载并调试工程3.用下载电缆连接目标系统和计算机的USB接口(可选择前面两种方法中其中的一种);4.在PSoCCreator主界面下选择Debug-Program,在PSoCCreator输出窗口显示如图6.27所示的信息,表示正在编程和编程成功的信息(第一次使用,需要设置编程环境)。5.一直等待编程成功为止。注意:由于程序执行的速度较快,建议使用断点调试的方式,这样能更清楚的看到程序对端口的控制。下载并调试工程图6.27编程Flash信息下载并调试工程下面给出对该设计进行调试的步骤,其步骤主要包括:在PSoCCreator2.0主界面主菜单下,选择Debug-Debug选项,打开调试器主界面;为了观察程序对端口的控制,在工程管理窗口,找到main_asm.a51文件。如图6.28所示,在该文件的MOVX@DPTR,A代码上设置断点(按键盘上的“F9”按键设置断点)。下载并调试工程图6.28设置断点下载并调试工程如图6.29所示,在主界面的工具栏下,选择不同的运行按钮,用于控制程序的运行。图6.29控制程序运行的按钮下载并调试工程如图6.30所示,观察8051CPU内核寄存器的变化情况。图6.30CPU的内核寄存器的变化下载并调试工程5.如图6.31所示,在6.30窗口下,选择Local、Menmory标签,就可以查看本地变量和系统存储器的内容。图6.31查看本地变量和存储器内容标签用C语言编写GPIO控制程序很多嵌入式开发人员表示他们所编程能力始终能比编译器做得更好。不仅如此,这些设计人员还认为应该使用汇编语言重新编写所有代码。然而事实上,现代
本文标题:基于PSoC的Creatord程序设计
链接地址:https://www.777doc.com/doc-2534892 .html