欢迎来到天天文库
浏览记录
ID:36488875
大小:1.68 MB
页数:82页
时间:2019-05-09
《PSoCCreator软件及设计流程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第8章PSoCCreator软件及设计流程Chapter8PSoCCreatorSoftware&DesignProess何宾2010.10PSoCCreator软件及设计流程--前言本章主要介绍PSoCCreator软件及设计流程,其内容主要包括:基于PSoC3工程的简单流程;基于PSoC5工程的简单流程;基于PLD的自定义元件设计流程。PSoCCreator软件及设计流程--PSoCCreator的主要功能PSoCCreator是最先进的集成开发环境(IntegratedDevelopmentEnvironment,IDE),带
2、有创新性的图形设计编辑器,构成独特而强大的硬件/软件协同设计环境。图形化的设计入口简化了配置一个特殊元件的任务。设计者可以从元件库内选择所要求的功能,并且将其放置在设计中。所有的参数化元件都有一个编辑器对话框,允许设计者根据需要对功能进行裁减(定制)。PSoCCreator软件及设计流程--PSoCCreator的主要功能PSoCCreator软件平台自动的配置和布线I/O到所选择的引脚,并且为给定的应用产生应用程序接口函数API,通过这些接口函数对硬件进行控制。修改PSoC的配置是非常简单的,比如添加一个新元件,设置它的参数和重新建
3、立(rebuilding)工程等。PSoCCreator软件及设计流程--PSoCCreator的主要功能在开发的任何阶段,设计人员都能很自由的修改硬件配置,甚至是目标处理器。设计者可以将应用修改到新的目标上(硬件和软件),甚至是从8位平台移植到32位平台上(只需要选择新的设备,并进行重新的建立)。设计者也可以修改C编译器和进行性能评估。下图给出了PSoCCreator软件的主界面。PSoCCreator软件及设计流程--PSoCCreator的主要功能图PSoCCreator软件平台主界面PSoCCreator软件及设计流程--PS
4、oCCreator的主要功能PSoCCreator软件平台的特点主要有:集成了原理图捕获功能用于设备配置;可供选择的丰富的元件IP核资源;集成了源代码编辑器;内置调试器;支持自定义元件创建(设计重用)功能;PSoC3编译器-KeilCA51(无代码大小限制);PSoC5编译器-CodeSourcery™的SourceryG™Lite版本PSoCCreator软件及设计流程--PSoCCreator的主要功能主界面的后侧是元件的库的分类列表,库中的元件用于满足设计者的不同要求。主界面的右侧是元件的库的分类列表,库中的元件用于满足设计者的
5、不同要求。元件的范围从最简单的元件,比如逻辑门和寄存器,到数字定时器,计数器和PWM,其它模拟元件,比如:ADC,DAC,滤波器和各种通信协议,比如:I2C,USB,CAN等。PSoCCreator软件及设计流程--PSoCCreator的主要功能符号编辑器使设计者能开发可重用的元件,这样可以显著的减少将来的设计时间。编辑器仅仅画一个符号和相关的设计关联符号。PSoCCreator允许放置新的符号。设计者可以在任何时间和任何工程中“重用”自己的设计(不需要知道实现的具体细节)。锚定工具(Anchoringtool)是一个现代的,高级可
6、定值的用户接口。它包含一个项目管理器和用于源代码的集成C编辑器和汇编器,以及设计入口工具。PSoC3/5基本编程模型-位变量的使用使用’bit’关键字声明位操作。下面给出C语言对位的声明和操作:bitmyVar;myVar=~myVar;if(!myVar){...}PSoC3/5基本编程模型-位变量的使用此外,为了保证代码容易移植到PSoC5上,可以使用‘CYBIT’关键字替换‘bit’关键字。例如:CYBITmyVar;PSoCCreator软件工具中提供了完整的宏定义集,用来将PSoC3的代码移植到PSoC5上。更详细的说明,请
7、参考cyboot文件夹中自动生成的文件cytypes.h。PSoC3/5基本编程模型-避免从中断句柄调用函数当编译用于中断服务程序ISR的C代码时,Keil编译器将试图认为在ISR中可能修改的寄存器入栈操作。如果ISR包含一个函数调用,编译器并不知道函数调用将修改哪个寄存器,这样就会将所有寄存器内容入栈。比如:改函数调用:PSoC3/5基本编程模型-避免从中断句柄调用函数CY_ISR(myISR){UART_1_ReadRxStatus();}为:CYBITflag;CY_ISR(myISR){flag=1;}PSoC3/5基本编程模
8、型-避免从中断句柄调用函数voidmain(){/*等待ISR设置flag标志if(flag){flag=0;UART_1_ReadRxStatus();...PSoC3/5基本编程模型-将变量放在合适的存储空间当变量放
此文档下载收益归作者所有