- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 9 von 9

Thema: Print-Befehl bei ATtiny13 überhaupt möglich??

  1. #1
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    07.01.2010
    Ort
    Deutschland
    Beiträge
    739

    Print-Befehl bei ATtiny13 überhaupt möglich??

    Anzeige

    LiFePo4 Akku selber bauen - Video
    Hallo Forum,
    ich besitze den ATtiny13V und als Programmer mysmartusb light.
    Ich programmiere in Bascom.
    Nun zu meiner Frage:
    Wie kann ich bzw kann ich überhaupt mit dem Programmer und dem Tiny13 den Print-Befehl nutzen??
    Ich würde nämlich gerne einen ADC Port auslesen und mir die Werte zurück geben lassen, damit ich weiß, wann welcher Wert erreicht wird.

    Mfg
    bnitram

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.703
    Blog-Einträge
    133
    Hallo bnitram,

    Wie kann ich bzw kann ich überhaupt mit dem Programmer und dem Tiny13 den Print-Befehl nutzen??
    Ob das mit Deinem Programmer geht, glaub ich nicht. Soweit ich das sehe kann man damit nur programmieren. Ich stand vor dem gleichen Problem und habe mir deshalb eine RS232 Verbindung zum PC geschaffen über die ich dann mit PRINT Daten ausgeben konnte. Vielleicht hilft Dir das weiter:

    https://www.roboternetz.de/community...l=1#post499518

    Wenn man aus dem Beispielprogramm nur die Sachen für UART und nur daraus die Sachen zum Senden in Richtung PC verwendet, wird es sehr klein.

    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  3. #3
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    07.01.2010
    Ort
    Deutschland
    Beiträge
    739
    Also kann ich das Vergessen ?
    Gibt es da keine Alternative wie ich das Ausgeben kann??

    Mfg
    bnitram

  4. #4
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.703
    Blog-Einträge
    133
    naja, wenn keiner weis, ob es über den mysmartusb light zur Laufzeit geht, must Du irgendein Display dranbasteln oder den PC als Display nutzen. Oder die Daten im eeprom loggen und dann später über die Bascom IDE nachschauen.

    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  5. #5
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    07.01.2010
    Ort
    Deutschland
    Beiträge
    739
    Sry da ich Frage, aber wie mach ich das mit dem eeprom?
    Kennst du eine Seite wo ich das mal nachlesen kann?

    Mfg
    bnitram

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.703
    Blog-Einträge
    133
    Hab ich selber noch nicht gemacht. Man muß aber wohl eine Variable bzw Array mit DIM xyz AS ERAM BYTE/WORD etc... einrichten. Schreibt man darein, landet es im eeprom. Da gibt es vermutlich noch einiges weiteres zu beachten. Mal in der Bascom Hilfe nachsehen... oder im Forum suchen.

    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  7. #7
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    07.01.2010
    Ort
    Deutschland
    Beiträge
    739
    Danke schonmal dafür. Ich werde mich mal informieren und wenn es funktioniert werde ich den Code hier Posten.

    Mfg
    bnitram

  8. #8
    Erfahrener Benutzer Robotik Einstein Avatar von Searcher
    Registriert seit
    07.06.2009
    Ort
    NRW
    Beiträge
    1.703
    Blog-Einträge
    133
    Hallo,

    ich möchte nochmal ein paar Überlegungen loswerden:

    Je nachdem was Du mit dem ADC messen möchtest, könnte die Logging Methode im eeprom nicht so vorteilhaft sein. Da kann man ja nur eine begrenzte Menge an Meßwerten (64 Byte beim ATtiny13) speichern. Das Byte an der Adresse 0 sollte wohl auch nicht verwendet werden, da es beim Reset des Tiny überschrieben werden könnte.

    Ist auch noch umständlich den ADC messen zu lassen, dann mit Bascom IDE nachzusehen, was denn nun im eeprom steht um dann zu erkennen, das die Werte irgenwie unplausibel sind. Das Programm muß ja dann auch dementsprechend "getrimmt" sein. Aufpassen, daß die ERAM Variable zB. nicht in einer oft durchlaufenen Schleife steht, weil der eeprom ja nur eine begrenzte Anzahl mal beschrieben werden kann. Zwar einige 10000 mal, aber wenn man nicht aufpaßt, kann das schon schnell passieren.

    Mir scheint die Nutzung des Bascom Software UART (der Tiny hat keine UART HW Unterstützung) hier die sinnvollste Lösung zu sein. Man kann dann am PC zB im Hyperterminal online die Meßwerte beobachten. An HW braucht man nur einen PIN des Tiny als TX mit zB einem MAX232 IC zu verbinden plus GND Verbindung und von dort aus zum COM Anschluß des PC zu gehen.

    Falls kein herkömmlicher COM Anschluß am PC vorhanden ist, könnte man es über ein RS232-USB Adapter versuchen. Ob es da welche gibt, die auf den MAX232 verzichten können und direkt TTL Pegel verarbeiten können und damit direkt mit mit dem µC verbunden werden können, weis ich nicht. Hab da keine Erfahrung mit. Wenn man noch einen zweiten PIN des Tiny spendiert, kann man auch noch gleich Eingaben vom PC zum µC schicken.

    Ich hab, als ich das aufgebaut habe, den Pegelwandler aus einem nicht mehr benutztem externen analogen Modem ausgelötet. Ein paar Elkos dazu, Kabel zum PC und fertig. Also falls das PRINT mit dem mysmartusb light nicht zu machen ist, wäre die SW UART auf jeden Fall meine erste Wahl.

    Hier noch ein Link, wo es auf Deutsch noch einige Anleitungen dazu gibt. Das ist zwar auf Mega8 und HW UART bezogen. Die Schaltung ist für SW UART gleich und man kann sich die PINs am Tiny mit dem open Komando auch noch aussuchen. http://halvar.at/elektronik/kleiner_bascom_avr_kurs/

    Gruß
    Searcher
    Hoffentlich liegt das Ziel auch am Weg
    ..................................................................Der Weg zu einigen meiner Konstruktionen

  9. #9
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    08.01.2006
    Beiträge
    4.555
    RDX vom PC ist intern über einen Pull UP auf 12 V kann also die reckt an TDX vom µC gelegt werden. Da RS232 inverse Logik hat muss der µC invertiert senden...

    [Zitat]
    An optional parameter ,INVERTED can be specified to use inverted RS-232.

    Open "COMD.1:9600,8,N,1,INVERTED" For Output As #1 , will use pin PORTD.1 for output with 9600 baud, 1 stop bit and with inverted RS-232.
    [/Zitat]

    Anders TDX PC -----> RDX µC da muss der nagative Anteil (-12V) von TDX PC mit einer
    Diode 1n4148 reicht (Anode an GND Kathode an TDX PC "gekappt werden" die übrig bleibenden -0,6 V kann der µC ab. Zur Strombegrenzung kommt vor RDX µC noch ein 1k8 Widerstand. Günstiger und schneller geht es kaum.

    Natürlich auch ..

    An optional parameter ,INVERTED can be specified to use inverted RS-232.

    Open "COMD.0:9600,8,N,1,INVERTED" For Input As #2 , will use pin PORTD.0 for Input with 9600 baud, 1 stop bit and with inverted RS-232.

    Wer diese "inverted" Befehl nicht hat z.B. ASM oder C muss halt jedes zu sendende Byte selber invertieren, Byte = Byte XOR hFF : Print wohin auch immer.

    Gruß Richard






    Das hat bei mir mit PIC's jahrelang ohne Probleme gelaufen.

Stichworte

Berechtigungen

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

Labornetzteil AliExpress