-
-
http://www.avr-asm-tutorial.net/index.html
Diese Seite ist doch dafür gut geeignet oder
Mir geht es eigendlich nur darum, dass ich z.B Daten von einem GPS Empfänger hinaustakten muss.
Demnach muss ich ein I/O Register verwenden wo ich z.B. Pin 1 auf Ausgang schalte.
Anschliessend muss ich beim gleichen I/O Register dann Pin 2 auf Eingang schalten.
Nun lese ich bei diesem Eingangspin einen digitalen Wert 1 oder 0 ein.
Diesen Wert speichere ich dann in ein anderes Register z.B. name "erstesRegister".
Dieses Register ist dann r0.
Zu vor muss aber das Schieberegister name "zweitesRegister, was r1 ist" um 1 addiert werden.
Demzufolge weiss man dann, wo der eingelesene Binärwert bei welchem Bit des Registers erstesRegister gespeichert werden muss.
Hat das Register zweitesRegister den Wert 8 erreicht, so wird der Binärcode vom Register erstesRegister in eine SD Karte geschoben.
Diese SD Karte hat nun z.B. 12 Sektoren.
Jedes Sektor besitzt 512 Byte.
Wurden nun 8 Bit des Registers erstes Register in die SD Karte geschoben, so wird dann anschliessend ein anderes Register namens drittesRegister "was r3 ist" mit dem Wert 8 addiert.
Nun werden die Register erstesRegister, zweitesRegister auf den Wert 0 zurückgesetzt.
Nun läuft dieses Programm dann solange ab, bis das Register drittesRegister den Wert 6144 hat.
Nun wird das Programm unterbrochen und eine rote LEd fängt an zu leuchten.
Demzufolge benötige ich noch 3 Register.
r4 = um 1 Ausgang bei I/O zu schalten "für GPS Empfänger"
r5 = um 1 Eingang bei I/O zu schalten "für GPS Empfänger
r6 = um 1 Ausgang bei I/O zu schalten "für SD KArte"
r4 bis r6 werden dann in das I/O Register geladen.
Wäre dies so möglich, wie ich es gerade beschildert habe?
Bis denne
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen