Hallo,
ich versuche mich gerade an dem ch32v003 Prozessor.
Der läuft intern mit 8Mhz und die eigentliche Anwendung kommt aus einem
AVR Projekt was hier aber noch nicht arbeitet. Da wird ein Sinus per PWM
und Timer generiert.
Vielleicht kennt sich jemand damit aus und hat mal Zeit sich das
anzusehen.
Dabei habe ich 2 Probleme.
- (timer 1) PWM auf Port D3 kommt nicht raus
Irgentwas ist da falsch oder ich sehe es nur nicht.
Habe mir nur das TIM1-Beispiel angesehen und es sieht so aus, dass die
AFIO-Konfiguration fehlt:
Im Register AFIO_PCFR1 müssen die Bits 7:6 auf 01 gesetzt werden, siehe
CH32V003 Reference Manual V1.4 auf Seite 60.
So jetzt bleibt nur noch das mit dem Timer 2 und hier kome ich einfach
nicht weiter. Der Timer macht einfach kein Reload wenn der oben ankommt.
Der Interrup kommt aber und das allerdings dann auch nicht mit der
Geschwindigkeit wie ich erwarten würde.
Im Debugger sehe ich im Counter Register Werte die nicht vorkommen
sollten, weil sie unterhalb des Reload wertes liegen.
Vielleicht sieht ja jemand wo der Fehler ist.
Ja der Code sieht nach der SPL von ST aus.
Finde ich persönlich nicht mal schlecht.
Ich bin auf den Reload reingefallen.
Mal heist es .TIM_Period und dann TIM_SetAutoreload(...), landet aber im
selben register.
Der Timer startet immer nach erreichen dieses Wertes von Null.
Und startet nicht bei diesem Wert immer wieder neu, was ich bei
Autoreload erwarten würde.
Wert invers einsetzten (0xFFFF- Wert) und die Sache läuft.
Da wird es sicherlich noch andere Methoden geben, aber jetzt geht es
erstmal.
Tja, neuer Prozessor neue Fehler / Probleme!
Dirk E. schrieb:> Ja der Code sieht nach der SPL von ST aus.> Finde ich persönlich nicht mal schlecht.
Der Code von ST darf nur auf Mikrocontrollern von ST verwendet werden.
"4. This software package or any part thereof, including modifications
and/or derivative works of this software package, must be used and
execute solely and exclusively on or in combination with a
microcontroller or a microprocessor devices manufactured by or for
STMicroelectronics."
https://www.st.com/resource/en/license/SLA0048_STM32CubeF1.pdf.
Ich glaube wer einen ST Code auf einem WCH 1:1 kopiert und erwartet das
der läuft, hat noch viel zu lernen.
Ihr schweift allerdings ab, wie kann man das hier schliesen?
Ich habe diesen Thread ein oder zwei Stunden vor dem Posten gefunden. Da
meine Muttersprache Englisch ist, halte ich eine Latenzzeit von zwei
Monaten für angemessen. Nur weil ich zu spät poste, heißt das nicht,
dass meine Argumentation irgendwie falsch ist.
Es ist weltweit üblich, den vollständigen Quellcode zu veröffentlichen,
wenn Sie dabei Hilfe benötigen.
Möglicherweise sehe ich Fehler im veröffentlichten Quellcode, aber woher
soll ich das wissen, wenn ich nicht den gesamten Code habe? Fehlende
Teile könnten durchaus alles verändern.
Do not use the formal "Sie" to address others when posting on
german-language internet forums.
This is, though formally correct, in most cases considered rather rude
and distanced.
Did you contribute anything useful? The thread's creator posted some
excerpts of his source code, and had it not been sufficient for those
who already answered, they would already have requested the full source
code. They could discuss the subject at hand, apparently sufficient
enough for the thread's creator not to ask further questions.
Had you contributed something to this thread, your "latency" would have
been acceptable. But you didn't, and so it isn't.
You could have requested the full source code in a friendly manner, but
no, you acted rather supercilious.
And for that you created a new user account?