PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SPI und IIC in Bascom Software oder Hardware?



dombatec
06.01.2006, 08:57
Hallo zusammen,

bisher war ich nur als stiller Leser hier im Forum tätig.
Jetzt habe ich allerdings auch mal ein zwei Fragen.

Ich bau mir gerade ne AQ-Steuerung bei der ein Mega32 zum Einsatz kommt.
Per IIC soll eine PCF8583 rtc angesprochen werden. SPI soll später für eine MMC/SD-Karte verwendet werden.

Nutzt Bascom eigentlich den Hardware SPI und IIC des Mega32 oder sind das Softwarelösungen?
Also kann ich SPI und IIC an beliebigen Pins konfigurieren oder muss ich hier die "Hardware" Pins des Mega32 (IIC ist PC0+PC1, SPI ist PB4-PB7) verwenden?

Vielen Dank schonmal.


Dominic

x-ryder
06.01.2006, 10:01
du kannst beides machen, beim config spi steht sogar noch drin, ob man hard oder softmodus verwenden will, beim i²c machter das glaub ich sogar selbst, du kannst mal nachschaun in den ganzen config ... da steht auch was zu i²c und spi

dombatec
06.01.2006, 10:14
Habe mal etwas in dem Helpfile von Bascom gestöbert.
SPI kann man tatsächlich auswählen ob Software oder Hardware benutzt werden soll.
Geht über Config SPI=soft/hard.....

Zu IIC steht im Helpfile das Defaultmäßig Software IIC verwendet wird.
Zum verwenden von Hardware IIC muss die Lib "I2C_TWI.LBX" über $lib "I2C_TWI.LBX" eingebunden werden.

x-ryder
06.01.2006, 10:52
ne, i2c_twi iss ne käuflich zu erwerbende lib, die einen i2c-slave emulieren kann, aber um hari2c zu verwenden, muss man glaub ich einfach nur die softpins auf die hardpins legen per config, dann verwendet er glaub ich die hardware

linux_80
06.01.2006, 12:31
@x-ryder,
das stimmt schon so, wie dombatec schreibt, die lib für den Master ist schon dabei, sogar in der Demo von Bascom, nur die Lib für den Slave muss man bezahlen !

x-ryder
06.01.2006, 16:07
jaja, aber wenn du das ganze aufmerksam gelesen hättest, wüsstest du, das es gar nicht um die frage master/slave ging, sondern um die frage hardware/software-ports

linux_80
06.01.2006, 16:33
Ja,
wenn er Hardware-I²C beim Master will, die Lib einbinden,
ansonsten die Ports an SCL und SCA zuweisen, dann isses Software,
dafür braucht man keine zu zahlende Lib.

dombatec
06.01.2006, 16:47
bezüglich IIC:
mir gings eigentlich nur darum ob ich andere Pins verwenden kann als die Hardwarepins des mega32. Ist bei meinem Projekt einfacher von der Verkabelung her.

Wenn ich den Hardware IIC verwenden will leg ich die Pins ja schon so in der Config fest und binde die Lib ein.
(mal abgesehen davon ob Bascom das dann als Hardwarelösung oder Softwarelösung anspricht, was mir dann auch wurscht wäre solange läuft)

linux_80
06.01.2006, 16:53
Wenn Du Software I2C verwenden willst, brauchts die Lib nicht, einfach nur mit Config SCA bzw. SCL die Ports festlegen wo das angeschlossen werden soll.
Beispiele sind in der Bascomhilfe zu finden.