- Labornetzteil AliExpress         
Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 17 von 17

Thema: Diverse Problemchen

  1. #11
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.12.2006
    Ort
    Eberbach
    Beiträge
    199
    Anzeige

    Praxistest und DIY Projekte
    Hallo,
    Zitat Zitat von stochri
    Hallo Herman,

    ohne jetzt genauer nachschauen zu wollen meine ich mich grob zu erinnern, dass es problematisch sein kann, den AD-Wandler zu benutzen, wenn die Encoder-Interrupts laufen. Beisst sich die Konfiguration des Wandlers bei autoencode mit der Konfiguration der Batterie()-Funktion?

    Gruss,
    stochri
    um die Mißverständnisse von oben aufzulösen, autoencode ist auf false.

    Das folgende minimale Codestück zeigt das komische Verhalten (Werte <255) -- und wie gesagt, eben erst seit kurzem -- vorher kamen Werte über 800 und bei vollen Batterien über 900 raus:
    Code:
    #include <asuro.h>
    
    int main(void)
    {
      Init(); // setzt "autoencode = FALSE;"
    
      SerPrint("\r\nBatterie="); 
      PrintInt(Batterie()); 
      SerPrint("\r\n"); 
    
      while (1) ;
    
      return 0;
    }
    Vielleicht habe ich neben dem Widerstand R21 noch irgendein anderes Bauteil in eine mißliche Lage gedrückt. Welche Bauteile (außer dem AtMega) haben denn überhaupt mit der Funktion Batterie() zu tun?
    Gruß, Hermann.
    myIrAsuro.Bild hier  

  2. #12
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    12.06.2005
    Ort
    Südwestdeutschland
    Beiträge
    1.147
    Blog-Einträge
    3
    Falls es an der Hardware liegen sollte, ist es am einfachsten, mit dem Multimeter die Spannung am Eingang nachzumessen.

    Gruss,
    stochri

  3. #13
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.12.2006
    Ort
    Eberbach
    Beiträge
    199
    Hallo,
    Zitat Zitat von stochri
    Falls es an der Hardware liegen sollte, ist es am einfachsten, mit dem Multimeter die Spannung am Eingang nachzumessen.
    habe gerade mal gemessen.
    Wo die Batterien am Board festgelötet sind: 5.93V
    Zwischen den beiden Pins des Schalters, die ON entsprechen: 5.50V
    Anzeige des kleinen Programms: Batterie=26

    Im eingeschalteten Zustand messe ich 0.72V an der Diode neben dem Einschalter.

    Wo soll ich denn jetzt messen -- was meinst du mit Eingang?
    Sind das bestimmte Pins am AtMega?
    Gruß, Hermann.
    myIrAsuro.Bild hier  

  4. #14
    Moderator Robotik Einstein Avatar von damaltor
    Registriert seit
    28.09.2006
    Ort
    Milda
    Alter
    38
    Beiträge
    4.064
    Eigentlich kann dieses Problem nur softwareseitig sein. wenn der asuro hardwareseitig zu gering messen würde, würde er nur blinken und VLVLVL senden.
    probiere doch mal die ältere asuro lib von sourceforge.
    Read... or die.
    ff.mud.de:7600
    Bild hier  

  5. #15
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    12.06.2005
    Ort
    Südwestdeutschland
    Beiträge
    1.147
    Blog-Einträge
    3
    Gefühlsmässig würde ich auch auf Software tippen, aber messen kann ja auch mal nicht schaden:

    Die Batteriespannung wird mit dem PIN28 des Atmega8 gemessen, dort muss die Spannung entsprechend der Spannungsteilergleichung Upin28=Vplus*10k/(10K+12K) betragen, also geschätzt ca. 2,3 V. Die Referenzspannung an PIN20 sollte man vorsichtshalber auch gleich mitmessen.

    Was die Softwareseite angeht, meine Vermutung: Irgendwas stellt Dir den ADC vom 10 auf den 8Bit Modus um, deshalb erhältst Du bei Batterie() nur noch 1/4 des Wertes.

    Gruss,
    stochri

  6. #16
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    18.12.2006
    Ort
    Eberbach
    Beiträge
    199
    Hallo, und Danke für die Tips!

    Zitat Zitat von stochri
    ... Die Batteriespannung wird mit dem PIN28 des Atmega8 gemessen, dort muss die Spannung entsprechend der Spannungsteilergleichung Upin28=Vplus*10k/(10K+12K) betragen, also geschätzt ca. 2,3 V. Die Referenzspannung an PIN20 sollte man vorsichtshalber auch gleich mitmessen.
    Ich habe folgende Werte gemessen (4xAA-Akku mit zusammen 5,37V, Jumper gesteckt):
    Pin20: 5,21V
    Pin28: 2,35V

    Zitat Zitat von damaltor
    ... probiere doch mal die ältere asuro lib von sourceforge. ...
    Hab jetzt auch mal mit der Lib v261 getestet, mit dem folgenden Code (da SerPrint() erst ab Lib v270 verfügbar ist):
    Code:
    #include "asuro.h"
    
    int main(void)
    {
      Init(); // setzt "autoencode = FALSE;" 
    
      SerWrite("\r\nBatterie=",11);
      PrintInt(Batterie()); 
      SerWrite("\r\n",2);
    
      while (1) ; 
    
      return 0; 
    }
    Und nun:
    Es werden wieder Werte um 930 angzeigt

    Aber:
    Jetzt funktioniert es auch wieder mit der Lib v270 ...
    Gruß, Hermann.
    myIrAsuro.Bild hier  

  7. #17
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    12.06.2005
    Ort
    Südwestdeutschland
    Beiträge
    1.147
    Blog-Einträge
    3
    Tja, dann würde ich auf Wackelkontakt tippen. Lass doch mal die Werte vom ASURO zum PC übertragen und drück ein wenig an den Bauteiilen rum, vielleicht stellt sich der Fehler noch mal ein ...

Seite 2 von 2 ErsteErste 12

Berechtigungen

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

LiFePO4 Speicher Test