本帖最后由 xinxincaijq 于 2012-10-22 13:39 编辑
迟来的学习心得
在写这份心得之前首先要对爱板网给予我这次PSOC3开发套件免费试用的机会表示感谢,同时也要对我这份迟来的学习心得向爱板网和xinxin表示歉意。由于之前一直以为心得是要试用结束以后才发表,再加上近期实验室网络有点问题,中间有一段时间没有登录论坛,也就没有看到近期坛友们发表的一些帖子,更不知道试用时就要发表心得,所以这期间也就一直没有在论坛里发表帖子,与大家一同分享我近期的一些学习心得,在此也要向各位坛友们说声抱歉。 我今天之所以知道在试用期间就要发表心得体会,这还要感谢xinxin,是他在开发板试用期限即将结束之际的及时提醒,才让我得知现在急需发表我近期的一些学习心得,来与各位坛友一同分享、学习,在此也要向xinxin表示感谢。下面就与各位坛友一同分享下我目前的一些学习心得以及学习过程中遇到的一些问题,希望大家相互学习,共同进步。
由于帖子内容较多,而且图片不方便显示,我就以附件形式把整个内容上传了上来,有兴趣的坛友可以把附件下载下来看看,给大家带来的不便敬请谅解!
第一:我学习工程中遇到的一些开发套件与应用环境版本不匹配问题 问题一: 查阅最新psoc3 FTK rev*g,版本说明如下:
经过对应版本对比,发现早先的psoc3 ES2作为测试版本不是很稳定,建议production版本,升级过程比较复杂,而且在最新2012.7发布的creator2.1不再支持psoc3 ES2;原来的自己的板子为rev*b版本;[2009.7.27]当从B版本升级至C版本,即版本说明的D,从cretor1.0.直接跳到2.0;【鉴于C版本在creator2.0出现之前,所以后面12月份发布升级说明,即对应的D版本】 Rev*B版本配置: Psoc creator 1.0beta5.0 Programmer 3.12 Keil compiler8.16 下面的是rev*c的最新配置:
但是由版本型号又知道rev*C支持1.0production;只是根据后面11月份升级的creator2.0进行了一个版本的升级说明; 问题二: 开发套件配套的环境FKT版本不一样,需要的creator、programer和附带例程不一样,这一点要观察清楚; 比如说psoc3 FTK1.0 REV*B是原有套件psoc3 FTK1.0Rev**的升级版,此时则对编译环境要求如下: System Requirements and Recommendations 具体的升级步骤可在cypress update manager中进行配置; 1. 确定套件版本号;及随机CD的FTK开发环境版本; 2. 根据对应版本需求进行配置【如上描述】; 3. 在cypress update manager对应选项的“configure”配置;安装类型选择installation tape中的“custom”,接着选择对应的合适版本
4. 选择完后进行升级处理,对相应环境如creator、programer同样处理,OK,即可分享最新版本的例程了。【前提是没有开发套件硬件版本没有升级说明】 file:///C:\Users\vito\AppData\Local\Temp\ksohtml\wps_clip_image-26315.png file:///C:\Users\vito\AppData\Local\Temp\ksohtml\wps_clip_image-18704.png 问题三: Unhandled exception error on opening project with PSoC Creator How to resolve the unhandled exception error when open a project with PSoC Creator?
解决方法:Please follow the steps below to fix this: - Windows - >Start -> Run "regedit" ; - Find the register can and check the value of HKEY_CURRENT_USER\Control Panel\Desktop\MenuShowDelay ; - If it is zero, change it to greater than zero; - Rstart the computer for the change to take effect. 问题四: dbg.M0033: The selected debug target 'CY8C3866AXA-040 UNASSIGNED' is not compatible with the project's selected device 'CY8C3866AXI-040 ES2' 解决方法:工程器件型号选择和实际开发套件芯片不一致;
Miniprog doesn't acquire the PSoC 3/5 device from PSoC Creator
Last Updated: 06/25/2011 | What should I check when MiniProg3 doesn’t acquire the device? | Is the target board powered on? Note that the MiniProg3 (i.e. USB) is not recommended as a power source for your target boards. Are the USB drivers installed? You should see the MiniProg3 under Universal Serial Bus controllers in the Device Manager. Open the properties and check that the device is working properly. Does your selected device and silicon version match? PSoC creator supports preproduction devices but you need to be sure that your project is built for the silicon version you have on the target. Use the Device Selector to check that your project and silicon match. You select the revision from the bottom right-hand corner of the selector.
When silicon and project are mismatched the device cannot be acquired. To force the tool to try the acquisition, and generate useful error messages, open the “Select Debug Target” dialog from the Debug menu.
Do uble-click on the PSoC device. If there is a mismatch you will get an error of the form: dbg.M0033: The selected debug target ’PSoC3 CY8C3866AXI-040 ES2’ is not compatible with the project’s selected device ’CY8C3866AXI-040 ES1’. |
第二:我学习过程中做到的一些实际应用 1.使用PSOC3开发板入门套件驱动LCD1602字符型液晶 首先,在creator2.0开发环境中从Cypress标签栏下的Display选项中将一个字符型LCD模块(Character LCD)拖放到一个工程中,然后在工程中双击放置的LCD模块对其进行配置,如图1所示:
图1
随后在对LCD进行配置的对话框中打开Datasheet(数据手册),在数据手册中可以看到PSOC3主芯片引脚与驱动外部LCD引脚的一个硬件连接关系,如图2所示,从图中明显可以看到PSOC对液晶的驱动相比于其他一些常规MCU来讲一个显著优点就是硬件连接简单,一共只需要7根连线(3根控制线、4根数据线),而其他常规MCU与液晶的连接则至少需要11根线(3根控制线、8根数据线),此外在creator2.0中编写对液晶的驱动以及显示控制函数也非常方便,一些最基本的液晶底层驱动函数根本不需要编程者自己编写,因为在工程中配置相应的模块后,他的一些底层驱动函数在程序编译时会有系统自动生成,我们只需要在工程中调用相应的驱动函数即可,从而大大缩短了编程者的开发时间。
图2 此外在数据手册中我们还可以看到PSOC配置好的端口引脚与外部液晶引脚的具体对应连接,如图3所示,根据此引脚连接关系,搭建相应的硬件连接电路,编写程序,下载到开发套件即可看到液晶显示你所要显示的内容,图4是我设计完成之后的一个最后结果,有兴趣的大家可以看一下。
图3
图4 本设计就是用万能板搭建一个PSOC3开发套件和LCD1602液晶外部接口电路,并且把开发套件上所提供的外部IO口以及液晶各个引脚都通过外部排针引了出来,以方便后续的应用设计,本设计只用到了其中7个IO口,外加1根对液晶的供电线和1根共地线就可以实现对液晶的控制,应用设计简单可靠、通用性好。此外我在设计过程中遇到的一些问题,还望大家注意: 最初给液晶供电我使用的是开发套件上的VDDIO,但由于开发套件上默认的VDDIO是3.3V,不能够驱动液晶,所以最初液晶不能正常显示,我就从外部又给液晶单独加了一个5V供电电源,此时液晶显示正常。但随后经过对开发套件原理图的查看,我发现开发套件上的VDDIO是可以配置为5V输出的,只需要将J1上的跳冒连接到1和2(J1-1 to J1-2),VDDIO就可以输出5V电压,此时就可以直接使用板上的VDDIO给液晶供电,而不再需要单独给液晶外加供电电源,但此时一定要注意液晶的接地端和开发套件的接地端一定要共地。 1.使用PSOC3开发板入门套件配置一个模数转换器用与采集电位器电压,并将电压显示在LCD1602字符型液晶上。 此设计与前面的驱动LCD1602液晶的设计基本相同,无非就是在前面设计的基础之上增加了一个ADC模块,硬件电路不需要改动,配置好ADC输出引脚之后(此处使用的是P07),只需将需要采集的电位器电压连接到配置好的相应IO端口,在程序中增加AD的启动、转换以及等AD转换结束之后读取转换结果并将转换结果送到LCD显示等程序代码,即可实现在液晶LCD1602上显示AD模块采集到的外部电位器电压的功能。具体实现过程在此就先不做详细介绍,这里就只把我最终实现的结果与诸位坛友分享,如图5所示,有需要的坛友可以跟我联系。
图5
其他应用设计心得体会,后续更新中…… 敬请期待!
|