Standardmäßig ist in allen unseren Projekten der RealView Compiler als Compiler gesetzt. Wenn Sie jetzt den gcc verwenden wollen müssen Sie diesen Installieren, und im Projekt folgendes einstellen:
Verwendung der Peripherie
Bitte beachten Sie, dass sie jede Peripherie nur 1x verwenden können.
Wollen Sie z.B. eigene CAN-Routinen starten über die can.c. Beachten Sie bitte, dass sowohl die FMS-Routinen als auch die OBD2-Routinen schon die CAN-Busse belegen. Wenn Sie diese nicht benötigen müssen Sie diese an insgesamt 3 Stellen auskommentieren:
1. Main polling
Code: Select all
void main_polling(void)
{
...
if(bgtStartFlag != 0){
led_task();
gps_Task(&pi);
//fms_Task(&pi); // Don't use FMS
debug_task(&pi);
serverComm_Task();
rtc_Task(&pi);
OBDIIServer();
can_GetMsg(); //Use own CAN function
//reset the timer flag
bgtStartFlag = 0;
}
}//MAINPOLLINNG
Code: Select all
//
// Peripheral initialization
//
case INIT_HW:
powerOffTime = 10000;
//hardware_WatchdogInit(1000); //Set Watchdog timeout to 1 sec.
gps_Init (0,1); //GPS initialization
//fms_Init(CanIf1); //FMS initialization - commented out -
rtc_Init (); //RTC initialization
CAN_Startup(CAN_BAUD_500K_18M); //Using own CAN-code using CAN1
debug_Init (); //Debug interface initialization
debug_task(&pi);
UART_write("Firmware version 1.6.0\r\n",sizeof("Firmware version 1.6.0\r\n")-1,UART3);
config_Init(); //EEPROM initialization
config_Read(); //Read configuration
initState = INIT_WAIT_FOR_CONFIG;//Set next initialization state
break;
Code: Select all
//------------------------------------------------------------------------
// update every ms
//------------------------------------------------------------------------
if(bgtStartFlag != 0){
if(powerOffTime != 0){
powerOffTime--;
}
led_task();
gps_Task(&pi);
//fms_Task(&pi); //Don't use fms
debug_task(&pi);
serverComm_Task();
rtc_Task(&pi);
log_Task(&pi);
OBDIIServer();
can_GetMsg(); //use own CAN function