Gast
#1498688
Hallo Leute, Ich habe seit gut 4 Wochen ein Projekt in der Schule laufen das sich um FreeRTOS dreht. Als Hardware hab ich eine LPC 1768 Stick mit einem Evalution Board 24COM-A3 zur Verfügung. Als Grundstein hab ich mir die Demo von FreeRTOS.org (GCCRedSuite Edition) geholt und hab sie nun einigermaßen im HiTop zum laufen gebracht. Warum ich HiTop verwenden? Ich muss. Ich würde gerne KEIL verwenden, darf das aber nicht. Und eigentlich bin ich ziemlich verärgert über die Software von HiTEX da sie nur Fehler bringt aber gut das ist jetzt ein anderes Thema. Nach unzähligen Fehler habe ich es nun endlich geschafft das System zum Compelieren und Laufen zubringen. Bisher habe ich nur die DemoTasks ausprobiert (LED Flashen, usw.) und diese funktionieren. So jetzt will ich aber den WebServer zum laufen bringen. Und hier tun sich einige Fehler auf. Die Funktion xTaskCreate(vuIPTask,...) wird aufgerufen und bewirkt praktisch nichts. Ich habe in den Config Files die IP Adresse konfiguriert und auch eine FixeAdresse eingestellt aber ich kann das Board nicht ansprechen und das Board selbst meldet sich auch nicht. (Muss ich das erst hinzuprogrammieren? Also das er z.B. auf einen Ping reagiert?) Überwachen tu ich die Leitung mit WireShark. So im Task erstellen geht er eigentlich alle Funktionen durch und geht auch z.B. in die Funktion hinein wo er den uIPTask als den jetzigen Task übernimmt aber es tut sich rein garnichts. Vorallem frage ich mich für was die Variablen pdFALSE und die Funktion traceTASK_CREATE( .. ) das sind. Da die Variabel nie einen Inhalt hat und auch irgendwie nirgends definiert wird und die Funktion zwar definiert ist aber nicht ausprogrammiert zu sein scheint. (??) Anfangs habe ich gedacht es liegt möglicherweise an der Priorität aber das tut es nicht. Der LED Task so kommt es mir vor wird munter weiter ausgeführt, der uIP Task jedoch nicht. Die Prioritäten habe ich deswegen auch schon geändert und den uIP Task bevorzugt aber es funktioniert nicht. Was mich noch nachdenklicher macht ist die Tatsache das wenn ich auf "run" im Debugger drücke und dannach gleich wieder auf "stop" das das Programm irgendwo steht. Entweder im TaskScheduler oder in der HardFaulException. Ich denke ich mache grundsätzlich etwas falsch und ich hoffe hier kann mir jemand helfen. Muss ich irgendetwas spezielles konfigurieren bevor ich den Ethernet Port starte oder muss ich andere Funktionen ausführen? Danke für die Hilfe! Hochi.