Gast
#4596702
Hallo Zusammen,
ich arbeite mit Atmel Studio 7.0.790 und dem ATSAM4E8C. Ich habe das
Problem, dass sich der Controller nach ca. 18s automatisch resetet.
Läuft das Programm im Debugger tritt der Fehler nicht auf. Es ist egal
ob der Debugger (ATMEL ICE) physisch angschlossen ist oder nicht. Sobald
das Progamm nicht im Debugmodus ausgeführt wird, resetet sich der
Controller. Woran kann das liegen? Wo liegt der Unterschied in der
Ausführung des Codes im "Debugmodus" und im "Free Running"?
Codeausschnitt:
int main (void)
{
while (1)
{
SYS_Init();
while(1);
};
}
void SYS_Init(void)
{
uint32_t IO_Config = 0;
uint32_t xReturned;
irq_initialize_vectors();
cpu_irq_disable();
sysclk_init();
board_init();
while(1 != osc_is_ready(OSC_MAINCK_XTAL));
//sd_mmc_init();
//TIMER_Init();
//MOTION_init(&INTERFACE_Handler);
//BUTTON_init();
//IO_init();
//AKKU_init();
//CAN_init();
//FEUCHTE_init();
//POWERMESS_Init();
//RTC_init();
//if(0 != SD_Init())
//{
// while(1);
//}
//udc_start();
// Testcode -------
while(1)
{
delay_ms(100);
CAN_TOGGLE; // Belieiger Pin wird getoggelt um zu prüfen on
Controller noch aktiv ist
CPU_VCC_EN; // Pin muss für Selbsthaltung der Controllerspannung
gesetzt werden
}
//----------------
TimeToken = xSemaphoreCreateMutex();
SD_Data_Queue_id = xQueueCreate(ANZ_SD_QUEUE_ELEMENTS,
sizeof(tMess_Data));
SD_COM_Queue_id = xQueueCreate(ANZ_SD_QUEUE_ELEMENTS,
sizeof(uint8_t));
xReturned = xTaskCreate(SYS_Main ,"SYS_main_Task",
configMINIMAL_STACK_SIZE+1000 ,NULL ,1 ,&SYS_main_Task_id);
xReturned = xTaskCreate(SD_write_Task ,"SD_write_Task",
configMINIMAL_STACK_SIZE+1000 ,NULL ,1 ,&SD_write_Task_id);
cpu_irq_enable();
vTaskStartScheduler();
}
Schaltplanausschnitt siehe Anhang
Danke für euere Hilfe

