Kostenloser Elektrotechnik VIDEO-Kurs


mit VIDEO-Reihen zu den Themen:
Grundlagen der Elektrotechnik
Gleichstromnetze und Berechnungsverfahren
Wechselstrom und Drehstromnetze
Elektrische Maschinen
Regelungstechnik
Digitaltechnik
Mikrocontrollertechnik und C-Programmierung


Bits, Bytes und Nibbles


Der  Mikrocontroller rechnet digital, also mit binären Werten. Um in diesen Wust von Nullen und Einsen eine Struktur zu bringen, werden die binären Zahlen zusammengefasst.

Aus Bits werden Bytes und Nibbles. Die Zahlendarstellung ist binär und hexadezimal.

Wie das ganze funktioniert und warum die Einführung von Nibbles Sinn macht, versuche in der heutigen Folge zu zeigen.

Dieser Artikel ist Teil des Mikrocontroller-Kurses hier auf ET-Tutorials.de.

Im Video werden wir uns mit Hilfe des Debuggers die einzelnen Schritte beim Rechnen mit binären und hexadezimalen Zahlen angucken und (hoffentlich) sehen, dass eine Umrechnung in Nibbles die Umrechnung von binären in hexadezimale Zahlen und umgekehrt sehr erleichert.




Hier noch einmal der abgespeckte C-Code aus dem Video.

/*——————————————————————————
 HELLO.C

 Copyright 1995-2005 Keil Software, Inc.
 ——————————————————————————*/

 #include <REG52.H>                /* special function register declarations   */
 /* for the intended 8051 derivative         */

 #include <stdio.h>                /* prototype declarations for I/O functions */

 /*————————————————
 The main C function.  Program execution starts
 here after stack initialization.
 ————————————————*/
 void main (void) {

 /*————————————————
 Setup the serial port for 1200 baud at 16MHz.
 ————————————————*/
 #ifndef MONITOR51
 SCON  = 0x50;                /* SCON: mode 1, 8-bit UART, enable rcvr      */
 TMOD |= 0x20;               /* TMOD: timer 1, mode 2, 8-bit reload        */
 TH1   = 221;                /* TH1:  reload value for 1200 baud @ 16MHz   */
 TR1   = 1;                  /* TR1:  timer 1 run                          */
 TI    = 1;                  /* TI:   set TI to send first char of UART    */
 #endif

 /*————————————————
 Note that an embedded program never exits (because
 there is no operating system to return to).  It
 must loop and execute forever.
 ————————————————*/

 while (1) {

 }
 }

[ >> Hier geht es zurück zur Übersichtsseite des Mikrocontroller-Kurses .]


Werbung:
Kernighan/Ritchie - Programmieren in C.
Mit dem C-Reference Manual (Taschenbuch)

DAS LEGENDÄRE STANDARDWERK
- von den Erfindern der Programmiersprache C
- beschreibt C nach dem ANSI-Standard
- Grundlagen- und Nachschlagewerk in einem
- mit zahlreichen Beispielen und Aufgaben

Die Autoren Kernighan und Ritchie haben die Programmiersprache "C" erfunden und entwickelt. Dieses Buch führt leicht verständlich in die Anwendung der Programmiersprache C ein.

Zahlreiche Beispiele, die meist vollständige Programme darstellen, und praktische Übungsaufgaben fördern das Verständnis und die unmittelbare Anwendung von C.

Klicke hier für weitere Informationen zum Buch und Meinungen der Leser



Hat Dir der Artikel geholfen? - Dann hilf dem Artikel ;-)

Bits, Bytes und Nibbles:
1 Star2 Stars3 Stars4 Stars5 Stars
4,83 von 5 Punkten, basieren auf 6 abgegebenen Stimmen.
Stimme jetzt ab ! (auf die Sternchen klicken)
Loading ... Loading ...




Ähnliche Artikel

Folgende Artikel aus der gleichen Kategorie könnten Dich ebenfalls interessieren:

Funktionen in C, Definition und Deklaration Durch die Verwendung von Funktionen kann man Programme strukturieren und effizienter machen. In unse...

Timer Interrupts 8 bit auto reload In dieser Folge geht es um den Mode 2 des Timer Interrupts, dem 8 bit auto-reload Modus. Im Gegensat...

Interrupts und Polling Heute geht es nun um das Thema Interrupts. Was sind Interrupts? Wozu benötigt man Interrupts? Was is...

Lösung zur Aufgabe: Lesen aus Ports Heute geht es nun um die Lösung der Aufgabe aus der vorherigen Folge. Also darum, wie man aus Ports ...

Timer Interrupt des 8051 Mikrocontrollers Zu den wichtigsten Aufgaben eines Mikrocontrollers gehören Steuerungs-, Regelungs- und Messaufgaben....

{ 6 Kommentare… sie unten lesen oder einen hinzufügen }

Christian

Hi, wenn ich den abgespeckten C-Code eingebe und übersetzen will bekomme ich einen Fehler:
Der lautet:

Build target ‘Simulator’
compiling HELLO.C…
HELLO.C(22): error C100: unprintable character 0xD7 skipped
HELLO.C(23): error C100: unprintable character 0xD7 skipped
Target not created

Liegt das Problem evtl. am Code?

Grüße Christian

Wolfgang Bengfort

Hallo Christian,
danke für den Hinweis.

Ich habe es eben einmal ausprobiert und muss dagen: Du hast recht.

In Zeile 22 und 23

SCON = 0×50; /* SCON: mode 1, 8-bit UART, enable rcvr */
TMOD |= 0×20; /* TMOD: timer 1, mode 2, 8-bit reload */

macht Wordpress (das Content Management System / Blog System von ET-Tutorials aus einem x ein ×. Ärgerlich :-(
Ihr müsst also in diesen Zeilen ein richtiges x einsetzen.

Dann kann man es kompilieren.

Und ich werde mich nach einer geeigneten Möglichkeit umgucken, wie man vernünftig Quellcode veröffentlicht.

Wolfgang Bengfort

So, jetzt sollte es gehen.
Viele Grüße!

Christian

Danke, nun funktioniert es.

Noch eine Frage. Warum benutzen wir für den Kurs eigentlich mVision?
Wären Programme wie Pelles nicht einfacher für den Anfang?
Ich bin absoluter Anfänger was das betrifft aber mir persönlich fällt die Arbeit mir Keil wesentlich schwerer als mit Pelles oder dem alten MS Visual C++.

An dieser Stelle möchte ich diesen Kurs noch loben, die Videos sind sehr verständlich gemacht.

Grüße Christian

Wolfgang Bengfort

Hallo Christian,
da der eigentliche Inhalt der Kurses ja die Mikrocontroller-Programmierung ist, benötigen wir eine Entwicklungsumgebung, die uns auch ausführbaren Code für einen Mikrocontroller erzeugt.
Pelles und MS Visual C++ kann das nicht.
Für einen reinen C-Kurs wären die von Dir genannten Umgebungen sicher geeignet.

Nach unserem C-Kurs wird sich jedoch nahtlos ein µC-Kurs für den 8051 anschließen.
Und dafür brauchen wir eben eine Umgebung wie µVision, o.ä.

Viele Grüße

Wolfgang Bengfort

Asgedom

Danke Woflgang!

ich bin begeistert, die Kurse sind vertändlich ausfgebaut.

Danke
asgedom

Einen Kommentar hinterlassen