Hallo Leute,
ich habe vor ein paar Tagen mit meinem ersten "richtigen" Elektronik
Projekt angefangen, einem Lasertag System.
Der Plan ist, dass ich mir auf Basis des Atmega328 eine Platine baue,
die folgendes können soll:
- IR Puls senden und empfangen (56kHz PWM, ca 2 Byte Daten)
- ein Display ansteuern
- Sound ausgeben bei Treffern, etc
- evtl Daten mit den anderen Tagger austauschen über Funk (zB NRF24L01)
(ist kein Muss)
Im Moment bin ich dabei den Schaltplan für die Platine zu entwickeln und
die Software zu schreiben.
Zum Testen habe ich einen Arduino Uno, ein Adafruit 1,8" TFT und IR LEDs
und Receiver.
Das Display und der IR Puls funktionieren schon einwandfrei, gerade bin
ich am Empfangen dran.
Jetzt habe ich aber einige Fragen bei denen mir Google bis jetzt nicht
weiter helfen konnte:
1) Die IR Library (https://github.com/shirriff/Arduino-IRremote) die ich
verwende, benutzt zum Senden und Empfangen/Dekodieren den selber Timer.
Das heißt doch, wenn ich etwas sende kann ich nichts empfangen, richtig?
Die Lösung dafür wäre also, dass ich mit einem anderen Timer das
dekodieren machen muss, das heißt ich ändere einfach die Register auf
Timer1 ab zum Beispiel, oder muss ich sonst noch was beachten?
2) Wie soll ich die Soundausgabe machen? Ich sehe da zwei Möglichkeiten,
zum einen könnte ich so einen Audiorekorder IC (zB ISD1740) nehmen, der
dann über SPI angesteuert wird, oder ich mache es direkt über PWM aus
dem Atmega und lese die Sounds aus der µSD aus, die am Bildschirm hängt.
Aber reicht die Rechenpower des Atmega dafür aus? Man bräuchte also
einen Timer für den Sound, einen für die Dekodierung der empfangenen IR
Signale und einen um das PWM Signal für die IR LED zu erzeugen, sollte
ja also eigentlich reichen, der ATmega328 hat ja 3 Timer, richtig? Das
Probelem bei dem ISD Chip ist, das der relativ groß ist, die Platine
wird also sehr voll und ich würde sie ungern größer als die Display
Platine machen. Bei beiden Versionen müssten natürlich noch eine
Endstufe dazu, ich hab da an die TDA7052 gedacht.
3) Ich hab mal hier in die Liste mit den Platinenherstellern geschaut
und fande Ragworm vom Preis-Leistungs-Verhältnis ganz gut. Habe auch
keine schlechte Berichte über die gefunden, sind die zu empfehlen?
4) Im Moment programmiere ich noch mit der Arduino IDE und den ganzen
Libraries. Macht das auf lange Sicht Sinn oder sollte ich lieber direkt
auf was "richtiges" umsteigen, wie zB Atmel Studio?
Gibts ansonsten noch allgemein irgendwas was ich bei diesem Projekt
beachten muss?
Mit freundlichen Grüßen
Roman