mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Portexpander mit Bascom - wie schwer *noob*


Autor: Mats Marcus (elektrofreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi

ich hab eig. ne ganz einfache Frage:

ich habe einen ATMega 32, welchen ich um ein paar digitale I/O und ein 
paar analoge Ein-/ oder Ausgänge erweitern möchte. Jedoch darf es vom 
Code her nicht schwer sein bzw. ich kann nicht viel zeit beim probieren 
lassen, da ich damit noch keine Ahnung habe.

Mit der Programmierung von den internen Ports habe ich kein Problem und 
es sollte auch alles klappen, aber mit einer Anbindung von weiteren ICs 
über bsp. I²C habe ich mich quellcode-technisch noch nie befasst.


Also die Frage: Kann man mir es zumuten, Portexpander und ähnliches in 
Bascom mit einem ATMega32 anzusprechen? Wie schwer ist das?

Vielen Dank für eure Hilfe :-)

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Jedoch darf es vom Code her nicht schwer sein bzw. ich kann nicht viel zeit >beim 
probieren lassen, da ich damit noch keine Ahnung habe.

Typische Bascom User Frage. Dann lass es doch einfach sein !
Oder frag im Bascom Forum. Das wirst du doch hoffentlich alleine
finden ?

Autor: Mats Marcus (elektrofreak)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
also das was ich gesehen habe, dürfte recht einfach sein..
$regfile = "m8def.dat"
$crystal = 8000000
$lib "i2c.lib"

Config Portb = Output
Config Portc = Output
Config Portd = Output
Config I2cdelay = 5                                         '100KHZ Busfrequenz?
Config Sda = Portc.4                                        ' Portc.4 ist SDA
Config Scl = Portc.5                                        'Portc.5 ist SCL
Const Slave = &B10000000                                    'Slavesadresse laut Datenblatt
I2cinit                                                     ' Initialisieren


Do

I2cstart                                                    'start
I2csend Slave , &H0B                                        'Portadresse
I2csend Slave , &B01                                        'output
I2csend Slave , 1                                           '1


I2cstop                                                     'stop


Wait 1

Loop
End

von 
http://www.roboternetz.de/phpBB2/zeigebeitrag.php?...

Ist es auch so einfach O.o oder was muss man da alles beachten?

Edit: Wie sieht das mit dem Schreiben oder dem Lesen von A/D-Wandlern 
aus?

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.