- LiFePO4 Speicher Test         
Ergebnis 1 bis 2 von 2

Thema: Frage zu C-Code

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    13.11.2007
    Beiträge
    88

    Frage zu C-Code

    Anzeige

    LiFePo4 Akku selber bauen - Video
    Hi
    ich habe mir mal einen anderen COntroller zugelegt,nämlich den PIC12F675. Programmieren klappt mitlerweile nachdem ich datenblätter geweltzt habe und nun wollte ich mal eine neuerungenschaft testen nämlich den A/D Wandler. Nun funktioniert dieser aber nicht.

    Das Poti sitzt an GP3 und alle anderen Pins bis auf VDD und VSS sind mit LEDs verbunden. Programmieren geht wunderbar aber wenn ich ihn so einschalte passiert nichts. Wenn ich allerdings nur das TRISIO und GPIO registert im hauptprogramm beschreibe,compilieren und brenne macht er was er soll. kann mir vielleicht jemand nen tipp geben was ich falsch gemacht habe? hier dazu der Quellcode:

    Code:
    //Testprog für den PIC12F675 
    
    
    
    
    
    
    #include <C:\Programme\bknd\CC5X\12F675.h>    // Prozessor-Typ definieren
    
    #pragma config |= 0b.0000.0000.0100
    
    
    
    void main(void)        // Start des Hauptprogramms
    {
    
    TRISIO = 0b.0000.1000;
    ADCON0 = 0b.1000.1101;
    ANSEL  = 0b.0001.1000;
    
    start:
    
    //GO=1;
    
    if(ADRESH>256)
    {
    GPIO = 0b.0011.0111;
    }
    else
    {
    GPIO = 0b.0000.0000;
    }
    
    
    goto start;
    
    
    }

    Hoffe das mir einer helfen kann
    mit freundlichen Grüßen
    Marisu

  2. #2
    Benutzer Stammmitglied
    Registriert seit
    04.01.2007
    Ort
    Lübeck
    Beiträge
    52
    Hallo Marisu,

    erstmal kann ich dir zu einem klasse Controller gratulieren Ich eiß nicht mehr wie viele 12F675 ich bereits verbaut hab.

    Erstmal kann ich dazu nur sagen, das der Port GP3 kein Analogeingang ist. Dieser kann nur als Digitaleingang verwendet werden. Nach deiner Programm möchtest du den Kanal AN3 verwenden, der am Pin GP4 sitzt.

    Deine Konfiguration im Register ADCON0 scheint gut zu sein.
    In der Hauptschleife musst du jedoch das Bit 1 im Register ADCON0 setzen und arten, bis es durch das Programm zurück gesetzt wird.
    Beim setzen auf 1 startest du den DD-Wandler und wenn er sich fertig ist setzt er das Bit selber auf 0.

    Leider kenn ich mich nicht so mit C für PIC's aus, tue mich also schwer ein Programmbeispiel zu geben.

    Hoffe das hilft dir.

    Gruß Rico

Berechtigungen

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

MultiPlus Wechselrichter Insel und Nulleinspeisung Conrad