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

RTX51 CAN Example Program for the Infineon C515C: Problems

Hi, I'm attempting to compile the RTX51 CAN Example Program for the Infineon C515C example from the keil website without much success. I'm using the PK51 with full RTOS.

I import the uVision version 1 project following the instructions on importing files from uVision version1. I changed the TARGET_PROC to 515, as this is the chip I hope to use. I've checked the environment, changing the frequency to 16Mhz for the CAN timing calculations.

The project compiles without error, but unfortunately produces linker errors.

UNRESOLVED EXTERNALS:

***WARNING L1: UNRESOLVED EXTERNAL SYMBOL
	  SYMBOL: ?RTX_PAGE_OUT_REG
              MODULE: C:\KEIL\C51\LIB\RTX51.LIB (RTXINT)
However the RTX51.LIB is not included in the project files, and when I add it to the target files it produces the same error.

I noticed that in PROJECT – OPTIONS FOR TARGET that the code banking check box has been configured checked, with a value of 32 banks. However in the project files the L51_BANK.A51 is not included, it is my understanding that L51_BANK.A51 has to be included and configured correctly when using Code Banking. When I include this file and configure it for use with the RTOS and make it compatible with target device. I get the following errors:
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS
	 SYMBOL: ?B_CURRENTBANK
MODULE: L51_BANK.obj (?BANK?SWITCHING)
***ERROR L102: EXTERNAL ATTRIBUTE MISMATCH
	SYMBOL: ?B_CURRENTBANK
	MODULE: C:\…\RTX51.LIB (RTXCREA)
So I searched for ?B_CURRENTBANK and found it to be defined in RTXCONF.A51 and L51_BANK.A51. In RTXCONF.A51 it was defined as:
EXTRN DATA     (?B_CURRENTBANK)
What am I doing wrong? And why is there not a uVision 2 example from Keil?

Parents
  • Hi

    I've been playing around with the RTX51 CAN Example Program for the Infineon C515C. I've hit a problem though, my send module increments the LEDs of the Phytec Development board, with the transmit pin flashing on and off. However as soon as I turn my receive module on, my transmit module stops transmitting. If I reset the two boards the transmit board still refuses to transmit.

    In the code I have set

     SENDER to 1 
    for the transmit module, and
     SENDER to 0 
    for the receive module. Both CANTIMING values are set the same. It seems almost as though the receive module is sending out an error message stopping the transmit module from transmitting.

    Thanx

    Carol-Anne

Reply
  • Hi

    I've been playing around with the RTX51 CAN Example Program for the Infineon C515C. I've hit a problem though, my send module increments the LEDs of the Phytec Development board, with the transmit pin flashing on and off. However as soon as I turn my receive module on, my transmit module stops transmitting. If I reset the two boards the transmit board still refuses to transmit.

    In the code I have set

     SENDER to 1 
    for the transmit module, and
     SENDER to 0 
    for the receive module. Both CANTIMING values are set the same. It seems almost as though the receive module is sending out an error message stopping the transmit module from transmitting.

    Thanx

    Carol-Anne

Children