- 3D-Druck Einstieg und Tipps         
Ergebnis 1 bis 10 von 173

Thema: Portbelegung auf ATMega für LCD1602

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    20.09.2008
    Ort
    Linz A
    Beiträge
    126
    Servus!

    Wahre Freaks sind offenbar auch zu den Weihnachtsfeiertagen im Forum unterwegs!
    Danke für deine Antwort!

    Die Genauigkeit der Spannung und des Ladestroms ist bei meinem Projekt nicht tragisch. Somit bedarf es deiner vorgeschlagenen Genauigkeitsverbesserung nicht.
    Aber danke, das kann ich beim nächsten Mal brauchen!
    Was die Division betrifft hatte ich jetzt am Morgen eine Idee: ich brauch ja nicht durch 10.000 dividieren. 100 reicht auch:
    Als Rechenkonstante dient 196 (5/255*10.000) und ist genau genug.
    Der Rest dieser Division wird ignoriert.
    Beispiel:
    ADCH ist 148. 196*148=29008/100=290. Der Rest wird wieder ignoriert.
    Ich weiß, dass ich bei dieser Zahl die letzten beiden Ziffern Nachkommastellen sind und kann somit die Anzeige entsprechend aufbereiten.
    Und die Genauigkeit ist gar nicht so schlecht (255 entspricht 5V):
    196*255=49980/100=499 (4,99 am LCD) - das ist mir derzeit genau genug.

    Übrigens, in deinem Link wird Dividend und Divisor verwechselt! Oder sehe ich das falsch?
    "Hier wird in einer Schleife gezählt, wie oft der Dividend vom Divisor abgezogen werden kann, bis ein Unterlauf auftritt."
    Der Dividend ist die linke Zahl VOR dem Divisionszeichen und der Divisor die rechte NACH dem Divisionszeichen.

    Das Beispiel funktioniert. Ich kann es lesen, verstanden hab ich es noch nicht ganz. Wird noch werden ...

    Danke nochmals und
    GUTEN RUTSCH!!

  2. #2
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.237
    Übrigens, in deinem Link wird Dividend und Divisor verwechselt! Oder sehe ich das falsch?
    "Hier wird in einer Schleife gezählt, wie oft der Dividend vom Divisor abgezogen werden kann, bis ein Unterlauf auftritt."
    Das ist aber bei großen Zahlen die langsame Variante.
    Die in dem Beispiel Vorgestellte arbeitet mit Schiebeoperationen.
    Es wird also 16 bzw. 32 x geschoben.

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    20.09.2008
    Ort
    Linz A
    Beiträge
    126
    Ich weiß nicht, welche du da meinst.
    Ich hab das erste Beispiel genommen, das die Ziffern gleich in ASCII umwandelt und einzeln ausgibt:
    ;16Bitwert (max. 9999) in einzelne (Dezimal) Ziffern zerlegen
    Das ist praktisch, weil ich damit gleich in die LCD-Routine zum Anzeigen gehen kann.
    Zudem hab ich diese Variante schon nicht ganz verstanden, geschweige denn die Schiebemethoden!
    Das ist mir derzeit noch alles "zu hoch".
    Ob langsam oder nicht. Schnell genug ist es für mich allemal, weil ich keine zeitkritischen Abläufe hab.

    Aber Dividend und Divisor sind im Text jedenfalls verwechselt.

    [edit]
    Bevor ich nun die Testschaltung aufbaue eine Frage:
    ich hab eine LCD-Testroutine für den Tiny24 geschrieben.
    Die Hex-Datei ist 3KB groß geworden. Im Datenblatt steht nur 2KB memory flash!
    Das flashen brachte aber keine Fehler!!! Sollte da nicht eine Fehlermeldung kommen??
    Hab erst nach dem flashen die Größe der Hex-Datei gesehen ...
    [endedit]
    Geändert von HeSt (27.12.2018 um 14:45 Uhr)

  4. #4
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    05.11.2007
    Beiträge
    1.076
    Hallo HeSt,
    die Hexdatei auf dem Rechner ist immer größer als der Code der in den Chip Programmiert wird,
    weil da die Daten im Hexadezimalen Format drin stehen.
    Das ist das sogennate Intel Hex Format oder Motorola Hex Format.
    Die Dateigröße auf dem Rechner spielt also keine Rolle.
    Somit wird das völlig okay sein, sonst würde bestimmt eine Fehlermeldung auftauchen.

    Siro
    Geändert von Siro (27.12.2018 um 15:48 Uhr)

  5. #5
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    20.09.2008
    Ort
    Linz A
    Beiträge
    126
    Hi Siro,
    danke für die ermutigende Antwort!
    Kann mir auch nicht vorstellen, dass keine Fehlermeldung kommen würde, wenn's nicht genug Platz hat ...

  6. #6
    Erfahrener Benutzer Robotik Einstein Avatar von wkrug
    Registriert seit
    17.08.2006
    Ort
    Dietfurt
    Beiträge
    2.237
    Hier ist das Verschiebeprinzip erklärt:
    https://www.mathetreff-online.de/wis...n-binaerzahlen

    Passiert also im Prinzip so, wie man das auch Handschriftlich machen würde.

    P.S.:
    Bei C hätte Dich das gar nicht interessiert!

  7. #7
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    20.09.2008
    Ort
    Linz A
    Beiträge
    126
    Hi wkrug,

    jaja, C ich weiß. Aber soll ich in meinen alten Tagen noch C lernen?
    Assembler kann ich "ein wenig".
    Nachdem meine Projekte eher klein sind und ich nur gelegentlich was mit µC's mache (alle 1-2 Jahre 1 kleines Projekt),
    habe ich bislang mit Assembler das Auslangen gefunden.
    Der Solartracker mit dem Mega16 ist mein erstes Projekt bei dem ich ein LCD verwende und darüber einige Parameter anzeigen und ändern können will.
    Deshalb viele Neuheiten für mich.

    Und danke für den "Mathe"-Link!
    Super erklärt! Jetzt hab ich's verstanden.

    [edit]
    Es hat mir keine Ruhe gelassen.
    Ich hab den T24 nochmals geflashed.
    Genaue Dateigröße lt. PC: 2.534 Byte
    Angegebene Größe beim Flashen mit myAVR: 888 Byte !! Deshalb auch ok bei einem Platz von 2KB.
    Das ergibt einen Unterschied von 1.646 Byte !!
    Somit zeigt der PC nahezu die 3-fache der tatsächlichen Größe an !!!
    [endedit]
    Geändert von HeSt (27.12.2018 um 17:17 Uhr)

Ähnliche Themen

  1. [ERLEDIGT] Atmega 644 & atmega8 parallel am ISP ... Reset beider atmega notwendig ..
    Von Ritchie im Forum AVR Hardwarethemen
    Antworten: 2
    Letzter Beitrag: 29.03.2013, 11:18
  2. CCPRO M128: Portbelegung
    Von Dirk im Forum Robby RP6
    Antworten: 0
    Letzter Beitrag: 22.05.2009, 22:26
  3. Portbelegung bei diesem Display [erledigt]
    Von Rob.Anfänger im Forum Elektronik
    Antworten: 1
    Letzter Beitrag: 18.11.2006, 18:12
  4. Portbelegung ATmega32
    Von Rob.Anfänger im Forum Elektronik
    Antworten: 7
    Letzter Beitrag: 15.11.2006, 19:59
  5. Antworten: 4
    Letzter Beitrag: 12.11.2006, 16:40

Berechtigungen

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

LiFePO4 Speicher Test