Zurück

(C) Christof Ermer, Regensburg
https://homepages.uni-regensburg.de/~erc24492/       Gästebuch


 

05.12.2018



Mikrokontroller Crash Kurs mit dem Mikroprozessor ATmega328p  (Arduino Uno Prozessor)
schwerpunkt ANSI-C Programmierkonzepte, Software Strukturen,
nicht das Arduino eigene Sketch!
incl. externe Elektronik und IN-Out Aktoren ( Servo/Sensor/Motor ...)
http://www.physik.uni-regensburg.de/studium/edverg/elfort/

 

       

Diese Seite ist ausschließlich für den internen Gebrauch zum "Fortgeschrittenen Kurs Elektronik" gedacht.



Vorwort:
Bevor es an die Kursbeschreibung geht, hier einige Gedanken vom durchführenden Kursleiter Christof Ermer:

klicke auf:  Kommentar_zu_Erfahrungen_im_Elfort_Kurs.html



Die meisten Abschnitte sind nur intern im Zusammenhang des Kurses benötigt und haben nur eine Merkzettel Funktion.

Serveradressen, Ordnerpositionen etc.

Kursleiter: Christof Ermer,          Tel Uni-intern: 943-2140,     Mobil: 017695678800, (für alle Fälle)

Meine Homepage ( Christof Ermer ) https://homepages.uni-regensburg.de/~erc24492/


Mein Büro ist zu finden im Raum 2.0.10  (Lst. Lupton Erdgeschoss, Physik 2)

Kursverantowortlicher: Dr.     Fritz.Wuensch@ur.de    Telefon   943-2069 oder 943-2161

 



Dies & das: Sonstige Links:

Basteln

Logische_Wahrheitstablle

Software Schreibweise Konventionen

Aufzählung_versus_Bit-Maske

USABASP_Driver_installieren mit ZADIG




Ich möchte den Kurs zukünftig anders gestalten.
Grund sind die extrem unterschiedlichen Niveaus der Teilnehmer zu beginn, was oft erst mitten im Kurs sich störend auswirkt.
Leider wird der begriff "Fortgeschrittenenkurs" nicht von allen Teilnehmern als genau  das Verstanden was es aussagt.
Für Fortgeschrittene.
Damit sind als ni
as dann zu Frustrationen der Teilnehmer wie des Dozenten führt.

1.:  Einrichten des Kurs Filseservers:

2. WinAVR  Compiler Installation:

WINAVR_Installation
       Simple  Problembehebung für Windows 8/10 (Childwindows Fehler beim Compilieren)
        das erkläre ich einfach ... ganz Easy:  die Extra-Datei   "msys-1.0.dll"   in den  C:\Winavr\utils\bin\  Ordner kopieren. Und alles ist gut.
Windows_10_Problem_mit_Compiler  
      "msys-1.0.dll  ist für das 64Bit Windows direkt auch hier zu finden :  ....msys-1.0-vista64/msys-1.0.dll
         Copy this file to \C:\WinAVR\utils\bin\  


Zentrales und vollständiges Kursskript:   in PDF Form. Immer etwas in  Bearbeitung, 19.04.2018--> V1.54):
Vortrag oder Selbst lern KURS:  Mikrocontroller Kurs Skript für AVR Mikrocontroller.
akt. Version:
Mikrocontroller Crash Kurs CE.pdf

Arduino UNO ATMega328p Prozessor Manual:

ATMega328p_PDF

       Wird oft gebraucht!  lokal Downloaden. Kleines Hardware Merkzettel Skript Elfort Bauteile und Merkzettel.pdf

Noch wichtig:
Lege einen Link auf "Programmers Notepad" auf dem Desktop:  Programmers Notepad Quicklink
So sollen eigene Dateien abgelegt werden: Lokaler_Speicherort
Arduino COM-PORT_einrichten


Lerne Löten.pdf
Diplomarbeit_BLiehr.pdf
 nichtssogut: Mikrocomputertechnik mit Controllern der Atmel AVR-RISC-Familie.pdf


 

Für interssierte und zum Üben zuhause:
Kostenloser C-Compiler zum Üben von ANSI-C:   DEV-C++.html

            Downloaden bei : http://www.bloodshed.net/dev/devcpp.html

Bloodsheet Dev C++ ist die Weiterentwicklung  https://sourceforge.net/projects/orwelldevcpp/



Material und Info Universität Regensburg intern GRIPS:1

E-Learning  GRIPS:   Beschreibungen , Skript , Sonstige Dateien: https://elearning.uni-regensburg.de/
Ihr DNS Login an der Universität Regensburg -->  Startseite > Kurse > Physik > IT-Ausbildung > Elektronik > Elektronik für Fortgeschrittene:    https://elearning.uni-regensburg.de/course/view.php?id=23517

 

 

(Unvollständig)--> Status Überarbeiten   Vor dem Kurs kann die  Zusammenfassungs PDF  ANSI-C-fuer-Mikrokontroller.pdf  gelesen werden.

              Jedoch sind dies Lernziele/Bestandteiele des Kurses und damit NICHT VORRAUSETZUNG.

Lösung des "Sync Child" Compiler Problems des Compilers in WINAVR: WINAVR_unter_WIN10

Zusammenfassung und Erklärung der verwendeten Hardware:   Elfort_Bauteile_&_Merkzettel.pdf


Einstellungen und Arbeiten mit dem GNU-C++  Compiler in WINAVR   Elfort-WinAvr.pdf
    Dies ist eine Sammlung von Tipps und Erfahrungen beim µC Programmieren

   File Server Einrichten ( für den Datenaustausch ( Programmfragmente) im Kurs.
Nur über das interne Datennetz der Universität Regensburg erreichbar.. So kann prima auf Projekt-Dateien zugegriffen werden:
Die verwendeten Dateien werden nach und nach ergänzend zur Verfügung gestellt.
Unter dem Namen „Kurssoft“ stellt das Rechenzentrum einen allgemeinen Speicherplatz für Dozenten bereit.
Kurssoft ist Sinnigerweise mit dem Laufwerksbuchstaben "K" verbunden.  (logisch)


Arbeitsweise:
ALLE DIESE FILES SIND NUR EINE QUELLE:
Wenn etwas benötigt wird, immer ZUERST  in einen Lokalen Ordner Legen.
    Heisst: Was gewünscht wird, ist auf den Lokalen Ordner zu kopieren:

Am besten  im eigenen BENUTZER Ordner:
BSP:     C:\Users\Christof\Elfort_2019
Unter Ordner anlegen: z.B.     "uCProgs"     -->ergibt  C:\Users\Christof\Elfort_2018\uCProgs Ab jetzt fleissig : Copy -PASTE

Netzwerkverbindung einrichten:
So wird es gemacht:
Möglichkeit 1: mit Netstorage:

Weg zum Kurs-Laufwerk:
Eingabe des NDS-Kurznamens (3 Buchstaben, 5 Ziffern) und Passworts

bei https://netstorage.uni-regensburg.de/NetStorage/
und weiter über uni-kurssoft/PHY/elfort

......................................................................
meine Variante. Als Laufwerk einbinden

1. Novell Anmeldung durchführen:

TIPP: OTH Leute können sich an der Uni einloggen mit ihrem  Login : aber die Buchstaben ersetzt durch ZZZ oder ZZB-.... evtl. im RZ nachfragen
aus erc24492 wird ZZZ24492


2. Falls Laufwerk "K" noch nicht sichtbar  ist: Notwendig ist ein UNI-Regensburg Account...

Wer diesen nicht hat, meldet sich bei mir..

gut Funktonierender Weg --EXPLORER:

Im File-Explorer: Extras --> Netzlaufwerk verbinden  --> Laufwerk K wählen -->

(copy-paste)
\\TITAN-SHARE1\SHARE1\KURSSOFT\PHY\elfort

eintragen

Empfehle Häckchen setzen:


dann:

Es erscheint im Explorer ( hoffentlich ):    Kurssoft(\\TITAN-SHARE1\SHARE1)(K:)


MERKE:

Arbeits (-veränderbare) Dateien   IMMER LOKAL KOPIEREN


Pan B:

Kommandfenster mit Adminrechten --> CMD -->  ( meist mit rechter Maus auf StartSymbol ) Heute heisst es Windows Powershell (Administrator )

net use K: \\Titan-share1\SHARE1\KURSSOFT\PHY\elfort   /persistent:yes

    oder mit NDS User : ZZZ12345 ist DEIN NDS

net use K: \\Titan-share1\SHARE1\KURSSOFT\PHY\elfort  /USER: ZZZ12345  /persistent:yes

Andere temporäre Möglichkeiten:

einfach in die  Adresse Zeile des Explorers im Eingabefenster des Explorers eingeben:   (copy-paste)

\\TITAN-SHARE1\SHARE1\KURSSOFT\PHY\elfort

    dann immer mit "rechter Maustaste", Files lokal, kopieren

ordenr für die Quellfiles für das Programmieren :

K:\PHY\elfort\
\0000 Kurs_20xxWINAVR-Progs\ TERMINAL Programm  (Text senden und empfangen) gutes altes XP Terminal Programm: XP-Termninal

Neuerdings verwende ich gerne MobaXTerm https://mobaxterm.mobatek.net/
Siehe die Programme in     K:\PHY\elfort\1F_Terminal Programme  ( IMMER LOKAL KOPIEREN )




Praktisch und zum Ausdrucken und neben den Monitor kleben.: Bin    Hex
0001    1    0x01
0010    2    0x02
0011    3
0100    4    0x04
0101    5
0110    6
0111    7
1000    8    0x08
1001    9
1010    A-10
1011    B-11
1100    C-12
1101    D-13
1110    E-14
1111    F-15





MERKE:

Prozedur Programm "flashen"
( =Programm  in den Mikrocontroller laden )

Dazu ist das Terminal  VORHER immer zu deaktivieren:!

Grund: Bootloader und Terminal teilen sich die selbe serielle Schnittstelle


Doch nun zum:

Termninal Programm:

Leider gibt es in Windows 7 standardmäßig kein Terminalprogramm.
Ich nehme das von XP,
Alternativ Terminal Programm http://www.der-hammer.info/terminal/
Nach der Installation des ADRUDINO Boards: Vorher sollte jedoch das benutzte COM-PORT  ermittelt werden

Tastenkombination
WINDOWS-FENSTERTASTE + PAUSE
    =>  Geräte Manager

In diesem Fall ist es "COM8" .. Sollte die Nummer irrwitzig groß sein, kann dies unter Geräte Manager--> rechte Maustaste, Eigenschaften, Anschluss Einstellungen, Erweitert
geändert werden
Einrichten eines Terminal-Programms , das unter Win7 läuft,
dazu auf dem Fileserver den Ordner  "K:\PHY\elfort\3A_Terminal Programme  öffnen und den Ordner "HyperTermXP" auf den lokalen Desktop kopieren.

Starte darin hypertrm.exe  und öffne darin die Beispielsweise :  115200.com8.ht

K:\PHY\elfort
dann müsste es soweit passen.



Compiler  & Plattform:


Der Kurs, die Programme und die Compilersoftware WinAVR, wird entweder auf Windows 7 oder 10 ausgeführt.
Programmiert wird der AVR  ( alle Typen ) mit: Compiler WINAVR :   http://sourceforge.net/projects/winavr/files/
WINAVR Beschreibung  https://www.mikrocontroller.net/articles/WinAVR

Diesen unbedingt in den vorgeschlagenen Ordner C: \WINAVR installieren

WINAVR installieren:

    Dannach gleich

      Simple  Problembehebung für Windows 8/10 (Childwindows Fehler beim Compilieren)
        das erkläre ich einfach ... ganz Easy:  die Extra-Datei   "msys-1.0.dll"   in den  C:\Winavr\utils\bin\  Ordner kopieren. Und alles ist gut.
        Windows_10_Problem_mit_Compiler  
      "msys-1.0.dll  ist für das 64Bit Windows direkt auch hier zu finden :  ....msys-1.0-vista64/msys-1.0.dll
         Copy this file to \C:\WinAVR\utils\bin\  

 

Quelle:

Lokal: K:\PHY\elfort\1A  WINAVR und AVR Studio Compiler

WinAVR-20100110-install.exe
oder  https://sourceforge.net/projects/winavr/
https://sourceforge.net/projects/winavr/files/latest/download

Hier sind wir fertig:

.................................................................................................................................................................





Bei Windows 8/10 gibt es Probleme beim Compiler, die aber gelöst  sind.!

    Siehe auch https://www.mikrocontroller.net/articles/WinAVR
    und auch:    http://www.madwizard.org/electronics/articles/winavrvista  (Da habe ich die Informationen her )

------------------------------
Readme Text:  msys-1.0-vista64

20:03 19.04.201620:04 19.04.2016 found solution.
http://www.madwizard.org/electronics/articles/winavrvista
Copy this file:msys-1.0.dll
to utils\bin directory (WinAVR)

       C:\WinAVR-20100110\utils\bin
------------------------------

Für Windows10 32Bit:    Download msys-rebased.zip  and overwrite the existing msys-1.0.dll in the utils\bin subdirectory of your WinAVR director
Für Windows10 64Bit    If you are using Vista 64-bits, you will probably have the sync_with_child or similar errors.

Vorgehensweise:
Nutze gleich die von mir erstelle Kopier Batch Datei:  Mir rechter Maustaste downloaden und ausführen.
Ich habe da ein BATCH Datei  konstruiert, die dies erledigt:  CopyConifg_PN_toC.cmd

        Inhalt: copy  .\Files\WINAVR_Win10_Problem_Solved\msys-1.0-vista64\msys-1.0.dll  C:\WinAVR-20100110\utils\bin /Y


oder direkt:
In that case download msys-1.0-vista64.zip with a modified msys-1.0.dll.
--> Lade für Windows10-64_Bit folgenden Ordner bzw Datei  "msys-1.0.dllin den utils\bin directory of WinAVR

 Download mit rechter Mousetaste msys-1.0.dll
 Kopiere diese in  C:\WinAVR-20100110\utils\bin   directory (WinAVR)




Linux ist aber ebenfalls möglich. Dann ist allerdings selbstständige Rechereche notwendig. Dazu gibt es entsprechende Foren im Netz
Windows 8.1..10  macht Probleme mit dem WINAVR Compiler...

Dieses ist jedoch einfach zu lösen. Austausch einer DLL. Dazu später mehr.

Wir verwenden Win7 mit zusätzlichem Terminalprogramm.  aus (Windows XP )
Ich verwende bewußt nicht das Atmel eigene AVR Studio...weil es sehr umfangreich und kompliziert für Einsteiger ist, und so den Blick verstellt auf das Wesentliche und Notwendige.
Der Fokus soll auf dem Mikrocontroller liegen und nicht auf die vielen Möglichkeiten ( wie JTAG Debuging ) von AVR Studio
Selbstständige Recherche:
Suche in Google WINAVR und downloade die aktuelle Software.
Darin enthalten der Editor: Programmers Notepad.
Dieser Editor kann mit dem makefile Compilieren und flashen steuern.
Also alles Notwendige. WinAVR.html  
So wird der WINAVR benutzt.   Überblick mit Downloads über grundlegende AVR Software und Werkzeuge AVR-Grundwerkzeug.html
Als Programmierwerkzeug dient der   "InSystemProgrammer" :  ISP-ASP-China.html


 


Speicher-Ort für Programme:

Für das Arbeiten MÜSSEN die Dateien auf dem lokalen PC Liegen,

Wiederholung:

Wenn etwas benötigt wird, immer ZUERST  in einen Lokalen Ordner Legen.
    Heisst: Was gewünscht wird, ist auf den Lokalen Ordner zu kopieren:

Am besten  im eigenen BENUTZER Ordner:
BSP:     C:\Users\Christof\Elfort_2018
Unter Ordner anlegen: z.B.     "uCProgs"     -->ergibt  C:\Users\Christof\Elfort_2018\uCProgs Ab jetzt fleissig : Copy -PASTE

Sinnvoll:

Oder, von mir aus "in einem Ordner" auf Dekstop.

Wichtig:  "nicht irgendwo"

Das Filemanagement unter WINAVR  ist simpel
Der Ordner ist der Projektname
Das war ausschlaggebend für die Wahl des WINAVR.
Vorausschreitende Entwicklungen können so unkompliziert erweitert werden

Jedem Projekt wird ein eigener Ordner zugewiesen/erstellt, worin alle zugehörigen Files liegen:

Beispiel:

    C:\uCProgs}Meine_Cs2018\AT328p-BLDC-Sauger.
   
oder einfach ein Ordner auf dem Deskto ORDNER-Desktop -->  "MEIN_NAME"
--


Programmers Notepad

Zum sinnvollen Arbeiten brauchen wir einen schnellen Link auf dem Desktop zum Programmers Notepad
pn.exe

Dieser ist enthalten innerhalb des Ordners:   C:\WINAVR\PN

auf PN.exe mit rechter Maustaste klicken:  Verknüpfung auf Desktop.

FERTIG!!

-------------------------------------------------------------------------------

Info für Advanced Users: Nicht unbedingt benötigt

Speicher Ort für Grundeinstellungen des Programmer Notepad:
    C:\WinAVR-20100110\pn\settings
   und dorthin folgende Datei(en) kopieren

!! Diese 3 Dateien in den Ordner C:\WinAVR-20100110\pn\settings kopieren !!  Fertig.

UserSettings.ini -> UserSettings.ini
UserSettings.xml -> UserSettings.xml
UserTools.xml  ->  UserTools.xml
Einfachster Weg !!  NAch der Installation von WINAvr

Ich habe da ein BATCH Datei  konstruiert, die dies erledigt: CopyConifg_PN_toC.cmd

Mit rechter Maustaste Downloaden und ausführen.! Fertig,   ( kopiert die PN Configs nach Laufwerk C: , sonst anpassen )

oder alle drei zusammen..separat im ZIP deonloaden. Auspacken und nach C:\WinAVR-20100110\pn\settings kopieren
PN_Settings.zip



Hinweise:
WINAVR.20100110-install.exe  ist die schon sehr alte letzte Version.  03.2017

„Es wird berichtet dass die PATH Variable überschrieben wird.“ !?
  Ich hatte jedoch niemals Probleme.
aber, so findet man diese:
Systemsteuerung --> System & Sicherheit --> System --> Erweiterte Systemeinstellung --> Umgebungsvariablen
PATH -->
 da steht bei mir :
  %USERPROFILE%\AppData\Local\Microsoft\WindowsApps;
Hier sieht man die beiden Einträge

--> und unter Systemvariablen:

 




 


sonst, Mit dem USBASP Dongle.
In System Programmer = ISP:    

1..Schritte: Installation eines  USB, Fischl kompatiblem, ISP-Programmers  (In System Programmers)  USB-Fischl-Programmer.html
Um  das Programm in den µC zu laden gibt es viele verschieden Wege Fuses_Avr.html    Notwendige Grundeinstellungen des AVR ( z.B. Quarz Aktivieren ):


AVR_Dude.html   Build in ( WINAVR) Programmer verwenden (...leider etas unübersichtlich, aber funktioniert gut mit Burn-O-Mat etc. ) PonyProg.html  Eine sehr gute, aber nur mit "ECHTEN" Seriellen und LPT Ports zu nutzende Programmier-Software. Kann Fusebits lesen: ISP_Adapter.html  Paralleler In System Programmer ISP. Leider vom Aussterben bedroht.
Webseite des USB Programmers (gespeicherte Ebayseite): USBASP USBISP AVR Programmer USB ATMEGA8 ATMEGA128 New

Einstellungen mit Quarz  CKOP und BODEM makefile Sektion:
 
Suche mit "AVRDUDE" nach Position  #---------------- Programming Options (avrdude) ----------------
dort mit # alles auskommentieren  mit udn AVRDUDE_PROGRAMMER  AVRDUDE_PORT

Dann die Zeilen einfügen

AVRDUDE_PROGRAMMER = USBasp
AVRDUDE_PORT = usb        # programmer connected to USB port

das wars...


Basteln

Das erste Projekt:   Piepser_Zusammenbau.pdf
Hier wird der extrem nützliche Test-Piepsermit Tonhöhenänderung beschreiben. !!
Siehe dazu folgende Seite vor dem Baubeginn: 
1. Platine Bohren
2. Bauteile der höhe nach Löten. ( Lötanweisung befolgen und einüben. )

FlachKabelStecker.html




Logik  Tabelle:
http://de.wikipedia.org/wiki/Logikgatter

A

B

Y

0

0

0

1

0

0

0

1

0

1

1

1

UND
AND
und mit Invertierung am Ausgang; --

NAND

A

B

Y

0

0

0

1

0

1

0

1

1

1

1

1

ODER
OR

auch diesen gibt es mit
Invertierung am Ausgang. Punkt am Ausgang:;
NOR

A

B

Y

0

0

0

1

0

1

0

1

1

1

1

0

(wieder NULL wenn beide Eingänge 1 sind)
EXKLUSIV ODER
EXOR

A

Y

0

1

1

0


NICHT


NOT

 


 

Aufzählung versus BitMaske:

Betrachtet werden nun die Stellen in der binären Aufzählung, wo nur EIN Bit gesetzt ist:

BIT-Nr

HEX  0x

MASKE  0b

0

0x01

0b 0000 0001

1

0x02

0b 0000 0010

2

0x04

0b 0000 0100

3

0x08

0b 0000 1000

4

0x10

0b 0001 0000

5

0x20

0b 0010 0000

6

0x40

0b 0100 0000

7

0x80

0b 1000 0000

 


Konventionen zur Schreibweise von Konstanten und Variablen

Dies ist eine Beschreibung der von mir benutzen Technik  in der Programmierung.
Aber keine Vorschrift !! Jeder kann das machen, wie er selbst will. Klar, aber....
Letztlich gelten nur die Syntaxvorschiften, 1978 erschienen von Kerningham und Ritchie  in dem Buch "Programmieren in C".

Jedoch.... ist dies nur die Beschreibung der Sparce Cm NICHt wie man damit GUT Programmiert

Es ist  der Unterschied zwischen einem "Hauruck-Basic-Programmierer" und einem "näher am Profi"..
So kann man Progrtammeesser verstehen, und !! Fehler schnell finden. Weil man "sieht", waß "was" bedeutet...!

Es ist nur eine Handvoll simpler Reglen, die auch MS/Linux Profis verwenden ( mehr oder weniger ).

1. Es gibt keine EIN-Buchstaben Variablen. Das ist unter Profis verpöhnt.  Aus gutem Grund.
    Leider so häufig wie der Aberglaube daß Schönheitscreme hübsch macht.
    Bsp:  for i =.  .... "ist Bääääääähhh".
    Besser: typisiert  und ein "sprechender Name"  wie "u8ByteCount".     Was das bedeutet gleich mehr.

2. Konstanten, und Definitionen, MAKROS werden immer nur mit GROßBUCHSTABEN geschrieben
    also typischerweise alles im Headerfile wie  #define XXXX  und Makrodefines,  aber auch alle anderen Konstanten.
    Bsp:   alles Großgeschrieben:
    const char MCA_DELIMTERSTR[] PROGMEM = { ',',0 };
    #define MOTOR_ENABLE_FLAG    0x02
    #define LED1_ON()    (LED_PORT |= LED1_MSK)
    #define LED1_OFF()    (LED_PORT &= ~LED1_MSK)

3. a   

    Variablen werden am Wortanfang mit Kleinbuchstaben  mit dem Variablentyp gebranntmarkt. "Wie ? kommt geleich"
3. b

    Variablen-Namen werden möglichst "sprechend", nach 3a-Regel mit den Typenkleinbuchstabem, zuerst mit GroßBuchStaben, dann mit jedem "Silbenanfang" einem  weiteren "GroßBuchStaben,  gefolgt von den "Kleinbuchstaben" der Silbe, geschrieben.

 

Das ist alles !!    am Besten ein Beispiel:  

char gcaUartRXBuffer;    //lese : global char array Uart RX (empfangs) Buffer (speicher)
Liste der Typen-Kleinbuchstaben-Kürzel: ( in der Reihenfolge, die ich verwende ) g = global definierte Variable.  //    Ohne "g" ist Var. also eine lokale Funktionsvariable. Simpel. p = Pointer. //    Var, ist ein Pointer s = Struct Variable u = unsigned //    signed ist default  c = char a = Array;  // Var ist ein Array ( bei Strings die zusätzliche 0 nicht vergessen ) 8, 16, 32, 64,.. // Bitbreite der Variable... praktischer als char integer word... und eindeutiger!
in WinAVR wird anstelle von char integer word usw eine ienheitliche form verwendet
int8_t ist short, char;  
uint8_t = quasi byte;
uint16_t = unsigned int;  int16_t = integer usw..

am Besten einige Beispiele: mit der "lauten Leseart"
uint32_t    u32TickCount;  //unsigned word = 32 Bit  für eine Zeitzähler
uint8_t    u8ProgMode;     //unsigned char ( BYTE ) das FlagBits des Programmmodus speichern soll;
uint8_t * pcRXBuf;   //pointer auf unsigend char,    pointer auf den Empfangsbuffer;

das war schon alles! Die paar Buchstaben zu lernen ergibt sich automatisch am Type-namem .. c=char usw..
Man gewöhnt sich schnell daran, und möchte es irgendwan nicht mehr anders..  Die Zeiten von   for( i = ..) sind bald vorbei.



USABASP Driver installieren

Dead-Simple Driver Installation for USBasp and USBtiny on Windows


http://rayshobby.net/dead-simple-driver-installation-for-usbasp-and-usbtiny-on-windows/
ZUADIG downladen
http://zadig.akeo.ie/
und dann:

Instructions

Go to http://zadig.akeo.ie/ and download the software (note that Windows XP has a separate link).

Plug in your USBasp or USBtiny device. In case your microcontroller uses a USBasp or USBtiny bootloader, enter bootloading mode, and let Windows detect the device (it will report driver not found). If a window pops up asking to search for driver, just close it or click on Cancel.

At this point, run Zadig, it should detect the USBasp or USBtiny, or any libusb device that you have. Then in the selection box (see below), choose libusb-win32 (v1.2.6.0), and click on Install Driver, and wait for the installation to complete.


That’s it! Because the drivers are digitally signed, there is no hassle installing it in Windows 7 64-bit and Windows 8.1.

I will be updating the driver installation instructions for OpenSprinkler 2.1 and SquareWear right away, as they both use USBasp bootloader. Users have often complained that it’s frustrating to install USBasp driver for Windows 7 64-bit and Windows 8.1. Those days are now past!

 




Ergebnisse:
SS2014 :  C-Files vom KURS SS 2014 : C-Files SS2014_AT16-USBASP.zip, Eagle Files: Eagle_Kurs_filesSS 2014.zip
SS2015 Arduino-Kurs: ATM328-WINAVR-Kurs Files 2015.zip 
SS2016 Arduino-Kurs: Kurs2016_WINAVR-Progs-03-2016.zip
SS017 WinAVR C-Module Elfort-Kurs2017 ZIPs/Kurs2017_WINAVR-Progs.zip SS017       Kursprojekte: KursProjekte.html

SS2018 C-Module: Kurs2018_WINAVR-Progs.zip   KursProjekte 2018: :KURS_ergebnis-2018.zip