This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Problems with CAN using C164_CI

Please help me solving my problem with the CAN-interface of the C164_CI!
Using the Simulator it seems to work well!
But using the Monitorprogramm following will happen:
-writing to register C1IR (the IPC-bit-field)won't have any effect,allthough the CCE is set!?So CAN will not be onnected to the respective Pins.
-writing the CAN-ID of object 15,10,...,1 will work,but the others will cut the connection to the board...
-the baudrate will be different using the simulator or the monitor??
-when I use the 'GO'_button in the monitor the connection will be lost too when I stop it...

I tried using the Flash memory of the board but it won't work too!
Asking the technical support didn't help!

I really would be Pleased if somebody would help me!!!!!!!

P.S. A project configured by DAVE shows the same behaviour !

Thanks a lot hannes

Parents Reply Children
  • Yes, BC is the step of your chip, it's a long time I am using the 164 (time ago I even designed an Eva Board for it, http://www.tecnologix.it).
    About the rest, take a look at the CAN routines published on the Infineon site, (look on the 166 family page and into every CAN derivative page), we are using them and they work well.
    Please note how CAN controller interrupts should be handled, there is a specific appnote covering this argument.

  • Hello again!
    I will try this,first I have to buy another younger one.
    I'm glad you answered me (I tried solving this 'problem' for three days now!!).Do you know a link or datasheet or something like this where I could get informations like yours? I think I had to give up the next days because I don't know so much about this Controllers and would never find it on my own!
    Thanks again!

  • C164 Reference Manuals for BC step (and for all steps < CA) are version 1.0, 11.1997 and 1.1 08.1998.
    I see the first one is included into 11.2001 Keil CD-ROM; if you need it I can e-mail it (3.5MB) and its corresponding datasheet (500KB) to you.
    I don't know any Internet source from which you can have a direct C164 step 'history', but you can reconstruct the whole story from the documents published onto the Infineon C164 page: two manual version are available, version 2.0, 09.1999 for Cx steps and version 3.1, 02.2002 for Dx steps, separate Datasheets are available for Cx and Dx steps; moreover, at the end of each step's Errata Sheet there is a Documentation Update, which documents new features not yet present into the Manual.
    I suggest you to use Datasheet + Errata Sheet as ultimate reference for the features implemented into a particular step: normally they say the real truth about the chip.

    http://www.infineon.com/cgi/ecrm.dll/ecrm/scripts/prod_ov.jsp?oid=13744&cat_oid=-8137

    C164 is one of the most "evolving" chips Infineon ever produced, nevertheless it is one we really love to use; we know all its history just because we use it since its AA step...

  • Check your mailbox for the PDF documents.
    In my experience, there is no difference between Keil simulator and Monitor, provided that the hardware environment is correctly set.
    I mean: if a program works in simulation, it might be correct from a "formal" point of view, but the simulated environment differs from real hardware.
    Simulated hardware always works fine, but in real hardware you will go in troubles if, for instance, you specify a 0 wait state access on a slow memory!
    Carefully check the Linker M66 file to be sure that you have no memory segment mapped outside real memory and check the startup file for proper chip select setup (address windows, number of wait states, etc.).
    Again, check your startup configuration on port P0, PLL multiplication factor, address lines, number of CS signal and so on.
    Remember to reserve space for Mon166 interrupt vectors and memory, monitor writes its own NMI and Serial interrupt vectors, maybe your program uses that memory for data or code and gets corrupted by monitor.
    Compiler behaves the same with old and new steps, there is absolutely no difference, just check the REG164.H file, maybe some register don't exist in BC step.
    Remember 2K XRAM IS NOT IMPLEMENTED in the BC step!

  • Hello again!
    It would be nice, if you send me this datasheet!
    My e-mail address follows:
    jkj-mahler@gmx.de
    Do you know something about differences between the KEIL Simulator and -Monitor?
    I ask because my project does really work well in Simulator ,but not in monitor-so could it be that the new version of Compiler doesn't work well with an old device ('BC')??
    I'm thankfull ,you are using your time for helping me!
    hannes