Currently, I am evaluating the Keil µVersion2 IDE this comes with the Infineon Starter Kit SK-167CR(Phytec KitCON-167). I have done a few basic things using the debugger for loading the programms into the board. This is working fine, since the debugger knows this SK. The next step was for me to bring such a small programm working in the flash-rom. I discovered very quickly this i had to generate a 'start167.a66' file. For this purpose i choosed Dave, builded a project and took the start.asm into (my)/a Keil project, and the Leds flashed like predicted on port 2 but the CAN-bus remains silent. If i am downloading the same programm with the debugger into the SK, the CAN-Bus is trying to send a message continuously too, since i have only conneted a scope on pin 2 and GND of the CAN Sub-D. So far(endless hours) i failed to find the reason why the CAN is not transmitting anything, if the programm starts from flash. I still belive it could may be an error in my start.asm file. So i am looking for a Reference "start.asm" file for my Starter Kit. (Jumper Settings are in the delivery mode) Where can I find such a file ? I am looking for any hints to solve this problem. Thomas
What for controller step is mounted on the kitCON ? The FA Step a further one the XPEN Register has to be set. For running the Code from Flash: Be sure that DAVE enable the buscon1 with the write settings for your kitCON. and be sure that DAVE set the XPEN to 1. Stefan
I meet the same question,but don't know how to solve it. If Some body had solved this problem,please email me ! email: shzhj@sohu.com thanks. shen
Hi there Thomas, Can I just confirm that with your CANbus problems, you have no second node connected to the system, but you have connected a scope to CANgnd and CAN-H (or CAN-L, I forget offhand which one pin 2 is). I didn't think that the CAN-H and CAN-L signals were actually referenced relative to the CANgnd line, more that the CANgnd line was used for shielding. As there is high switching frequency and plenty of capacitance, then you will get some signal, but you should perhaps link up to CAN-H and CAN-L with an isolated probe instead. Also, if you have no node to respond to the CAN with, then the CANbus may simply record three or four failed transmissions and go into BUS-OFF mode (see spec sheets for details of this, and if it exists with the chip you're using). What do you reckon? Have I correctly understood this part of your problem? Yours, Richard.
I am working on the KEIL evaluation bord "MCB167 NET" (with the SAB-C167CS-LM microcontroler), Dave2.0 . I write a simple program sending data by CAN1 interface.when i debug this program ,It works correctly. when i download it into flash by Flasht tools,it works incorrectly. I means the program run,but the operational result is error. I have a mcb167net evaluation board and CANdy( to receive data). The part program : main() { ubyte byte1; ubyte byte2[2]; while(1) { byte1++; byte2[0]++; byte2[1]++; CAN1_OBJ[0].Data[0]=byte1; //transmit byte correctly CAN1_OBJ[0].Data[1]=byte2[0]; //to transmit byte incorrectly. the error result is 0xff. CAN1_OBJ[0].Data[2]=byte2[1]; //to transmit byte incorrectly. the error result is 0xff. CAN1_vTransmit(1); Delay(); //Delay; } }
I am working on the KEIL evaluation bord "MCB167 NET" (with the SAB-C167CS-LM microcontroler), Dave2.0 . I write a simple program sending data by CAN1 interface.when i debug this program ,It works correctly. when i download it into flash by Flasht tools,it works incorrectly. I means the program run,but the operational result is error. I have two nodes: a mcb167net evaluation board and CANdy( to receive data). The part program : main() { ubyte byte1; ubyte byte2[2]; while(1) { byte1++; byte2[0]++; byte2[1]++; CAN1_OBJ[0].Data[0]=byte1; //transmit byte correctly CAN1_OBJ[0].Data[1]=byte2[0]; //to transmit byte incorrectly. the error result is 0xff. CAN1_OBJ[0].Data[2]=byte2[1]; //to transmit byte incorrectly. the error result is 0xff. CAN1_vTransmit(1); Delay(); //Delay; } }
I am working on the KEIL evaluation bord "MCB167 NET" (with the SAB-C167CS-LM microcontroler), Dave2.0 . I write a simple program sending data by CAN1 interface.when i debug this program ,It works correctly. when i download it into flash by Flasht tools,it works incorrectly. I means the program run,but the operational result is error. I have two nodes: a mcb167net evaluation board and CANdy( to receive data). The part program : main() { ubyte byte1; ubyte byte2[2]; while(1) { byte1++; byte2[0]++; byte2[1]++; CAN1_OBJ[0].Data[0]=byte1; //transmit byte correctly CAN1_OBJ[0].Data[1]=byte2[0]; //to transmit byte incorrectly. the error result is 0xff. CAN1_OBJ[0].Data[2]=byte2[1]; //to transmit byte incorrectly. the error result is 0xff. CAN1_vTransmit(1); Delay(); //Delay; } } thanks. shzhj