hallo, ich wollte gerade die ausgänge von meinem pic16f627 testen, portb funktioniert einwandfrei aber bei porta sind manche immer high und manche immer low. in assembler funktioniert es, kann also nicht an der hardware liegen. habe schon verschiedenes an der konfiguration herumprobiert aber find nicht raus, an was es liegt. vielleicht muss man einige ausgänge von analog auf digital umschalten? wenn ja, wie geht das? kann mir jemand helfen? C-code ist angehängt (das programm sollte led's an porta-ausgängen ungefähr im sekundentakt an und ausschalten, was mit portb auch funktioniert).
Wie sieht denn der vom Compiler generierte Code aus? Kann sein, dass bestimmte Pins für andere Funktionen belegt sind (wie schon vermutet ADC, SPI, I2C, Programmierung oder sonstwas)? Wie hast Du es in ASM gelöst?
das .asm file ist angehängt. könnte sein, dass für bestimmte pins (automatisch) andere funktionen zugewiesen werden, nur weiß ich nicht welche und wie man sie aus macht. bei anderen pics gibt es z.b. die variable ADCON1 aber nicht beim pic16f627. in assembler hat es gereicht porta auf output zu setzen: MOVLW B'00000000' ;alle RA sind ausgänge MOVWF TRISA BCF STATUS,RP0 ;Switch Back to reg. Bank 0 CLRF PORTA naja, ich werd mich wohl noch ein bisschen durchs datasheet wühlen müssen :)
ich hab es teilweise gelöst. mit setzen von CMCON=0x7 gehen zumindest manche der porta ausgänge. es hat auf jeden fall mit den comperator-eingängen zu tun.
Hallo, RA4 ist Open Drain und RA5(MCLR) ist nur Eingang. Darauf fällt man sehr leicht rein. Vor allem RA4 bildet immer mal wieder Probleme in dieser Hinsicht.
ich hab nen großen fehler gemacht und habe die interne clock benutzt und MCLR deaktiviert. dadurch lässt sich der pic jetzt (mit meinem programmiergerät k8048) nicht mehr programmieren, falls es jemanden interessiert, hier ist es gut beschrieben: http://sprut.de/electronic/pic/fallen/fallen.html#intoscmclr
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.