Hallo allerseits!
Ich versuche im zu zeit ein ein digitales Poti(MCP41100) mittels eines p18f87j11 über SPI anzusteuern jedoch bisher erfolglos.
Hier mein Code( Compiler: CC18 ):
Code:#include <p18f87j11.h> #pragma config XINST = OFF void main (void) { TRISC = 0b00000000; TRISB = 0b00000000; TRISG = 0b00000000; SSPCON1 = 0b00110001; SSPCON2 = 0x00; SSPSTAT = 0b00000000; SSPADD = 0x00; PIR1bits.SSP1IF = 0; //Reset flag PORTBbits.RB1=1; //set port CS high SSP1BUF = 0b00010000; //send commandbits while(!PIR1bits.SSP1IF ==1); //wait for trans PIR1bits.SSP1IF = 0; //Reset flag SSP1BUF = 0b11111111; //send value while(!PIR1bits.SSP1IF ==1); //wait for trans PIR1bits.SSP1IF = 0; //Reset flag PORTBbits.RB1=0; //set port CS low //Signal-LED for Code-end while(1) { delay(); PORTGbits.RG1=1; // light on delay(); PORTGbits.RG1=0; // light off } }
Der Code läuft bis zum ende durch(bleibt nicht an den "while(!PIR1bits.SSP1IF ==1);" hängen) jedoch tut sich an den Ausgängen des Potis nichts.
Hat jemand eine Idee woran es liegen könnte?
Lesezeichen