Hallo ich bin neu im uC und wollte fragen wie bei einem uC ran gehen muss. Mir ist klar das Ports konfigurieren muss bevor ich mit diesen arbeite. Leider komme ich gar nicht zurecht wie ich das mit diesen Manuals machen muss. Ich arbeite in der C Umgebung also kein Assembler und besitze das board SM3210e-Eval board mit einem STM32F103Z Prozessor von ARM Wie finde ich z.B das ich die Analoge Eingänge auf meinem Board als input konfigurieren muss bzw. welche Ports und Pins ich ansprechen muss. Kann mir jemand Anhand eines Beispiels sagen wie ich ein Analog Eingang ADC123_13 als input setze ? Welche Dokumente sind dafür wichtig und auf welcher Seite sehe ich das ?
Das steht alles detailliert im Reference Manual deines Mikrocontrollers und in der Dokumentation zur ST StdPeripheral Library, falls du diese verwenden willst.
Hier ist der Link und in keiner dieser Dokumente konnte ich fündig werden. Vielleicht bin ich blind und habe etwas 5 mal übersehen. Wäre echt dankbar wenn mir jemand da das sagen könnte an welchen Port das anhängt und wie ich das dann im Code angeben muss. http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/PF204176
Auf diese Seite steht dass der Mikrocontroller STM32F103ZE heißt. Eine Suche nach dieser Teilenummer ergibt dessen Beschreibung: http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1031/LN1565/PF164495 Unter Design Resources findet sich das Reference Manual: http://www.st.com/st-web-ui/static/active/en/resource/technical/document/reference_manual/CD00171190.pdf Beschreibung der I/O-Pins (GPIO) geht ab Seite 154 los. Die ADC's ("Analog-Eingänge") ab Seite 206.
Ja, aller Anfang ist schwer. Deine Toolchain funktioniert? Ein paar gute Infos findet man über google. Ich kann das hier empfehlen: http://diller-technologies.de/stm32.html
Dr. Sommer schrieb: > Auf diese Seite steht dass der Mikrocontroller STM32F103ZE heißt. Eine > Suche nach dieser Teilenummer ergibt dessen Beschreibung: > http://www.st.com/web/catalog/mmc/FM141/SC1169/SS1031/LN1565/PF164495 > > Unter Design Resources findet sich das Reference Manual: > http://www.st.com/st-web-ui/static/active/en/resource/technical/document/reference_manual/CD00171190.pdf > Beschreibung der I/O-Pins (GPIO) geht ab Seite 154 los. Die ADC's > ("Analog-Eingänge") ab Seite 206. Komisch bei meinem Board steht auf dem Chip STM32F103ZG... Gut in dieser Doku steht jetzt zwar jetzt das die Analogeingänge ADC mit PC1,PC2 und PC3 bezeichnet werden und wie komme ich jetzt damit weiter ?
Pete K. schrieb: > Ja, aller Anfang ist schwer. Deine Toolchain funktioniert? > > Ein paar gute Infos findet man über google. Ich kann das hier empfehlen: > http://diller-technologies.de/stm32.html Ich arbeite mit Keil , ja die Seite ist gut aber ist nicht so das was ich suche. Mir gehts darum wie ich Dokumente mit meinem Code verbinden kann.
Tomi schrieb: > Komisch bei meinem Board steht auf dem Chip STM32F103ZG... Ah, gibts verschiedene Boards von. Egal, die haben das selbe Reference manual. > Gut in dieser Doku steht jetzt zwar jetzt das die Analogeingänge ADC mit > PC1,PC2 und PC3 bezeichnet werden und wie komme ich jetzt damit weiter ? Lies Seiten 206-244 im Reference Manual. Da steht wie der ADC funktioniert, wie die Register heißen und wie sie programmiert werden. Lesen, verstehen, umsetzen.
Hi, wenn du mit den ST Libraries programmierst, kannst du dir auch mal die Beispiele aus den Libraries hier ansehen: http://mikrocontroller.bplaced.net/wordpress/?page_id=744 Ansonsten schau in eben diesen Libraries wie die Dinge gemacht werden. Liebe Grüße, Jan
Tomi schrieb: > Mir ist klar das Ports konfigurieren muss bevor ich mit diesen arbeite. > > Leider komme ich gar nicht zurecht wie ich das mit diesen Manuals machen > muss. Hallo Tomi, du mußt natürlich zu allererst die grndlegenden Dinge einrichten, als da wäre die Taktversorgung, Flash usw. Dann kommt die Festlegung der Pinverwendung und dann kommt die Festlegung der Datenrichtungen für alle GPIO's, dann das Aufsetzen der diversen Peripherie. Ich geb dir mal ein Beispiel von nem STM32F103ZET6 im Anhang. W.S.
W.S. schrieb: > Ich geb dir mal ein Beispiel von nem STM32F103ZET6 im Anhang. Warum, W.S., warum...
1 | #define integer short int // d.h. "integer" ist 16bit und "int" 32bit? Aha, intuitiv
|
2 | #define word unsigned short int // Auf ARM ist ein word 32bit.
|
3 | #define byte unsigned char
|
4 | #define dword unsigned long
|
5 | #define qword unsigned long long
|
6 | #define int64 long long // aha int64 ist die signed variante von qword - macht natürlich sinn - warum jetzt aber kein int32, int16...?
|
7 | #define cardinal unsigned long //wollten wir den nicht dword nennen?
|
8 | |
9 | // Wieso nicht einfach #include <stdbool.h>?
|
10 | #define bool unsigned char
|
11 | |
12 | #define TRUE 1
|
13 | #define FALSE 0
|
14 | #define true 1
|
15 | #define false 0
|
16 | |
17 | |
18 | // warum nicht einfach das vordefinierte "and", "or", "xor" nehmen?
|
19 | #define MOD %
|
20 | #define XOR ^
|
21 | #define NOT ~
|
22 | #define AND &
|
23 | #define OR |
|
24 | |
25 | #define POINT struct TPoint
|
26 | #define RECT struct TRect
|
Warum um alles in der Welt überall #define? Bist du noch in der Macroassembler Zeit verhaftet? Warum nicht "typedef", was einen richtigen, gescopten C-Bezeichner erzeugt und keine ulkigen Syntaxerror produziert? Warum nicht die vordefinierten typen (u)int8_t, (u)int16_t, ..., (u)int64_t aus der <stdint.h> verwenden und sich selber einen Haufen inkonsistenter Typen definieren? Es ist ja verständlich, die Beispiele und Libraries von ST nicht zu verwenden. Aber dann stattdessen so etwas zu produzieren? Da doch lieber die "etablierte" StdPeripheral Libary, ST Clock Setups etc. verwenden.
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.