The code we are using has been built and successfully loaded onto the TI Control Card which has the ‘F28035 processor. Apparently, TI doesn’t sell control cards with the ‘28034 processor. When I then try to load this into the ‘F28034 processor which is on my board design I get the following error “C28xx: Flash Programmer: Device is locked or not connected. Operation cancelled.
C28xx: GEL: File: I:\HL Project\Software\debu\workspace_RotaFlowHW\RotaFlowSS\Debug\RotaFlowSS.out: Load failed.”
When I test the target using the proper emulator and selecting the TMS320F28034 processor the emulator is properly reset and reports that one device has been found in the scan chain. So it appears that the emulator is properly set up and the target has been found to be present.
In both of the above load attempts I am using the same design JTAG interface which I had previously successfully used to program the other processor in my board design the ‘F28069.
I have notice that there is a ‘.tcf’ file which had previously been created referencing the ‘F28035’ processor. I don’t know if this could be the problem or not.
Mike,
Apart from the CLA there is functionally no difference between F28034 and F28035. This is why we don't sell a different kit. It looks like the device actually might be locked. Here are some things to check:
Is this a brand new part or has it been programmed before? Was there a password (just checking)?
When you connect with the emulator can you view the contents of internal protected memory (flash, L0, L1,...)? If not, in the CCS Debug (I'm assuming this is CCSv5) perspective, try: "Scripts -> Code Security Module - Unlock_CSM".
What happens if you open the flash tool from the debug perspective in CCS? Can he unlock the flash using the button in the Code Security Password section?
We have seen a couple of forum posts similar to this one where the latest version of the flash tools were not being used. It's always worth checking for CCS updates when this type of thing happens - just in case.
Hope this helps. Let me know what you find.
John
John Walker
Embedded Processor ApplicationsCentralized Applications Team
Mike,Asides from what John has mentioned it may also be worthwhile to take a look at your project's linker command file. I would make sure that you've used the linker command file for the F28034 (instead of the one for F28035). This will keep the linker from putting code into memory that exists on the F28035 MCU but doesn't exist in the F28034 MCU.Thank you,Brett
Brett,
I am presently working on what John sent me and so far I have been able to connect to the processor in the CCS Debug perspective and I am able to see the memory and register contents but when I try to erase flash it reports "Error erasing flash memory. Device is locked or not connected."
Regarding the linker command for the F28034 I asked about that with the our programmers and they are not aware of a specific F28034.cmd file. We are using using the F28035.cmd file and within its' contents it states that this file may be used for all F2803x devices.
Thank you for your input.
Mike
Michael,Assuming you can view protected memory (such as L0) via the memory window, it looks like the device is not locked. A secondary check on this would be to read memory locations 0x3f7ff8 - 0x3f7fff when connected via CCS. If these location can be read and are all 0xFFFF the device is unsecure (not locked).Within controlSUITE there are various linker command files for each device. See below path for where to find this in cSUITE. Most of the time using the larger F28035 file on all F2803x devices is fine, however occasionally an issue can pop up such as when you are trying to use more memory than you have available.\controlSUITE\device_support\f2803x\v126\DSP2803x_common\cmd\Additionally, do you happen to have a second controlCARD that you can try with?Thank you,Brett
On the card that we are discussing I did check the the PWL locations referenced above and the contents are all '0s' indicating that the flash is locked. I was also able to change the contents of low memory.
Using the link suggested above I was not able to find a source for an f28034 cmd (linker?) file.
I have now connected the emulator to the JTAG input of a new virgin (never been used or programmed) and checked the PWL locations and they are all 'Fs". I will be attempting to program this card soon unless you suggest that I wait awhile.
Thank you,
Michael,You should be able to find the linker cmd files where I mentioned. Note that (assuming cSUITE is installed) your specific version of f2803x device_support may be different:\controlSUITE\device_support\f2803x\v126\DSP2803x_common\cmd\I expect you won't have any issues programming your device, but I'd still recommend moving to the proper cmd when able. Out of curiosity were you able to program the first device (that now seems locked) once, or not at all?Thank you,Brett
Ok, I did find the F28034.cmd linker file and I did correct the workspace program to include the proper link file. I tried to load the test file we are using and it refused to load. The error I got is now different, I suspect that the file was too large for this part. I am investigating.
Problem has been resolved. Thank you for your help.