📄 can_simulate.ini
字号:
/*-----------------------------------------------*/
/* CAN_loopback() simulates loopback connection */
/* between CAN1 and CAN2 ports of the ARM */
/*-----------------------------------------------*/
signal void CAN_loopback_2_to_1 (void) {
while (1) {
wwatch(CAN2OUT);
CAN1ID = CAN2ID;
CAN1B0 = CAN2B0;
CAN1B1 = CAN2B1;
CAN1B2 = CAN2B2;
CAN1B3 = CAN2B3;
CAN1B4 = CAN2B4;
CAN1B5 = CAN2B5;
CAN1B6 = CAN2B6;
CAN1B7 = CAN2B7;
CAN1L = CAN2L;
CAN1IN = CAN2OUT;
}
}
signal void CAN_loopback_1_to_2 (void) {
while (1) {
wwatch(CAN1OUT);
CAN2ID = CAN1ID;
CAN2B0 = CAN1B0;
CAN2B1 = CAN1B1;
CAN2B2 = CAN1B2;
CAN2B3 = CAN1B3;
CAN2B4 = CAN1B4;
CAN2B5 = CAN1B5;
CAN2B6 = CAN1B6;
CAN2B7 = CAN1B7;
CAN2L = CAN1L;
CAN2IN = CAN1OUT;
}
}
/*-----------------------------------------------*/
/* Analog0() simulates analog input values given */
/* to channel-0 (AIN0) of the ARM derivative */
/*-----------------------------------------------*/
Signal void analog0 (float limit) {
float volts;
/* printf ("Analog0 (%f) entered.\n", limit); */
while (1) { /* forever */
volts = 0;
while (volts <= limit) {
ain0 = volts; /* analog input-0 */
twatch (100000); /* 100000 Cycles Time-Break */
volts += 0.01; /* increase voltage */
}
volts = limit;
while (volts >= 0.0) {
ain0 = volts;
twatch (100000); /* 100000 Cycles Time-Break */
volts -= 0.01; /* decrease voltage */
}
}
}
kill button *
define button "Analog sweep 0 .. 3.3V", "analog0 (3.3)"
define button "Analog sweep STOP", "signal kill analog0"
define button "CAN loopback 1 to 2 ON", "CAN_loopback_1_to_2 ()"
define button "CAN loopback 2 to 1 ON", "CAN_loopback_2_to_1 ()"
define button "CAN loopback 1 to 2 OFF", "signal kill CAN_loopback_1_to_2"
define button "CAN loopback 2 to 1 OFF", "signal kill CAN_loopback_2_to_1"
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -