分类目录归档:单片机的故事

pl2303 转串口与 msp430 通信时遇到的问题

前一段时间在做一个小的系统,然后为了用起来方便,于是想着自己做一个usb转串口的bsl下载器。一个是因为手头正好有原件,另一个是因为懒得去买,还得等好久或者找好久,所以索性自己做一个。

然而事总与愿违,做完了之后并不能用,是的,不能用!我甚至都有点怀疑自己的水平了。(虽然本来水平就很菜)

这是我用的电路图(请无视下边那个乱入的二极管。)

pl2303

做出来之后的实物图是这样的:

pl2303-2

然而它并不能用。

mspfet上能出的错误全部出了一遍,然而并不知道究竟出错在了哪里。(是的最可怕 是每次错误代码还不一样!!!)

很多人都给我说是共地的问题,然而我确实共了地的。

最后在我不断的瞎试下,解决了这个问题(我都被我自己折服了!)

问题出在这里:pl2303的第四个引脚!

根据手册,这个引脚的定义是这样的:

4 RS232 VDD. The power pin for the serial port signals. When the serial port is 3.3V, this should be 3.3V. When the serial port is 2.5V, this should be 2.5V. The range can be from 1.8V~3.3V.

乍一看似乎并没有什么问题,但是问题就出在了这里,第四引脚被定义为RS232的电平信号参照脚,但是问题在于,我这个3.3v的参照脚和单片机所用的3.3v并没有半毛钱关系,及它们是分离的。

于是我将两个3.3v通过跳线连起来。

然后,就好了!就好了!我竟然按捺不住心中的激动跳了起来!

也就是说,pl2303与msp430单片机通信的时候不仅需要共地,还需要共VCC.

CCS6.0+mspfet向msp430单片机通过 bsl下载程序

前两天用了ccs6.0,到往硬件中下载程序的时候,本来应该用jtag下载的,这个是ccs所支持的下载方式,但是一方面不太熟悉jtag,另一方面手头没有仿真器,于是想用bsl进行下载,但是这时问题就出现了。它的输出文件似乎并不能被mspfet打开,去网上查,发现几乎没有相关资料,因为大家基本用的都是iar,这个可能是因为早期的ccs不支持msp430的缘故吧,于是只好自己摸索。然后记录在这里。

ccs6-1

首先新建一个工程,不得不说这个eclipse框架好评!

ccs6.0-2

build all之后可以看到这个提示

ccs6.0-3

我们用mspfet打开这个test2.out之后总是会提示不支持。

这时我们打开project菜单

ccs6.0-4

打开show build settings

ccs6.0-5

选上右边的enable msp430 hex utility看到如下界面

ccs6.0-6

设置成如图。

ccs6.0-7

然后将上边红色框出的内容中.hex改为.txt然后点OK

这样在build all的时候就会出现一个.txt文件,这个文件是mspfet可以打开的。