📄 debugger.ini
字号:
/* ========================DEBUGGER.INI=================================
* Contains debug functions for a sample CAN project (see AppNote: 167)
*
* - CANMessage prints message information of send messages
* - SendInfo sends 8Byte messages on a arbitrary ID
*======================================================================*/
/*
* Print the last message sent by the controller
*/
FUNC void CANmessage (int direct) {
if (direct = 1) { //Send
switch (CANAOUT) {
case 1: printf("\nSend Message (11-bit ID=%04X)", CANAID); break;
case 2: printf("\nSend Message (29-bit ID=%08X)", CANAID); break;
case 3: printf("\nRequest Message (11-bit ID=%04X)", CANAID); return;
case 4: printf("\nRequest Message (29-bit ID=%08X)", CANAID); return;
}
}
if (direct = 2) { //Receive
switch (CANAIN) {
case 1: printf("\nReceived Message (11-bit ID=%04X)", CANAID); return;
case 2: printf("\nReceived Message (29-bit ID=%08X)", CANAID); return;
}
}
printf("\nMessage Length %d, Data: ", CANAL);
printf("%02X %02X %02X %02X ", CANAB0, CANAB1, CANAB2, CANAB3);
printf("%02X %02X %02X %02X\n", CANAB4, CANAB5, CANAB6, CANAB7);
}
/*
* Set Breakpoint on CAN Output VTREG
*/
BS WRITE CANAOUT, 1, "CANmessage(1)"
BS WRITE CANAIN , 1, "CANmessage(2)"
/*
* Send Information on any ID
*/
FUNC void SendInfo (unsigned long id, // message ID
unsigned char len, // message length
unsigned char val) {
CANAID = id; // Set VTREG that keeps next ID
CANAL = len; // Set VTREG with message length
CANAB0 = val; // Set the data registers
CANAIN = 2; // Send message to simulated controller
}
/*
* Simulate Target B
*/
SIGNAL void StartTarget() {
unsigned char pattern;
while(1) {
if(pattern){
pattern = pattern << 1;
} else {
pattern = 0x01;
}
sendinfo(0x100, 1, pattern);
swatch(0.16);
}
}
/*
* Define Buttons for the toolbox for easy access SendInfo
*/
kill button *;
define button "Start Target B", "StartTarget()"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -