使用一片CY7C64215和一片74HC244(驱动隔离)设计的PSoC-ISSP编程器已经测试完成。
功能: 1。使用USB接口 2。支持RESET和POWER-ON方式编程 3。USB接口可提供4.8V,350mA供目标板使用。 4。操作界面采用VB编写,比CYPRESS的Miniprogramer的界面漂亮,编程速度至少快1倍。
关键技术: 使用了PSoC的USBUART用户模块,直接跳过USB低层,按传统对于COM口的编程操作。具体见2009年第1期北航出版的《单片机与嵌入式系统应用》杂志,第45页**“嵌入式系统与PC机的USBUART通信设计”。
下一步是结构调整,要找到与SYPRESS的Miniprogramer相同的接插件,这样就可以接口兼容使用了(**:我寄了一个SYPRESS的Miniprogramer给你,你找到相同的那个编程插头吗?2.54、5针,一面是弯针焊在PCB上,另一面是孔,插在目标板上)。
该PSoC-ISSP_1编程器是配合我设计的“PSoC_kit多功能实验开发板”使用的,当然可以完全单独使用(只是手头芯片不多,不能做全部芯片支持的测试)。
本编程器将会部分开源:提供完整的电路原理图和PCB图,提供手头所有的CYPRESS公司参考资料(编程协议,以及例程),提供我编写的上位机程序和CY7C64215的HEX文件。(将发布在http://www.**.cn/bbs/bbs_list.jsp?bbs_id=3030网站的PSoC(Cypress)讨论组中)
以上提供大家学习参考,这本身就是PSoC的应用。如果使用“PSoC_kit多功能实验开发板”上的CY8C24894也能完成本设计。CY8C24894也带一个FULL USB口,功能比CY7C64215还要强大。
化了我约一个星期的时间,集中精力完成的。当中出现了问题,不稳定,最后发现是CYPRESS的开发环境的问题。
下载最新版的开发环境(2008.11)进行编译,它给出了警告提示:中断跳转够不到。因此我将CALL改成LCALL,问题解决。而老的版本没有任何提示。就这个问题耽误我3天时间。
问题出现在整个系统快完成时,程序代码多了,不能正常工作。最后找原因,调整到一个临界点时,发现多写一句话64215就不工作,(比如:将一个不用的变量做 TEMP = TEMP+1),感觉是开发系统有BUG或缺陷。赶快上网到CYPRESS公司站上,发现有11月的新版了。下载安装后,一编译,给出的警告,问题才得到解决。
|