-
Hi,
heute kam die Lieferung an.
Einen neuen SAA1064 eingesteckt nichts geht :-s
Um mal zu vollständig zu zeigen was momentan an Hardware und was an Software nicht klappt.
Hier der Schaltplan zur Platine mit dem SAA:
Bild hier
Der Mega16 sitzt auf einem Steckbrett mit Spannungsregler, externem Quarz und einer Led zum Test ob das Programm im Controller überhaupt anläuft.
Hier der Bascom Code mit dem ich es versucht habe:
Code:
$regfile = "m16def.dat"
$crystal = 16000000
$baud = 9600
Config Scl = Portc.0
Config Sda = Portc.1
Config Porta.1 = Output
Waitms 100
Porta.1 = 1
I2cinit
I2cstart
I2cwbyte &H70
I2cwbyte 0
I2cwbyte &B01111110
I2cstop
Die Led leuchtet (Porta.1 = 1) Programm im Controller läuft also.
Hat jemand eine Idee woran es liegen kann das sich sonst nichts tut ?
mfg Yannic
-
Könnte es sein, daß
a) Dir die Pullup-Widerstände auf SDA und SCL fehlen? Größenordnung 10kOhm. 4k7 geht auch. Im Schaltplan ist nixhts zu sehen und die internen Pullups der AVRs werden im I²C-Modus gesperrt! Sind eh zu hochohmig dafür.
b) die I²C-Frequenz zu hoch ist? Maximal 400kHz, normalerweise. Was kann der SAA1064? Wo wird die im Bascom eingestellt? Reicht die Definition $crystal = ...?
c) die Definition von Sda und Scl Tipfehler aufweist?
-
Hi,
Danke für die Hilfe.
zu a) Pullups hab ich keine sind die nötig ?
zu b) Glaube nicht das es daran liegt
zu c) Der Code steht oben wenn da keine Tippfehler drin sind dann nicht. (Ich konnte keinen Tippfehler finden)
mfg Yannic
-
Hi,
es lag an den fehlenden Pullups. Hatte vorher noch nicht mit i2c gearbeitet ](*,)
Jetzt läuft alles :)
Danke für die Hilfe.
mfg Yannic