Hallo, wenn ich mit dem Oszilloskop am SCK gemessen habe kommt kein vernünftiges Signal bei raus. ICh arbeite mit dem PIC16F886 und einem internen Oszillator. ;Interne Oszillator Einstellung (4MHz) BANKSEL OSCCON movlw B'01100101' movwf OSCCON ;Init BANKSEL TRISA movlw B'00100000' movwf TRISA movlw B'11000000' ;RB6 und RB7 = 1 zum Programmieren movwf TRISB movlw B'00010000' movwf TRISC movlw B'00000000' movwf TRISE BANKSEL PORTA movlw B'10100111' ;Wir haben 5 I/O Expander, deren CS auf Low gelegt werden muss damit diese Daten vom PIC emfangen werden movwf PORTA BANKSEL SSPSTAT movlw B'01000000' movwf SSPSTAT BANKSEL SSPCON movlw B'00110000' movwf SSPCON BANKSEL OPTION_REG movlw B'11010100' movwf OPTION_REG goto Senden Senden BANKSEL PORTA bcf PORTA,0 movlw B'10000010' movwf SSPBUF loop btfss SSPBUF,0 goto loop call Verzögerung_1ms END ; directive 'end of program'
Naja, ich wuerd die Verzoegerung und senden von zB 0x55 in einen Loop rein tun... sodann ein byte auch gesendet werden kann.
Bist du dir sicher das diese Bedingung: .... loop btfss SSPBUF,0 goto loop .... je erfüllt wird?? Normalerweise fragt man das BF in SSPSTAT ab ob Transmitt beendet ist (und damit auch Receive).
Ja das stimmt, habe das schonmal abgeändert. Aber ich verstehe nicht warum an SCK kein Rechtecksignal rauskommt, habe schon mehere Sachen ausprobiert. Findet zufällig noch jemand einen anderen Fehler?
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.