Daten einer R232 Schnittstelle mit ATmega 8 lesen

Gast #1422139
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
Gast #1422237
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
Gast #1422246
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.
Persönliche Seite #1422257
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.
Persönliche Seite #1422273
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?
Gast #1422310
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
Gast #1422351
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
Gast #1422353
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 ;)
Gast #1422376
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
Gast #1422384
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?
Gast #1422389
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.
#1422886
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"
Gast #1422921
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.
Gast #1423292
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
#1423296
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.
Gast #1423319
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.
#1423322
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.
Gast #1424040
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 
:-(
#1424064
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

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren