Ergebnis 1 bis 15 von 28

Thema: Ein Alarmdrucker...

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Registriert seit
    08.12.2004
    Beiträge
    788
    Siehe erstes Posting, ATmega8.

    Von meiner Seite aus ein dickes "Respekt", vor allem, da sich mir die Welt der µC so nach und nach jetzt auch studientechnisch erschließt ;-)
    Echt eine super Idee!

    thilo

  2. #2
    Registriert seit
    21.12.2002
    Beiträge
    3.127
    An den eingesetzten µC werden 2 Anforderungen gestellt. Er muß ausreichend RAM haben, um den Text in mehreren Fragmenten im Speicher halten zu können. Da sind 256 Byte etwas knapp, also sollten es mind. 512 Byte sein. Und er sollte einen Hardware-UART besitzen. Theoretisch geht es auch mit Software-UART, aber das ist dann in der Entwicklung eine zusätzliche Fehlerquelle.

    Von daher habe ich mich für den 28-poligen ATMega8 entschieden. Im Prototyp sitzt allerdings noch ein 40-poliger 8515, weil ich den gerade da hatte.
    Theoretisch sollte das Ganze auch mit einem der neuen ATTiny gehen, die trotz 8-poligem Gehäuse bis zu 8k Flash und 512 Byte RAM haben. Bringt aber preislich keinen Vorteil (im Gegenteil) und Platzprobleme gibt es auch keine. Von daher ist der ATMega8 für 1,70€ die beste Wahl.

    Durch Zufall habe ich bemerkt, daß in der aktuellsten Version des BASCOM die DCF77-Funktion enthalten ist. Das ist natürlich genial und wird demnächst auch hier eingesetzt. Auf dem Entwurf des Platinenlayouts ist ein entsprechender Stecker für den Anschluß der Aktivantenne schon vorgesehen.

    MfG

    Frank

  3. #3
    Registriert seit
    08.06.2007
    Beiträge
    709
    das waren also deine basteleien für die feuerwehr von denen du mal sprachst;)

    ne aber das mit dem mega8 hab ich übelesen....mich würden trotzdem mal die platine bzw der testaufbau bzw das layout interessieren (nur vom groben aufbau...nich für den nachbau;) soviele einsätze haben wir nun wirklich nich.....der würde in 7 jahren vellei 20 mal drucken....davon 15 mal ne übung...*g*)

  4. #4
    Registriert seit
    28.11.2005
    Beiträge
    2.759
    Moin ..

    Ein kleiner I2C SRAM würde deinen Speicher entlasten ..
    Aber da wir über einen DME-Text reden, sind 512 Byte mehr als ausreichend ..

    Oh, kommt drauf an, was BASCOM daraus macht, Assembler ist speichersparender,
    aber schwieriger ;)

    Nutzt du dann den kompletten ANSI-Satz zur Druckersteuerung ?

    Gruss,
    Tim
    --
    In a world without walls and fences, who needs Windows and Gates ??

    Meine private Webseite: http://www.db1jat.org

  5. #5
    Registriert seit
    21.12.2002
    Beiträge
    3.127
    Zitat Zitat von Shinzon Beitrag anzeigen
    Moin ..

    Ein kleiner I2C SRAM würde deinen Speicher entlasten ..
    Das kommt am Ende teurer, als ein AVR mit größerem RAM. Von der Komplexität der Ansteuerung mal ganz abgesehen. Wie gesagt, der ATMega8 kostet 1,70€. Peanuts.

    Aber da wir über einen DME-Text reden, sind 512 Byte mehr als ausreichend ..
    Mit RIC und Leerzeichen sind es knapp 100 Byte. Das muß, je nach Algorithmus, 2 mal im Speicher gehalten werden, dazu noch ein paar andere Variablen und es wird mit 256 Byte schon knapp.

    Oh, kommt drauf an, was BASCOM daraus macht, Assembler ist speichersparender,
    aber schwieriger ;)
    Das Programm spielt sich im Flash ab. Derzeit bin ich bei ~2kB.
    Das RAM wird rein über den Programmablauf belegt. EEPROM gäbe es zur Not ja auch noch.

    Nutzt du dann den kompletten ANSI-Satz zur Druckersteuerung ?
    Das verstehe ich nicht ganz.

    Das Programm wartet auf ein Zeichen im Buffer, "startet" dann, liest noch ein Zeichen, das verworfen wird (der Advisor beginnt mit CR + LF) und addiert dann die gelesenen Zeichen zu einem String, bis ein '/' gelesen wird. Das ist das Trennzeichen das der ELR zwischen die Datenfelder setzt. Dieser erste String beinhaltet das Einsatzstichwort. Das wird auf die Anzahl der Zeichen hin überprüft und mit einer Programmroutine ein String erstellt, der mit einem '*' beginnt, das Alarmstichwort zentriert und mit einem '*' endet, das so gesetzt wird, daß der Textrahmen perfekt aussieht.

    Dann werden alle weiteren Zeichen über "Input" als String eingelesen. Zwischen dem Alarmtext und dem Zeitstempel des Advisor kommen wieder CR + LF, die das "Input" abschließen. Das LF wird mit "Waitkey" gelesen und verworfen und dann der String aus Uhrzeit und Datum eingelesen.
    Die Strings werden dann formatiert, die Einsatznummer wird gesucht und herausgeschnitten und dann wird das Ganze in neuen, druckfertigen Strings abgelegt.

    Das Programm initialisiert dann den Drucker (und zwar komplett), da seit der letzten Alarmierung mehrere Tage vergangen sein können.
    Und dann wird gedruckt. Zwei Ausdrucke, in der Fußzeile durchnummeriert.
    Anschließend bekommt der Drucker noch einen Softwarereset und das Programm springt wieder in die Startposition.

    Das Alarmstichwort wird nach dem Einlesen auf "P-Probe" überprüft. Wenn positiv, wird eine separate Subroutine angesprungen, in der eine Testseite ausgedruckt wird.

    Kniffelaufgabe ist jetzt der automatische Wortumbruch. Man muß, von vorne beginnend, alle Leerzeichen und '/' suchen, entscheiden, wo man schneiden muß, abschneiden, String erzeugen und im Rest wieder nach Schneidepunkten suchen, schneiden, String erzeugen etc., bis der Text auf 3-5 Zeilen aufgeteilt ist, ohne am Zeilenende eine Worttrennung zu haben.
    Aber das klingt am Ende aufwendiger als es ist, BASCOM ist wirklich genial und nimmt einem viel Kniffelarbeit ab.


    MfG

    Frank
    Geändert von F64098 (30.11.2007 um 19:33 Uhr)

  6. #6
    Registriert seit
    21.12.2002
    Beiträge
    3.127
    Zitat Zitat von bastelheini Beitrag anzeigen
    das waren also deine basteleien für die feuerwehr von denen du mal sprachst;)
    Genau!! ;-)

    mich würden trotzdem mal die platine bzw der testaufbau bzw das layout interessieren (nur vom groben aufbau...nich für den nachbau;)
    Der Prototyp läuft auf Lochraster. Für den Anschluß des Advisor und des Druckers verwende ich farbige Flachbandkabel an einreihigen Steckern. In der "Serienversion" will ich die 2-reihigen zum Anpressen verwenden.

    Das Layout ist weit fortgeschritten, ich kämpfe aber derzeit mit der Entwirrung der ankommenden Leitungen von der parallelen Schnittstelle zum Interfacebaustein 74HC244 (für den Programmieradapter des AVR). Ich dachte, ich bekomme es ohne Brücken hin, aber das wird nichts. Wenn ich fertig bin, kann ich es gerne online stellen.

    soviele einsätze haben wir nun wirklich nich.....der würde in 7 jahren vellei 20 mal drucken....davon 15 mal ne übung...*g*)
    Ich kann Dir versichern, daß eure Alarmierungen zur Zeit eh keinen Text enthalten ;-)


    MfG

    Frank

  7. #7
    Registriert seit
    08.06.2007
    Beiträge
    709
    jop...das weiß ich ausnahmsweise;) würde ja auch wenig sinn machen....da bei uns keiner einen textmelder hat (bzw eine sprachmelder der beliebige texte sprechen kann)

    aber wenn man sowas vorhätte würde es sicher kein problem darstellen so etwas durch liebes nachfragen bei der leitstelle zu klären....die technik wäre ja da........aber über den sinn lässt sich streiten;)

  8. #8
    Registriert seit
    28.11.2005
    Beiträge
    2.759
    Moin..

    Frank: Drahtbrücken? .. brauchst du nicht noch "Blockwiderstände" wegen EMV? (die ändern nix
    an der Schaltungsfunktion, aber sehen besser als Drahtbrücken aus ^^
    --
    In a world without walls and fences, who needs Windows and Gates ??

    Meine private Webseite: http://www.db1jat.org

  9. #9
    Registriert seit
    21.12.2002
    Beiträge
    3.127
    Zitat Zitat von Shinzon Beitrag anzeigen
    Moin..

    Frank: Drahtbrücken? .. brauchst du nicht noch "Blockwiderstände" wegen EMV? (die ändern nix
    an der Schaltungsfunktion, aber sehen besser als Drahtbrücken aus ^^
    Irgendso wird's wohl werden. Ich kann das Flachkabel drehen und wenden wie ich will, ohne "Fitz" im Layout geht es sich nicht aus.
    Ich könnte auch mit den Leiterbahnen zwischen den Lözaugen der ICs durch, aber das möchte ich dem Fertiger ersparen.
    Und Widerstände <100 Ohm habe ich noch haufenweise rumliegen ;-)

    MfG

    Frank

  10. #10
    Registriert seit
    21.12.2002
    Beiträge
    3.127
    Zitat Zitat von bastelheini Beitrag anzeigen
    die technik wäre ja da........aber über den sinn lässt sich streiten;)
    Es IST sinnvoll, da gerade bei hohem Einsatzaufkommen o.ä. nicht noch Banalitäten am Funk ausgetauscht werden müssen. Der Disponent hat schon alle Angaben brav in seine Maske gehackt, warum also das Ganze nochmal am Funk vorplappern, wenn man es auf dem DME/dem Alarmausdruck nachlesen kann/könnte

    Einen Ausdruck halte ich auch für sinnvoller als ein Großisplay, da man den Ausdruck mitnehmen und ggf. unterwegs nochmal draufschauen kann.

    MfG

    Frank

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •