STM32-Programmierung-Tipps und Fragen

Konnte ich nicht finden, eine gute Dokument im internet über STM32-Programmierung. STM eigenen Dokumente nicht erklären nichts mehr, als register Funktionen. Ich werde sehr dankbar, wenn jemand erklären kann, meine folgenden Fragen?

  1. Bemerkte ich, dass alle Beispiel-Programme, STM bietet, lokale Variablen für main() immer definiert, außerhalb der main () - Funktion (mit gelegentlicher Verwendung von static-Schlüsselwort). Gibt es einen Grund dafür? Sollte ich eine ähnliche Praxis? Sollte ich vermeiden, verwenden Sie lokale Variablen innerhalb der main?
  2. Ich habe eine gloabal Variablen, die aktualisiert wird, in der clock-interrupt behandeln. Ich bin mit der gleichen variable, die innerhalb einer anderen Funktion als Schleifenbedingung. Kann ich nicht zugreifen zu können, müssen Sie diese variable mit irgendeiner form von atomarer read-operation? Wie kann ich wissen, dass einen Uhr-interrupt nicht ändern Sie dessen Wert in der Mitte der Ausführung der Funktion? Sollte ich absagen müssen clock-interrupt jedes mal wenn ich diese variable innerhalb einer Funktion? (Dies scheint jedoch äußerst ineffektiv, um mich, wie ich es als Schleifenbedingung. Ich glaube, es sollte bessere Möglichkeiten, es zu tun).
  3. Keil fügt automatisch ein Startcode, die ist geschrieben in der Montage (d.h. startup_stm32f4xx.s). Dieser startup-code die folgende import-Anweisungen:
    IMPORT SystemInit
    IMPORT __main
    .In "C", macht es Sinn. Aber in C++ werden beide Haupt-und system_init unterschiedliche Namen haben (z.B. _int_main__void). Wie können diese startup-code noch arbeiten können in C++ auch ohne Verwendung von "extern "C" " (ich habe versucht und es funktionierte). Wie kann der c++ - linker (armcc --cpp) aus und ordnen diese Aussagen mit den richtigen Funktionen?
Diese Fragen sind alle ziemlich unabhängig voneinander sind. Warum nicht brechen Sie in drei verschiedenen Fragen auf stackoverflow, so dass, wenn jemand weiß, die Antwort auf eine von Ihnen, aber nicht alle von Ihnen können Sie immer noch beraten?
Ich bin damit einverstanden. Als spät-coming-Leser, ich würde auch eher das Sie getrennt werden, so kann ich finden, was ich über Pflege effizienter zu gestalten.

InformationsquelleAutor tantuni | 2011-11-12

Schreibe einen Kommentar