
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
Aufgabe: Steuerprogamm für drei unabhängige Analogausgänge 1-10V Hardware: C-Control I Station 2.0 und I2C-DA4 HS (Baustein mit DA0,DA1,DA2,DA3)mit I2C-Bus-Extender(P82B715) von Andre Helbig Programm: drei Byte werden von 0-255 programmtechnisch beeinflußt und über ein Unterprogramm laufend in der 2. Zeile des integrierten LCD angezeigt. Nun sollen die drei Bytes natürlich auch dahin, wo die 1-10V entstehen - in den Baustein von Andre Helbig. Mein Wissenstand/Wissenslücken: Hardware (Anschluß und Adressierung): a) ich verbinde SDA von der Steuerung mit SDA vom Baustein, ebenso SCL mit SCL. b) ich verbinde GND von der Steuerung mit GND vom Baustein. c) ??? muß ich auch +5V von der Steuerung mit +5V vom Baustein verbinden??? d) Adresseinstellung vom Baustein mittels der drei Jumper: ist es richtig, dass hier Adresse0=BYTEPORT 3)...Adresse7=BYTEPORT 10 eingestellt werden. e) ich habe einen Baustein mit I2C-Bus-Extender, was bewirkt der zusätzliche Baustein? - evtl. die Adresserweiterung, dass hier Adresse0=BYTEPORT 11 ...Adresse7=BYTEPORT 18 ist??? Software (Adressierung und Übertragung der Bytewert in den speziellen DA-Kanal des Bausteines) f) leider habe ich bis jetzt kein brauchbares Programmbeispiel für meine Aufgabe und der von mir benutzten Hardware gefunden - alle Beispiele beziehen sich immer auf PCF8574/PCF8574A g) das LCD ist initialisiert, Ausgaben in die beiden Zeilen an beliebige Stelle sind kein Problem und fuktionieren einwandfrei, ebenso ist SDA=ON, SCL=ON programmiert. h) ich denke, dass ich im Unterprogramm "Analogwerte ausgeben" folgendermaßen vorgehen kann: #DIMMAUSGABE print"#OFF#" 'Ausschalten der Umleitung zum LCD print"#ON_IIC#" 'Einschalten Umleitung auf I2C-Bus print"#START#" 'I2C-Startbedingung senden ??? 'Bausteinadresse senden (BYTEPORT3...BYTEPORT18) ??? 'DA-Kanal-Adresse1 senden (Baustein besitzt 4 Kanäle) ??? 'Datenbyte1 senden ??? 'DA-Kanal-Adresse2 senden ??? 'Datenbyte2 senden ??? 'DA-Kanal-Adresse3 senden ??? 'Datenbyte3 senden print"#STOP#" 'I2C-Stopbedingung senden print"#OFF#" 'Ausschalten der Umleitung auf I2C-Bus print"#ON_LCD#" 'Einschalten Umleitung auf LCD return Ich denke, dass ich nicht sehr weit von der Lösung entfernt bin und würde mich freuen, wenn jemand mich über die Ziellinie bringt. Vielen Dank im Vorraus! Jörn-Michael |
| Antwort schreiben |