Ein Register ADCON1 oder ANSEL gibt es nicht.
Die Taster funktionieren sicher.
Wenn ich eines der mitgelieferten Demo programme draufbrenne geht alles was gehen soll.
schreib mal folgendes in die Initialisierung:
Damit ist mal sicher PortA auf die I/O-Funktion eingestellt.Code:movlw B'00000000' ;PORTA: I/O-Pins movwf ANSEL
Zudem sollteste mal versuchen, den Taster von Hand zu "simulieren" indem du einfach einen Drat von PORTA,0 an 5V hälts oder nicht. Damit kannst du mal testen, ob das Problem ev. am Taster-Aufbau liegt oder nicht.
greez
Anything that can go wrong, will go wrong. Kabel sind entweder zu lang oder zu kurz...
Ein Register ADCON1 oder ANSEL gibt es nicht.
Die Taster funktionieren sicher.
Wenn ich eines der mitgelieferten Demo programme draufbrenne geht alles was gehen soll.
Jau, aber ein schneller Blick in den Datenblatt verrät:
Es hat etwas, das sich einem "Comparator Module" nennt und den PortA "besetzt". Schreib mal in deine Initialisierung diesen Code hinein (entnommen aus dem Datenblatt von der Seite 29:
Damit "kappst" du die analogen Eingänge der beiden Comparatoren von den Eingängen.Code:banksel CMCON movlw 0x07 movwf CMCON banksel TRISA
MfG
Mobius
Stimmt, der PIC16F627 hat zwar Analog-Eingänge, jedoch für einen Compare, und nicht für AD-Wandlung. Nach dem Begriff 'Analog' fiel mir sofort die Stolperfalle mit dem ADCON1 ein und ich hatte nicht weiter gelesen.
Irren ist menschlich, sagte sich der Igel und kletterte von der Bürste.
MfG Karl-Heinz
HobbyElektronik hier klicken ....
Irren ist menschlich, sagte sich der Igel und kletterte von der Bürste.
sehr bitter, aber der Igel ist halt kein Mensch, und darum kann er auch nicht menschlich Irren. ^^
Anything that can go wrong, will go wrong. Kabel sind entweder zu lang oder zu kurz...
Da ich jetzt nach Tagen endlich mal wieder dazugekommen bin weiter zu experimentieren stelle ich fest: Es waren tatsächlich eingeschaltete Comparatoren auf den Eingängen. Danke für die unkomplizierte Hilfe
hallo, eigentlich geht es um die Statusabfrage für ein Display. Aber da ich generell probleme mit der Abfrage von signalen habe hier mein Problem:
ein ganz einfaches programm, PIC18F4685 :
aber an den entsprechenden Pins des PORTC liegen nicht die Signale an, die ich an PortD anlege. Was mache ich falsch?Code:Init: bsf RCON, IPEN bsf INTCON, GIEH bsf INTCON, GIEL movlw 0x70 ; maximale interne Frequenz 8MHz setzen movwf OSCCON movlw 0xFF movwf TRISD ; PortD als Eingang definieren clrf TRISC ; PortC als Ausgang definieren return Main: ; *** main code goes here *** ORG 0x0100 rcall Init ;Initialisieren Main_: movf PORTD,w ; get status, statt dem w geht auch 0 nop nop nop nop movwf LATC goto Main_ return
Lesezeichen