mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Daten einer R232 Schnittstelle mit ATmega 8 lesen


Autor: hero2992 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

ich möchte mit meinem ATmega8 µController daten einer seriellen 
schnitstelle lesen und dann speichern.

Ich möchte eine Zugangskontrolle per Transponder machen und das 
Transponder-Lesegerät verfügt über eine Serielle Schnittstelle.

Ist es überhaupt möglich?

(Ich programmiere mit BASCom.)

MFG. Hero

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hero2992 schrieb:

> Ist es überhaupt möglich?

Ja.

Autor: hero2992 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie muss ich vorgehen?

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wie muss ich vorgehen?

Bedienungsanleitung lesen. Sowohl von Bascom
als auch von deinem Gerät.

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Forsche diesen Fragen nach:

Welche Daten kommen aus dem Transponder-Lesegerät?

Ist die "Serielle Schnittstelle" eine RS232 oder was anderes?

Ist der ATmega8 nackig, d.h. du musst basteln, oder auf einer Platine 
mit zusätzlichen Bauteilen?

Was (wie häufig, wie lange...) soll der ATmega8 wo speichern?

Autor: hero2992 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Lesegerät gibt einen Zahlen und Buchstaben code der ein transponder 
besitzt.

Die schnitstelle am lesegerät ist eine RS232.

Der atmega 8 befindet sich auf einer "experimentir" platine von MyAVR.

ich besitze das My AVR Board MK2 USB Plus

der Atmega 8 soll speichern wann (externe uhr => wird aber erst später 
eingebaut),und wer den Zugang versucht (transpondernummer)

MFG. Hero

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>der Atmega 8 soll speichern wann (externe uhr => wird aber erst später
>eingebaut),und wer den Zugang versucht (transpondernummer)

Und wo ist jetzt das Problem?

ATMega mit Lesegerät verbinden.
Transpondernummer empfangen und speichern.

Bascom zu benutzen bedeutet nicht eigenes denken
zu vermeiden.

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
MK1 Board?

Speicher wäre dann wohl das EEPROM des Atmega8s, weil auf dem 
einfachen myAVR Board kein anderer dauerhafter Speicher drauf ist?

Die rel. kleine Grösse des Speichers (512 Bytes EEPROM) schränkt dann 
die Menge der aufzeichenbaren Logdaten deutlich ein!

Bei der Planung solltest dir Gedanken über das (un)erwartete? 
Datenvolumen machen und präventiv an eine Speichererweiterung denken. 
Beispielsweise ein grösseres, externes EEPROM mit TWI Anschluss.

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die nächsten Teilaufgaben sind:

Wie kann man zu Debugzwecken eine LED-Anzeige programmieren?

Wie empfängt man serielle Daten vom Transponder-Lesegerät (Ersatz PC)?
Sind bekannte Prüfdaten korrekt?

Wie speichert man Daten ins EEPROM?
Und wie liest man sie dort wieder aus?
Sind bekannte Prüfdaten korrekt?

Wie sendet man serielle Daten zum PC?
Sind bekannte Prüfdaten korrekt?

Autor: ccoder (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wer oder Was ist Bascom?
Programmiere mit C, dann bist Du besser dran.
Es gibt genügend freie Programmbibliotheken für C. Und C-Beispiele sind 
auch im Datenblatt vorhanden.

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

>Wer oder Was ist Bascom?
>Programmiere mit C, dann bist Du besser dran.

Mit dieser Überheblichkeit bist du nicht gerade eine Zierde der 
C-Jüngerschaft. Ich programmiere µP/µC seit fast 30 Jahren in Assembler 
und hatte noch kein Problem, das ich damit nicht lösen konnte. Ich habe 
deshalb auch keine Lust auf C. Also unterlasse deine plumpen 
Bekehrungsversuche.

MfG Spess

Autor: ccoder (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was ich damit ausdrücken will, ist dass es einfach vielmehr freie 
Codevorlagen in C gibt, als für Bascom. Man lädt sich die avr-gcc 
toolchain auf einem Linuxcomputer herunter oder nutzt avrstudio unter 
unter windows
und kann gleich loslegen. Beides freie Software.
C hat den Vorteil unter Linux, dass es die Sprache ist, aus der Linux 
gestrickt ist. Basic ist einfach mühseelig und kostet zudem noch.
Natürlich ist es noch besser in Assembler zu programmieren, da man 
gleichzeitig die Hardware versteht. Aber eben für einen Anfänger 
komplizierter. Trotzdem kann man assemblerroutinen auch gut in C 
einbinden.

Deswegen nocheinmal meine Empfehlung für C und ich entschuldige mich für 
meine Überheblichkeit gegen über Bascom.
grüsse cc

Autor: real_skydiver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Mit dieser Überheblichkeit bist du nicht gerade eine Zierde der
> C-Jüngerschaft. Ich programmiere µP/µC seit fast 30 Jahren in Assembler
> und hatte noch kein Problem, das ich damit nicht lösen konnte. Ich habe
> deshalb auch keine Lust auf C. Also unterlasse deine plumpen
> Bekehrungsversuche.

Danke! Aus der Seele gesprochen ;)

Autor: real_skydiver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> C hat den Vorteil unter Linux, dass es die Sprache ist, aus der Linux
> gestrickt ist.
Ok, was meinst Du in was andere OS programmiert sind? Windows in Pascal? 
Solaris in .NET???

Autor: spess53 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

OK. Mich stört an BASCOM am meisten, das der Eindruck erweckt wird, das 
man ohne Kenntnis der Controller und anderer Grundlagen programmieren zu 
können. Beim ersten Problem, das BASCOM nicht schon vorgekaut hat fängt 
das Rätselraten an.

>Trotzdem kann man assemblerroutinen auch gut in C einbinden.

Geht auch in BASCOM.

MfG Spess

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wieso geht es hier auf einmal um Linux?
Was du für cool hältst interessiert hero2992 bestimmt nicht und 
programmieren sollte man mit der Sprache, die man am besten beherrscht.

Wenn jemand mit Basic an die Grezen stößt wird er vielleicht zu C oder 
Asm wechseln, kann gut sein. Aber wenn die Funktion eines einfachen 
Programms wie dem hier geplanten und nicht der Nerdfaktor an erster 
Stelle steht sollte es doch jedem selbst überlassen sein mit welcher 
Sprache und erst recht unter welchem OS er arbeitet.

Woher kommt unter Linuxjüngern diese starke Ablehnung gegenüber allem 
was fremd ist und den Drang andere zu bekehren? Kommt ihr dafür in den 
Kuscheltuxhimmel?

Autor: ccoder (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Windows ist natürlich auch in C programmiert. Aber keiner darf den 
Quellcode wissen. Und das ist genau der Unterschied zu Linux. Man bleibt 
"blöd" (entschuldigung für die Überheblichkeit), weil man nicht 
versteht, wie das Programm funktioniert.
Oft weiss das der Programmierer auch nicht, aber man kann immer eine 
neue Version kaufen oder ein update installieren können. Und keiner wird 
die neuen Fehler finden.
Da Sources von Linux offen liegen, ist es auch viel leichter möglich 
eine
AVR-Hardware mit Linux kommunizieren zu lassen.

Autor: freiekleider (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ccoder schrieb:

> Da Sources von Linux offen liegen, ist es auch viel leichter möglich
> eine
> AVR-Hardware mit Linux kommunizieren zu lassen.

Entschuldige: Aber das ist ausgemachter Schmarrn.

Ausserdem geht es hier gar nicht darum, wie gut oder schlecht Linux ist, 
oder in welcher Sprache das Betriebssystem geschrieben ist. Und wenn du 
zum Ansprechen der serielle Schnittstelle in Windows den Source Code von 
Windows brauchst, dann machst du etwas grundsätzlich falsch.

Die Aufgabe kann mit BASCOM wunderbar gelöst werden. Noch viel 
einfacher, als du es in C mit deinen externen Bibliotheken je kannst. 
Der springende Punkt ist ganz einfach: Man muss sich auch mit BASCOM 
beschäftigen. Man muss sich auch mit dem µC selbst beschäftigen (ok, in 
dieser Anwendung vielleicht nicht so stark wie in anderen, weil BASCOM 
alle benötigten Komponenten schon mitbringt und diese nur noch 
miteinander verküpft werden müssen). Aber man muss sich damit 
beschäftigen. Nur weil man BASCOM benutzt, schreibt sich das Programm 
nicht von alleine.

Und genau darum geht es: Das hier immer wieder Anfragen von BASCOM 
Jüngern auftauchen, die der Meinung sind ein Schachprogramm sähe so aus

  "play chess"
  "end"

Autor: C-ler (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was halt leider immer wieder auffällt ist das die faulsten Deppen 
meistens mit BASCOM ankommen.
Darum hat sich zumindest bei mir festgesetzt das BASCOM == Lernunwillig 
und faul bedeutet.
Was Spess mit seinem ASM angeht, klar kannst du mit Assembler 
grundsätzlich immer alles tun, liegt in der Natur der Sache, nur ist mir 
zumindest meistens die Zeit dafür zu Schade; Wohl auch ein Grund warum 
Hochsprachen entwickelt wurden.

Autor: hero2992 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo ich bedanke mich vielmals für die vielen Kommentare, auch wenn sie 
mir bissher nicht weiterhelfen konnten.

wenn mir jemand sagen könnte wie ich die daten die ich zur ISP (die sich 
auf dem mysmartusb-mk2 befindet) geschickt bekomme , gelesen bekomme 
währe ich sehr Dankbar.

ich möchte mich entschuldigen das ich noch nicht viel fachwissen besitze 
aber jeder fänkt mal klein an.

MFG. hero2992

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hero2992 schrieb:

> ich möchte mich entschuldigen das ich noch nicht viel fachwissen besitze
> aber jeder fänkt mal klein an.

Schon richtig.

Also:
Was von deinem Projekt kriegst du alleine hin?
Bei welchen Abschnitten der im Web verfügbaren Tutorien steigst du aus?

Im Regelfall hilft es sich leichter, wenn jemand etwas präsentiert und 
dazusagt: so geht dieses und jenes nicht, wo hab ich den Denkfehler?

Solche Rundumschläge alla "Hilfe. Kann mir wer zeigen wies geht, am 
besten gleich mein ganzes Projekt" sind nicht gerne gesehen. 
Schliesslich lautet ja deine Ausgangslage "Ich möchte eine 
Zugangskontrolle ...". Mit der Betonung auf ICH.

Autor: P. S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
C-ler schrieb:
> Was halt leider immer wieder auffällt ist das die faulsten Deppen
> meistens mit BASCOM ankommen.

Lesen wir das gleiche Forum? Hier ist mindestens eine faule C-Anfrage am 
Tag, Bascom-Anfragen lese ich hier ueberhaupt kaum - vieleicht eine pro 
Woche.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Peter Stegemann schrieb:

> Lesen wir das gleiche Forum? Hier ist mindestens eine faule C-Anfrage am
> Tag, Bascom-Anfragen lese ich hier ueberhaupt kaum - vieleicht eine pro
> Woche.

Aber die meisten davon sind schon von der Form:
Ich will nicht selber im Datenblatt nachsehen?
Datenblatt, was ist denn das?
Was, für BASCOM gibt es auch eine Online-Hilfe?
Google, wie geht das?
Hab zwar keine Ahnung, will aber machen!


Was nicht heißen soll, dass ich alle BASCOM Programmierer so einschätze. 
Mit nichten! Es geht nur um einen nicht unerklecklichen Anteil an 
Fragern hier im Forum.

Autor: P. S. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Karl heinz Buchegger schrieb:

> Aber die meisten davon sind schon von der Form:

So wie die bei C auch - heute morgen 4 von 5 C-Problemthreads nur Leute 
die gestern noch in der Nase gebohrt haben und heute ein dickes Projekt 
in C abwickeln wollen, ohne je ein Buch in der Hand gehabt zu haben. Ich 
sehe da keinen Unterschied zwischen C- und Bascom-Anfaengern - nur 
tauchen von ersteren hier zig Mal so viele auf. Leider bringt es ja auch 
nix, den Anfaengern ein HowTo hinzulegen, das lesen sie ja auch nicht 
:-(

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hero2992 schrieb:
> aber jeder fänkt mal klein an.

Ja, dazu würde ich auch raten.
Also erstmal LED blinken, LED über Taste ein/aus, UART an Hyperterminal, 
...)
Dann hast Du schonmal Grundkenntnisse von Deinem Bord und der Toolchain.


Und wenns dann an eigene Projekte geht, mach zuallererst nen 
Programmablaufplan!
Einfach drauflos schreiben bringt Dir nur Frust und kostet Dich 
obendrein nen Haufen Zeit.


Peter

Autor: Stefan B. (stefan) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hero2992 schrieb:

> hallo ich bedanke mich vielmals für die vielen Kommentare, auch wenn sie
> mir bissher nicht weiterhelfen konnten.

Ich bin raus.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.