Hallo liebe Profis und Experten. Ich habe mir heute die Version Keil Uvision 5 heruntergeladen und alles installiert. Auch meinen ST-Linker richtig installiert etc. Jedoch funktioniert irgendwie mein ARMBootload nicht. das 2. Problem ist, das geschriebene Programm stimmt, ich kann es herunterladen, jedoch zeigt es nicht auf meinem Bildschirm an, weiss nicht was das Problem ist. Wäre euch sehr dnakbar, da ich am DIenstag eine Prüfung habe und lernen will. MFG :-)
Nihat schrieb: > Wäre euch sehr dnakbar, da ich am DIenstag eine Prüfung habe und lernen > will. und dann hast Du bis jetzt noch nichtmal die Grundlagen der Fehlersuche gelernt? 'irgendwie funktioniert nicht' oder 'weiss nicht was das Problem ist' sind keine Fehlermeldungen bei denen man Dir helfen kann. und 'das geschriebene Programm stimmt,' ist eine interessante Aussagen wenn es doch nicht funktioniert.
Wir hatten in der Schule nie den Aufbau des Keil Uvisions. Habe es Zuhause mal von 0 heruntergeladen und weiss jetzt nicht ganz genau, was mein Fehler ist. Das Programm muss stimmen, da ich nur ganz einfach ein Skript geschrieben habe, welches sozusagen die Schalter mit den LEDs verbindet. Ich habe einen ARM STM32F107VC. Das Problem ist nur, dass es keine Ausgabe auf den Bildschirm macht und ich weiss nicht, wie ich das beheben soll. Ich habe die HEX-File Einstellung angekreuzt, den Debugger auf ST-Link eingestellt, dann beim Flash Debugger auch ST-Linker eingestellt. Weiter komme ich nicht..
Ist wirklich erstaunlich was für einen Schwachsinn man so von manchen TO hier serviert bekommt. Hard-und Software müssen aussagekräftig dokumentiert werden, sonst braucht man daran keinen Gedanken verschwenden.
Hikol schrieb: > Weiter komme ich nicht.. Da du hier offensichtlich mit mehreren Nicknamen postest, was ausdrücklich gegen die Nutzungsbedingungen des Forums verstößt bist du hier fehl am Platze. Such dir ein anderes Forum. ;-(
Hikol schrieb: > Ich habe einen ARM STM32F107VC. Das Problem ist nur, dass es keine > Ausgabe auf den Bildschirm macht und ich weiss nicht, wie ich das > beheben soll. Hast Du denn eine Ausgabe auf einem Bildschirm programmiert? Wie soll das gehen, ist doch kein Arduino, der über den seriellen Monitor etwas auf dem Bildschirm ausgeben kann? Wenn Du ein Programm (kein Skript) geschrieben hast, was Taster und LED bedient, dann müssen diese funktionieren. Hast Du den Hardwareaufbau richtig vollzogen? Nihat schrieb: > Jedoch funktioniert irgendwie mein ARMBootload nicht. Was ist ein ARMbootload? Du programmierst doch mit dem ST-Link, nicht über einen bootloader?
Mit dieser Problembeschreibung kann ich absolut nichts anfangen. Denke mal über folgende Fragen nach und beantworte sie (ohne schon wieder deinen Namen zu wechseln!): 1) Was möchte ich erreichen? 2) Wie möchte ich das erreichen? (Das sind absichtlich zwei separate Fragen). 3) Was habe ich gemacht? 4) Welches Ergebnis habe ich erwartet? 5) Welches Ergebnis habe ich stattdessen erhalten? 6) Wie ist kein Know-How für andere einzuschätzen, damit sie für mich verständlich und angemessen antworten (ohne mich wie einen Dummkopf zu behandeln oder mich mich zu viel Fach-chinesisch zu überfordern). Formulierungen, wie "Jedoch funktioniert irgendwie mein ARMBootload nicht.", beantworten keine einzige dieser Fragen.
#include <stm32f10x.h> #include "TouchP0P1.h" int main(void) { InitTouchP0P1("1"); while(1) P1=P0; } Das wäre mein Programm. Es ist ein ganz einfaches Skript, jedoch wollte ich damit nur testen, ob meine Einstellungen gehen, aber irgendwie leuchten auf meinem Board nur die LEDs und mein Display auf dem Board ist schwarz. Ja, in der Schule haben die uns gesagt, wir müssen auch den ARMBootload installieren, aber jetzt habe ich gemerkt, dass es wirklich keinen Sinn macht. Notiz: Ich bin noch ganz am Anfang des Programmierens, ich werde langsam,langsam bessere Einträge machen. Es tut mir leid, wenn die so ungenau sind.
Hikol schrieb: > InitTouchP0P1("1"); Ich kenne weder die Bibliothek noch Dein Board, (wie heißen die?) aber diese Programmzeile initialisiert nur den Touchscreen und zeigt nichts auf dem Display an oder täusche ich mich? Was soll denn auf dem Bildschirm zu sehen sein, wenn Du nichts dort hin schreibst?
Ich habe einen STM32F107VC ARM Cortex-M3 Also auf unserem Display sehen wir ganz einfach die Schalter von 0-7 eines Bytes und die Ausgänge (LEDs), die ich jetzt gerade verbunden habe.. Im Betrieb oder in der Schule kann ich ganz gut damit arbeiten, aber hier habe ich eventuell etwas verfehlt. Habe alle Arten versucht. Zuerst konnte man das Gerät nicht erkennen, habe ich behoben, dann ging die Ausgabe nicht, habe ich behoben und jetzt geht alles ausser das.
Hikol schrieb: > STM32F107VC ARM Cortex-M3 Das ist nur eine Prozessorbezeichnung, kein Board. Wie heißt das Board? Wenn Du es nicht weißt, mach ein gut belichtetes, scharfes Foto davon. Hikol schrieb: > Also auf unserem Display sehen wir ganz einfach die Schalter von 0-7 > eines Bytes und die Ausgänge (LEDs), die ich jetzt gerade verbunden > habe.. Das würde bedeuten, dass auf dem Board bereits eine Software läuft.(Betriebssystem) Das klingt alles recht unglaubwürdig.
OK, also das hier: http://www.micro4you.com/files/STM32/ARM%20STM32F107%20Development%20Board%20Manual.pdf
Genau. Das werde ich mir mal anschauen!! Vielen Dank!!
Lass mich raten, in der Schule nehmt Ihr nicht die Keil-Umgebung oder Ihr benutzt eine serielle Schnittstelle zum Überspielen des Programmes ... (und auf dem Board läuft ein Simulator o. ä.) Über die Richtigkeit und Sinnhaftigkeit des Programmes (P1=P0) braucht man nicht reden. Das kannst Du vergessen, dass Du bis Dienstag die nötigen Kenntnisse drauf hast. Du hättest wohl etwas früher anfangen sollen, im Unterricht aufzupassen.
Was gebt ihr euch eigentlich mit einem Schüler ab? Der soll seinen Lehrer fragen, denn dafür ist der ja da. Und wenn er Prüfung hat, soll er mal Prioritäten setzen was wichtiger ist. Lernen oder Spielen? Hikol schrieb: > Display auf dem Board > ist schwarz. Da erzählt der Bengel da erst, dass ein Bildschirm auf dem Board ist. Man fasst es nicht. Bald ist das kein Kindergarten mehr, sondern eine µC-Kita, oder noch schlimmer eine µC-Krippe. Dann müssen wir hier wohl Windeln wechseln? Hat denn das Display überhaupt schon mal was angezeigt, so wie in der Doku von ETT? Vermutlich hat der Dussel die Module nicht richtig zusammen gesteckt oder Kontakte verbogen. Das hatten wir hier vor ein paar Wochen schon mal.
Dir scheint nicht klar zu sein, wie du das Programm auf den Mikrocontroller übertragen sollst. Schreibe erstmal ohne diese Touch Library ein Programm, dass eine LED blinken lässt. Damit kannst du den Umgang mit der Programmierumgebung üben. Erst wenn die LED erfolgreich blinkt, solltest du dich mit der Touch Library beschäftigen. Mit Goolge finde ich dazu absolut gar nichts gefunden. Das sagt mir, dass wahrscheinlich dein Lehrer diese Library bereitgestellt hat und nun möchte, dass du sie zu benutzen lernst. Sicher hat er dies im Unterricht erklärt oder Dir Lesestoff dazu mit nach Hause gegeben. Lass erst einmal eine LED blinken. Danach besorge die Dokumentation dieser TouchP0P1 Library. Lies sie. Wenn du Fragen dazu hast, bitte um Erlaubnis, wenigstens die Dokumentation (besser auch die Library) zu veröffentlichen. Mach das dann und stelle danach hier deine Fragen. Außerdem solltest du meine Fragen 1, 2, 3, 4, 5 und 6 beantworten (siehe oben). Am zweiten Foto ist mir aufgefallen, dass die gelbe LED an der Ethernet Buchse leuchtet. Das ist äußerst seltsam. Normalerweise leuchten oder blinken die LED's an diesen Anschlüssen nur, wenn da auch ein Kabel eingesteckt ist. Ich fürchte, dass auf den Mikrocontroller ein völlig falsches Programm läuft.
@stefanus Vielleicht hat er doch recht mit dem script, auf dem Board läuft scheinbar ein RTOS, wenn die Ausgänge und Eingänge auf_ dem _Display des Boardes angezeigt werden.
RTOS könnte sein, aber: > Das Programm muss stimmen, da ich nur ganz einfach ein > Skript geschrieben habe, welches sozusagen die Schalter mit den > LEDs verbindet.
1 | #include <stm32f10x.h> |
2 | #include "TouchP0P1.h" |
3 | |
4 | int main(void) |
5 | {
|
6 | |
7 | InitTouchP0P1("1"); |
8 | while(1) |
9 | P1=P0; |
10 | |
11 | }
|
Dieses Programm verbindet mit Sicherheit nichts miteinander.
Stefan U. schrieb: > Dieses Programm verbindet mit Sicherheit nichts miteinander. Wann kommst du eigentlich mal an den Punkt an zu begreifen, dass Antworten bei dem TO nichts bringen?
Es funktioniert jetzt. Und P1=P0 ist die Portdurchschaltung,welche P0 mit den LEDs verbindet und InitTouchP0P1 schaltet sozusagen denn Touchpad ein und dadurch kann ich die Portdurchschaltung bedienen.
Das verstehe ich überhaupt nicht.
1 | P1=P0 |
Sieht nach einem Vergleich aus. Da wird verglichen, ob P1 den gleichen Wert wie P0 hat. Das Ergebnis wird allerdings verworfen. Kann es sein, dass hier ganz hässliche Magie mit Makros, globalen Variablen und/oder C++ angewendet wurde? In welcher Schule wird so etwas gelehrt?
Stefan U. schrieb: > Sieht nach einem Vergleich aus. Sieht eher nach einer Zuweisung aus. Die restliche Syntax läßt auf c schließen. Von daher wäre "==" ein Vergleich.
Ach ich doofkopp. Bin heute wohl völlig neben der Spur. Ich habe gestern den ganzen Tag mit meinem Sohn erste Programmierübungen gemacht. Bei der dort verwendeten Scriptsprache ist "=" ein Vergleich.
Ich wurde noch nie in einem Forum so krass beleidigt. Denn anderen dank ich jedoch vielmals...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.