I can't upload my software in bootstrap mode. It seems to be the Keil compiler doesn't recognise the controller. I think there's something wrong with the monitor...
Hi Robert, what target you are using ? XC167-Starterkit or own hardware ? Really using a monitor or OCDS-driver? Stefan
For gratuate I created my own hardware and using the monitor. We thought there was a problem with the databus, do you know what the function of P0 is by start-up ? I/O or databus ?
Hi Robert, yes - at the Reset the P0 is scanned an than decided, whether a normal startup is taken or enter into bootstrapmode. ( In this way it works like I/O ). For entering the standart bootstrap loader mode you should have at RESET the /RD=0 /WR=1 ALE=0 /EA=1 this will activate the build in bootstraploader e.g. for flashing the device. Be sure your chip selects an other signals are set to your needs. To start up normal set signals /RD=1 /WR=1 ALE=0 /EA=1 . (Assuming no external memory, you want to read from , because than ALE=1 /EA=0) If you want really configure youre device at startup time via P0 leave your e-mail address here I have good appnote about this. This is written for C166 family, but is the same way with the XC16x family . ( With XC167 you can configure the busmodes and other relevant settings from startup, so no need to use P0 ). Stefan
The user manual is not realy clear about the startup configuration. I understood that RSTCFG gets his data from P0. With SMOD it's possible to put him in bootstrap loader mode. My email address is robert.nugteren@chess.nl thnx
Hi Robert, this is sure a little bit confusing. If you use RSTCFG than the configuration is taken from port 0. You should pull down D4 (I mean P04L) for serial boot. There are some more start up options. I send you e-mail now !! Stefan
Hi Stefan, I think the startup configuration is not longer the problem. The controller seems to be in bootstrap-loader mode. The controller receives a zero and sends his identification bytes: It's 55h or AAh then the communication stops and Keil says "connection to target system lost". I think Keil doesn't recognises the XC167. Do you use the bootstrap loader ?
With Keil I mean uViscion 2
Hi Robert, what you mentioned here, seems the acknoledge byte for the host. The XC167 returns in BSL-sequence 5dh + ID Regs, where ID Regs are: 1820h IDMANUF adr.: F07Eh 20xxh IDCHIP adr.: F07Ch xx=LowByte Rev. 3020 IDMEM adr.: F07Ah MemSize s. UM ! 4040h IDPROG adr.: F078h MemType FLASH Regarding the monitor I should more about your layout. I would suggest you using the OCDS debugger this really works, I have tried out with hardware and you have same effect as with a monitor. Or you can try out minimon a tool you find at Infineon WEB site. Has some good features. Regarding OCDS I mail you a short dscription (DOC-file whith some screenshots) I wrote ! Since I had difficulties at startup, I think it can be helpfuul to avoid the same troublshooting. Relating to DIP-switch 106 RD;WR;ALE EA I mail a extra DOC (Only screenshot). Stefan - check your e-mail in few minutes.
Hi Robert, I checked again the µVision and the monitor there is provided is for the old C166 family, so it may be the XC166 family (specially the ID bytes are not recognized ) the 55h ID Byte is from th 80C166 based devices, the newer one uses A5h and all with ID register use D5h + ID Regs. So use Minimon or OCDS instead is highly recommended! Stefan
Hi Stefan, OCDS is not implemented on my PCB. The bootstrap loader is working !!! there was a problem with the max232. Right now he is uploading 2% before connection with target system is lossed.. I think the monitor isn't correct.
Which Monitorversion you have selected ? I will try out a test. Did you reserve monitor ressources under linker/locator - misc ? Stefan
Hi Stefan, I did some other work last days but today the board is working. In hardware there was one problem with the MAX232. Right now the board is working fine. Unfortunately debugging with Keil isn't possible. I use Minimon_XC16x (http://www.infineon.com) for downloading software into flash mem. Thnx for your help.. Greetz Robert
Hi Robert, was on vacation (so sorry for delay). Thanks for this feedback. But no reason to be worry about this. Minimon is the ultimate tool and is used from the Infineon people internal as the one and only. KEIL monitor I was not able to use with AA-steps (XC161 and XC164) there were a problem with build-in bootstraploader, which receives only 28 byte instead 32.But should be solved at later steps and with XC167. For programming without monitor you should use MEMTOOL3.2.6a or later. (You will find this at Infineon's WEB page under 16-bit micro --> appnotes. Stefan
Do you think it's possible to program flash mem in XC167 with Keil ? there are so many options and parameters to set..
Hi Robert, no, unfortunately this is not possible in your case, since the flash driver is based on the OCDS interface. ( You have mentioned your PCB does not support OCDS ). OCDS I have tested and it works for me since V4.27. In your case I would kindly ask you to use MEMTOOL,this works with all steps and all XC16x-types. ( Provides sectorbased erasing, flashing and verifying ) I send you a short description with screenshots to your e-mail account. It is to use. Stefan