- LiFePO4 Speicher Test         
Ergebnis 1 bis 4 von 4

Thema: HEX Wert aus EEprom BINär umwandeln PICBASIC

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    06.06.2007
    Beiträge
    30

    HEX Wert aus EEprom BINär umwandeln PICBASIC

    Anzeige

    LiFePo4 Akku selber bauen - Video
    Hallo,
    bei meinem neuen Projekt, habe ich EEprom Werte, welche mit READ eingelesen werden.
    Diese Werte sollen in BIN umgewandelt werden, d.h. 8-stellig mit vorangehenden Nullen.
    z.B.
    @$0 $23 = 00100011
    @$1 $01 = 00000001
    Dann sollte der Ausgabestring so aussehen : 0010001100000001 usw.
    Habe vorher mit LOOKUP gearbeitet nur die Strings sind lang und Speicherfresser.
    Aus READ wird der Wert in eine Variable gespeichert, die dann auch zur Auswertung dienen soll. Der Binärwert soll dann an einem Ausgangspin gesendet werden. Hat jemand eine Idee ?
    PS: Ist eine zeitkritische Anwendung d.h. im 500µS Bereich und wenn möglich nur PICBASIC kein ASM oder C.
    vorher :
    Code:
    FOR lp = 0 TO 23 ' 24 BIT
    LOOKUP lp,[1,1,1,0,1,0,1,1,1,0,1,0,1,1,1,0,1,0,1,0,1,1,1,0],PORTB.5
    pauseus 660
    next lp
    return
    evtl. könnte es auch mit LOOKUP gehen ohne Eeprom. Mir ist nur der Weg der Variablenformatierung wichtig.
    Code:
    FOR lp = 0 TO 2
    LOOKUP lp,[$23,$01,$AE],PORTB.5 ' aber als 8-Bit binäre Ausgangsignale
    pauseus 660
    next lp
    return
    aber wie realisieren ?

    Gruß RobberSoft

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    06.06.2007
    Beiträge
    30
    Ok hat sich erledigt.
    Habe es rausbekommen (Tipp aus anderem Forum).
    Funktioniert wunderbar. Manchmal sieht man den Baum vor lauter Wälder nicht mehr ... oder war´s andersrum?

  3. #3
    Neuer Benutzer Öfters hier
    Registriert seit
    25.07.2007
    Beiträge
    16
    Ok, und wie funzt das jetz? ^^

  4. #4
    Benutzer Stammmitglied
    Registriert seit
    06.06.2007
    Beiträge
    30
    Zitat Zitat von Maxigraf
    Ok, und wie funzt das jetz? ^^
    Also das ist des Rätsels Lösung:
    Code:
    FOR lp = 0 TO 3 ' 4 Byte lesen
          LOOKUP lp,[$DE,$AD,$CA,$FE],TempB
                 FOR BitLoop = 7 to 0 step -1
                          PORTB.5 = TempB.0[BitLoop]
                          PAUSE 500
                 NEXT BitLoop
    NEXT lp
    END
    Denke daß einige was damit anfangen können.

    Gruß RobberSoft

Berechtigungen

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

LiFePO4 Speicher Test