Dear Sirs, Mr. Coppi! ...I use the CAN-Module of a CA-step. Because everything was fine using the Board, I burned it without looking at the errata sheed...I was surprised at the result! Now I want to please You help me avoid another mistake. The behavior can be avoided if a message object is not updated by software when a transmission of the corresponding message object is pending (TXRQ element is set) and the CAN module is active (INIT = 0). Does that mean, if I would disable the CAN module each time I change something (data) in an object and enable it after that everything will be o.K.? The nodes in the CAN system ignore the remote frame with the identifier=0 and no data frame is triggered by this remote frame. Is this another or additional possibility? Is there a way to disable only the identifier '0'? I'm not so sure if I did understand the errata well, so please don't wonder about this questions. Do You know about a distributor who could have a flash device of the C164? (It's really expensive for me to burn them so often and this could prevent al least wrong startup configurations other mistakes which are not step-specific?!) Thanks a lot for helping me hannes P.S. why differs the behaviour using the RAM of the Board instead of OTP??
Thanks for reply! I will try to describe the behaviour completely... ..if I use RAM everything is fine, if I use flash (on board) or start from OTP, some Messages will be send for example like ID= 374 data length= 15 contents is 0xFF or 0xDF. Some are Remote transmission requests, some normal messages. The Message that should be send for testing if the CAN works, is never transmitted. I think You are right again, the configured startup configuration (e.g. clcfg=4(XTAL*5), clckout enabled) seems to be ignored, and the Port0 seems to be used for initialising. I saw, I had forgotten that the internal Rom was mapped to segment1- this version is burned now! The not mapped version (in flash) behaves like the OTP version too. I must admit, i don't know exactly what the mapping means- I think, Segment1 is normal OTP space, and the programm should work fine also in that area?! The external configuration is: EA =high, RD =high, ALE =0, the RESET will be high- delayed by a capacitor. I hope You are not shocked at me! ( ...I am sometimes because I seem to do wrong everything that is possible) Best regards hannes
Hello Hannes, if you chip works fine in debug (RAM) mode and not in OTP, it is unlikely you have problems due to what described into Errata Sheet. (My personal opinion...) Please describe what is happening on your system, maybe it is just a startup or mapping problem.
View all questions in Keil forum