MOV.W #060FFh, 026h ;Select direction and resistors
PulseLp: MOV.B #0FFh, 021h
NOP
MOV.B #00h, 021h
JMP PulseLp
END
I bought the MSP JTAG … Dongle and made a board with the connections shown in the MSP430 user’s manual. Read the meager instructions and set all the options and as far as I can tell nothing happens. I got an error message once. But, now I don’t even get that.
With the options set, the debug button is disabled. I do not get any verification of the download. But, then, I don’t find any download or program button. I do not get any C-Spy messages. Is there something else that needs doing?
I do not know what you got. Sounds like you have a MSP430F2013 chip on your own board and a TI JTAG FET with Parallel Port Interface. Please be more specific. Do you have a eZ430-F2013?
I spotted a few problems in your code. But it sounds like you have problem with the IAR IDE too. Again, I need more information before I can help you. Here are the problems that I spotted in you code.
(a) You did not use a header file (e.g., #include ). What you did is fine, but it makes the code harder to read and more error prone.
Thanks for the critique. I was a bit over enthusiastic clearing RAM. I dropped it to 64 words. It is my understanding that the program memory runs from 0F800h to 0FFFFh. I assume the ORG should be at 0F800h. When I change it to OFFFEh I get a ‘segment too long’ error near the beginning of the program.
In Project>Options>General Options>Target the MSP430f2012 device is in the window. Does this substitute for the #include directive?
My assembler source code file extension is .s43
I have set everything I could find to MSP430f2012.
I have set the debugger to use the FET.
My target board has a 10Mhz oscillator. The system is running on 3.3 V.
I built a connector on the board to accept the Dongle.
I am running code on two PCs. I use one (Windows XT) for software and the other (Windows 98) for the hardware debug.
About clearing RAM, you were correct to begin with. I was wrong. You loaded R15 with 128 and were counting it by 2s. My apologies for the false alarm.
About location 0FFFEh, you misunderstood me. What you need to do is just add two lines before END:
ORG 0FFFEh
DW Clear_RAM ; or “DW 0F800h”
After a Reset, MSP430 loads the contents of 0FFFEh-0FFFFh to Program
Counter (PC) and start to run. Without those two lines, PC=>garbage.
Are you going to use a 10MHz oscillator or crystal? A 10 MHz crystal will not work for F2012. It can only take a low frequency one such as 32 kHz. But let’s worry about this later.
The error msg “No target device found” means the FET is talking to the PC but cannot talk to a MSP430 chip (via JTAG). You better check the JTAG connection to you F2012 chip. How did you wire them? Following what TI document?
The files with a “ca” or “sd16A” in the file name cannot be used with F2012. All the others are usable (you need to change the “#include ” to “#include ”
I read the following pins from the board wiring not the schematic.
MSP430 connections. From the bottom 1 is the upper right pin - pins count down the right side and back up the left. I checked for dumb errors like chip inverted:
1 +3.3V
2 X
3 X
4 X
5 X
6 X
7 X
8 X
9 X
10 Pin 1 on JTAG Connector and 47K to +3.3V
11 Pin 7 on JTAG Connector
12X
13 Output of 10MHz Osc
14 Gnd
JTAG Connector from bottom. Pin 1 is in the upper right corner. Pins are numbered side to side. Pin 2 is in upper left hand corner:
1 Pin 10 of MSP430 and 47K to +3.3V
2 +3.3V
3 X
4 X
5 X
6 X
7 Pin 11 of MSP 430
8 X
9 Gnd
10 X
11 X
12 X
13 X
14 X
There is no printer on this PC
I am using one of the programs you suggested. It toggles the output
port, similar to what I was attempting. It assembles without errors or warnings.
When I go to Project>Debug I get the ‘Device not found message’. When I click on retry I get the … .d43 file not loaded message.
I have checked all of the wiring and signals. The output of the 10MHz oscillator is not swinging from rail to rail. It does not reach ground. I Will substitute some signal that does have a full supply swing.
I made all of the connections you listed. Still does the same thing.
Under FET Debugger I found something interesting. The protocol is greyed out. The only way I have a selection is to use the TI USB button. Then I can select a protocol option. Perhaps This one only works with the little TI plug in. I haven’t yet figured out what that thing does.
Does this mean they want more money for one that works with the printer port?
Also I notice that pin 4 on the JTAG connector is labeled Vout - that’s where you put Vin. Hmmm marketing?
I installed the little USB gadget that I got with my development kit. The Debug downloads to it fine on my main desk top. Does not work with my older W98 lab computer.
I can solder a cable onto the USB gadget and use it for an In Circuit Emulator. But I can’t program a chip with it unless I rip off the 430 device that is on the board. Might get another one and do just that. Doesn’t seem that it should be necessary. Everything should work like you describe.
Looks like two of the wires on the little connector go to Pins 10, 11 so the other two must be power and ground. That’s an eentsie beentsie connector. Don’t think I have anything close to it.
I’ll have to give it some thought. Probably the best way to start is to solder a header onto the removable board and use it as an emulator. When I get familiar with the process I can try programming from the connector.
Looks like two of the wires on the little connector go to Pins 10, 11 so the other two must be power and ground. That’s an eentsie beentsie connector. Don’t think I have anything close to it.
I’ll have to give it some thought. Probably the best way to start is to solder a header onto the removable board and use it as an emulator. When I get familiar with the process I can try programming from the connector.
Thanks again. I think I can move on now.
The connectors are made by Mill-Max and have 0.05" spacing leads. They are virtually impossible to buy from a distributor but I got some samples out of them and have made a PCB for the MP430F2001, which connects to the eZ430 in place of the 'F2013 board.
It would be a nice product for SparkFun. Looks like it’s the only way to go. I looked at all the stuff I have and nothing came close. Either too big or too small.
Old Cow,
All of the literature on the Olimex device says it works with KickStart so I spent some more time with it. I have a bit more understanding and confidence having seen the system work. No dice. I cannot get the printer port to work at all.
I wired a 14 pin header onto the USB gadget. It did not like the extra load on pins 10 and 11. The wires are only 2 inches long. When I disconnected pins 10 and 11 it worked fine.
I programmed the LED blinking demo into it, removed it from the USB thing and plugged it into my applications board. Nervously plugged in the power supply and, Ta Da, the little green LED blinks. It works! It works with my 10Mhz external oscillator. Now, that is progress.
I’ll play with the LED program for a while to get my I/O initialization errors corrected then get back to programming the application. I think the little green LED will come in handy for debug.