Hallo,

Ik zou graag met een ATmega8 de 93C46 EEPROM willen aansturen.
Nu heb ik op internet gevonden dat deze chip het microwire protocol gebruikt(di,do,clk,cs). Maar op de bascom site kan ik niet vinden hoe ik deze zou moeten gebruiken, het lijk wel of het alleen mogenlijk is met de 8051 serie.

Weet iemand hoe je deze moet aansturen met bascom?

Vossie11

Bedankt voor je reactie, alleen kom ik er toch nog niet uit met deze informatie. Ik heb nog niet gevonden hoe ik nu naar de EEPROM kan schrijven.

Waar loop je vast? De datasheet van de EEPROM vertelt je toch wat je daarvoor moet doen?

Volgens mij zit er zelfs een voorbeeld bij, microw.bas

Groeten, Bram

mirow.bas is voor bascom-8051. Daar heb ik volgens mij niets aan. Want de commando's die daar gebruikt worden werken niet in bascom-avr.

(edit: Of zou ik deze chip ook aan kunnen sturen met SPI, aangezien hij wel dezelfde aansluitingen gebruikt, andere versie's van de 93c46 zijn wel met spi aan te sturen?)

[Bericht gewijzigd door vossie11 op (39%)]

Ja, SPI moet werken, voor zover ik weet is Microwire nagenoeg gelijk aan SPI. In ieder geval familie.

Uit de Wikipediapagina over SPI:

Microwire
Microwire is essentially a predecessor of SPI. It's a strict subset: half duplex, and using SPI mode 0. (Microwire-Plus supports other SPI modes.) Microwire chips tend to need slower clock rates than newer SPI versions; perhaps 2 MHz vs 20 MHz. Some Microwire chips also support a 3-Wire mode (see below), which fits neatly with the restriction to half duplex.

http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus#Microwire

Dus volgens mij moet het met SPI lukken, aangezien alle 93C46's die ik ooit ben tegengekomen allemaal met SPI werkten.

Neen werkt niet. de header van microwire is anders. spi heeft een vaste lengte voor het addressfield. microwire niet.

een 46 gebruikt 6 bit voor addresspointer. geloof ik. spi heeft er 8.

bitbang dat gewoon. tis hoop en al 20 lijnen code om dat te maken.

de SPI ADC en digital-pot die ik geprogrammeerd heb, hebben geen adresveld. Gewoon meteen "commando" pompen. Verschillende SPI chips selecteren doe je door van de juiste chip de select lijn actief te maken.

SPI heeft een vast aantal bits. microwire niet. en daar wringt het ...

Als SPI niet voldoet dan kun je eens naar het SHIFTIN en SHIFTOUT statement kijken in Bascom.
Je kunt het aantal bits opgeven dat je wilt gebruiken dus daar zou het wel mee moeten gaan.