.. wieder mit Programmieren von Mikrocontrollern angefangen .. Microchip Studio ist ganz neu für mich ..
Hmmm, jetzt versuche ich mal meine (äusserst negative) Meinung über/zu Microchip bzw. deren ATMELchips-Dokumentation für mich zu behalten. Nur so viel: ich arbeite (noch immer) mit Studio4 - Studio7 hatte ich z.B. wegen des für mich fast immer unnötigen Organisations-Wasserkopfs schnell sein lassen.
André´s Meinung ist ganz meine - da fehlt wohl was.
.. Problem damit eine 8 Bit Variable zu definieren. Ich denke ich mache etwas ganz falsch ..
#include <avr/io.h>
int main(void)
{ . . .
Mit diesen Includes hatte ich anfangs auch immer wieder Probleme bis ich .. ja, bis ich so ne Art "Standardkopf" (und Code-Schema) für meine Programme geschrieben hatte. Da waren ein paar häufige includes drin (obs die braucht oder nicht *ggg*).
Bei Deinem Code - eine Ausgabe erfolgt nicht - scheint mir ja auch die "..io.."-Bibliothek nicht nötig zu sein (vermutlich liegts aber an der Darstellung Deines Codes - und Du hast wesentliche Codezeilen einfach weggelassen :-/). Dagegen fehlt die
#include <stdlib.h>
evtl auch die
#include <inttypes.h>.
Nur so, als Beispiel und nicht unbedingt als Empfehlung mal ein stark gekürzter, aktueller Code (m)einer aktuellen "main"-Code-Datei. Die Wellenlinien stehen für entfernte Abschnitte - hier vorwiegend projektbezogener Code des "main" mit den zugehörigen Kommentaren.
Code:
/* >> Stand D:\D_pro-fils\compu_MC\C2\Db030\Db030.c
=================================================================================
Target MCU : ATMEGA328 - PU
Target Hardware : Mini2D0(.15)=R7D01 ("Steckbrett") ATMEGA328-PU + L293DNE
Target cpu-frequ. : 20 MHz, externer Quarzoszillator
=================================================================================
Enthaltene Routinen :
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ < Wellenzeile steht für entfernten Text
*** Versionsgeschichte:
========================
x23 22Okt24 1106 Portbelegung-Liste geordnet, TC1PWM u IRLEDset wieder includet
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
**Aufgabenstellung : Software f Mini2D0(.15) .#2 / auf m328+
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
>> besseres Dokmt.: ATmega328-P_ab48A_8271I_10-2014__NEU-NEU-NEU-NEU-NEU-NEU.pdf
============================================================================== */
#include <stdlib.h> //
#include <avr/io.h> //
#include <avr/interrupt.h> //
//#include <inttypes.h> // < < < < Ist das notwendig ? ? ?
// - - - - - - - - - - - - - - - -
// F-CPU ab #>hier<# von Libs etc benötigt, = NICHT definiert in CurrConfOptions
#define F_CPU 20000000L // 02 10 2016 1330
#define BAUD 120000 // Akzeptiert br@y als 128kBd >> 5Nov2018 !!
#define DATM "23 10 2024 1630"// <<== Textstring als Konstante
// - - - - - - - - - - - - - - - -
// ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
/* Es folgt der aktuelle Übersetzungskommentar: **************************
Device: atmega328p
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
Build(s) Program Data EEPROM
30. 7.2024 16:14:12 10982 bytes (33.5%) 1409 bytes (68.8%)
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
22.10.2024 16:57:36 6848 bytes (20.9%) 1137 bytes (55.5%) erste NUR-x23
Build succeeded with 0 Warnings...
============================================================ ***************** */
Anmerkung: Wenn ich in den im Code eingebetteten Kommentaren undoder in der Arbeitsmitschrift ALLES notiere das ich wichtig finde, dann habe ich nach einigen Monaten und später meist rund die Hälfte der wichtigen Dinge die ich bei späteren Überarbeitungen brauchte :-//
Lesezeichen