Forum : ST7/STM8
Original Post
Post Information | Post |
---|---|
February 8, 2010 - 12:48pm
|
Hi! I need to in-circuit debug & program my ST72F521R9 MCU's via the ICC interface. Can I use the RLink Standard for doing this? I believe so! Is ST72F part of the ST7 family? Or is ST72 its own family? I used to program the MCU's via the inDART STX/D device from ST Microelectronics. All the code written was developed with its IDE STVD7 in C, using the Cosmic C compiler. Will I be able to use the exact same code - simply copy/paste? Or is there some complicated code-transfering necessary? Hoping you can help me, |
Hi,
Yes you can program this ST7 with the RLink. (ST72 is a part of the ST7 family, and the F just means Flash)
You can keep using STVD/STVP. Just update the software to the latest version available on the ST website. It will then allow you to use the RLink directly from the interface you are used to.
Or you can use the hex file generated by your old version of STVD to program it using the RFlasher7 or ST7_pgm programming utilities from Raisonance. (install Ride7 & RKit-STM8 to get them)
Debugging will not be so simple, as this CPU does not provide any hardware mechanism for that.
I don't know if STVD provides any in-circuit debugging for this ST7. I suggest you try and see what happens.
Ride does provide it, but in a very limited way (see the GettingStartedST7 doc from Ride for the list of limitations), and then you will indeed have to port the project to the Ride IDE.
The clean solution would be to get a few samples of the ST72F521BR9. It is exactly the same as your ST72F521R9, plus it has a hardware debug module that makes debugging much more comfortable, regardless of the IDE. You can use it to develop the application (using either STVD or Ride7 as you prefer) and then program the application on the ST72F521R9 in production. (using STVP, RFlasher or ST7_pgm as you prefer) I suggest you contact your ST sales representative and ask for a few ST72F521BR9. (if they still have any)
I hope it helps.
Bet Regards,
Vincent
Hello VincentC!
Thank you for the mindblowing-quick answer! Sounds fantastic.
Basically the program is already written and there might only be slight changes, so debugging is not that much of an issue. Simple programming of the devices is far more important.
That leaves only one question: RLink Standard or Pro? Does the Standard do the trick, or do I need the Pro for my use? The price difference is huge...
Best regards,
Sebastian
Hi,
For ST7 you can take the RLink-STD.
The difference with the RLink-PRO only concerns debugging of ARM CPUs.
Best Regards,
Vincent
I just saw, here in Austria, the STX RLink is the only one available: http://at.farnell.com/stmicroelectronics/stx-rlink/programmdebugger-f-st7-str7/dp/1171272
Is it the same as the STD?
Yes it is the same.
Vincent
Hello VincentC!
Since you were such a great help the last time I hoped you can give me some support on the following issue as well :)
I have now received the Rlink! Unfortunately not everything works perfectly yet...
I installed the software that came with it, and in the RFlasher7 I can sucessfully connect to the Rlink, but the only target MCUs I can select there are LPCs, STMs and STRs. None of them matching my MCU ST72F521R9. So the basic connection between my PC and the Rlink seems to work, but I can't program my MCU.
Basically I would like to continue using STVD from ST Microelectronics, since I've written the code in this IDE. Here I can select the correct target MCU, but unfortunately I get an Error message saying that this MCU is not supported by the currently selected debugging instrument. (I chose "lcd Rlink" from the drop down menu - is this the right one?).
Can you help me how to use STVD together with my new Rlink and my MCU? I am not quite sure how to configure the settings correctly.
Alternatively I could also use the Raisonance software, but I am not at all familiar with it and also would I have to port my nice C-code from STVD to Ride, and I would love to avoid this work. But maybe it could be useful know at least how to program the MCU with the Rlink and Ride aswell - to see if everything works together.
Thanks again for your help in advance,
sincerly Sebastian
Hi,
From what you describe I guess you only installed the Ride7 kit and the RKit-ARM. I think you just forgot to install the RKit-STM8 kit, which includes support for the ST7 devices...?
It should be on the CD too. However, it is highly recommended to download and install the latest versions of the software (all the kits you need; for you Ride7 and RKit-STM8) from the Raisonance website. The CD could have been for a quite long time in the distribution line, and is very probably obsolete by the time you receive it.
Note that you do not need to change anything in the C code for using RFlasher. Just tell RFlasher to program the hex file generated by STVD. You can also tell Ride to debug the elf file generated by STVD. You will have to port the project if you want to compile with Ride. And the C code will change only if you were using the Cosmic compiler.
I see no reason why you couldn't use STVD or STVP directly with the RLink, except maybe, as I explain in a previous post, debugging is very limited with this ST7 device and maybe STVD doesn't provide it at all. Try with STVP first. I am sure programming must work. Of course you must download and install the latest version from the ST website. If that is not enough, you will have to ask ST support.
I hope it helps.
Best Regards,
Vincent
Hi!
You were right - I hadn't guessed that the ST7 family support came with the RKit-STM8. I downloaded all the components fresh from raisonance homepage and installed them sucessfully. Now ST72521R9 and ST72F521R9 are selectable in RFlasher.
I loaded the .s19 file generated from STVD with the RFlasher. The hex code loaded I can see in the "code view window" seems to be the correct one, since some of the hex data represent ASCII coded text that will be printed on an LCD
(such as the line: 30C0: 20 20 20 52 65 73 65 74 R E S E T).
So I am pretty sure I loaded the correct file. I set the device according to my MCU and selected Rlink as programmer. When I press the button "Connect to RLink and read serial number" a window pops up with the information: "Successful connection to RLink: Serial Number: dngStd003016394, Firmware Version: 0.0.3" ... so that works as well.
But when I try to communicate with my MCU (erase, read option bytes, blank check...) I always get an error message: "Error resetting in ICC mode: no response from target device".
I get the same result with Ride7.
I made sure that the power supply for the MCU is 5V. The onboard crystal on the MCU's device is a 16Mhz.
I tried setting the PW-5V jumper and the 12Mhz jumper on the RLink's ICC connector - without success.
I read the RFlasher getting started document, but unfortunately there is no FAQ/Troubleshooting section.
Next I tried the STVP, where I can also select my target MCU + Rlink, but I get several error messages too about connection errors to the target. In STVD it still says that Rlink doesnt support my MCU... But I know this is ST software and not your competence center.
Can you tell me what options/settings I could have missed in RFlasher?
I know that the ICC on my board works and is connected correctly, because I already programmed these MCUs on this board via the ICC connector using ST's inDART-STX programmer/debugger.
Thank you very much
Sebastian
Hi,
You will find a troubleshooting section about ST7/STM8 in the GettingStartedSTM8 document, and also information about the ADP jumpers. The RFlasher doc just explains how to use the GUI, nothing specific to ST7/STM8.
From what you say I think that there is no problem in the configuration of the software. Just make sure that you are using the latest version of STVD/STVP, as some DLLs might be shared and using an old version of STVD could be the source of problems in RFLasher.
Unfortunately, successfully connecting with InDart does not prove that the board is correct. The InDart and the RLink have different output stages on their signals, and some design mistakes can be overcome by one and not the other. (and it works both ways, depending on the situations)
Please first check the ADP jumpers:
The SWIM jumper should not be plugged. If using ADP V2.x, ICC jumper must be plugged.
The Adapt jumper should not need to be plugged, but you can try to plug it, it will not create conflicts, just make a pullup stronger.
The 12MHz jumper MUST NOT be plugged, as you already have a clock on your board. If you did plug it even for a short time, please check with an oscilloscope that the 16MHz is still oscillating as expected, as the wrong connection might have damaged the crystal or ST7.
The PW-5V jumper MUST NOT be plugged, as you already have a power supply on your board. Like for the 12MHz, if you did plug it, you will have to check that it did not damage your board. And it might have damaged the RLink.
You should also check that your board does not include a very big capacitor on the RST line. The main difference between InDart and RLink is the output stage on the RST signal.
If the information above does not help, then please send your board's schematic to us:
Best Regards,
Vincent
hi there! i would like to ask if RLINK STX will work with my PSDSoft Express software, and would it work with ST micros - PSD4235?
thanks.
Hi,
Yes, RLink can be driven by PSDSoft, (or CAPS) and in this configuration all the PSDxxxx devices are supported.
(With the Raisonance software, only the µPSDxxxx devices are supported.)
Just be careful that PSDSoft is an old software that will probably not work in Vista, and surely not in Win7.
For more support on PSDSoft, you should ask ST.
Best Regards,
Vincent
Hi Vincent,
Thanks. That helps a lot.