Pages: [1]   Go Down
Author Topic: devo fare un programma copy emprom  (Read 962 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Faraday Member
**
Karma: 31
Posts: 2908
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Devo scrivere un programmino per arduino 2009. La funzione che deve svolgere è quella di leggere il contenuto di una eeprom 3 wire e scriverlo in un altra eeprom 3 wire. Ho a disposizione 2 eeprom 3 wire 93c86 per sviluppare il programma, ma poi il programma deve lavorare con il 93c46 che ha la dimensione della memoria dimezzata rispetto al 93c86.

Bene, mi scoccia, sono stanco ed ho sonno, se ci fosse già qualcosa da mettere sul 328 sarebbe un gran vantaggio. Purtroppo in giro non ho trovato nulla, anche sul playground non c'è nulla. Quindi avete link, codice ecc.  (o volete scrivermelo voi smiley-cool)

Ciao.
Logged

AvrDudeQui front end per avrdude https://gitorious.org/avrdudequi/pages/Home

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 271
Posts: 21938
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Cos'é un EMPROM?
Ciao Uwe
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 335
Posts: 23123
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

 smiley-yell smiley-yell

@Mauro:
non ho trovato nulla neanch'io. mi sa che devi scriverti il protocollo.
Logged


Marche
Offline Offline
Edison Member
*
Karma: 34
Posts: 2276
azioni semplici per risultati complessi
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Cos'é un EMPROM?
Ciao Uwe

Uwe, sei consapevole che con questo tuo intervento ci autorizzi a sfotterti ogni volta che sbagli a scrivere una lettera?  smiley-wink
Logged

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 271
Posts: 21938
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

No, non autorizzo nessuno.  smiley-cool
Ciao Uwe
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 335
Posts: 23123
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Una EMPROM è una ROM che serve a memorizzare l'EMPatia....  smiley-yell smiley-yell
Logged


Rome (Italy)
Offline Offline
Tesla Member
***
Karma: 138
Posts: 9870
"Il Vero Programmatore ha imparato il C sul K&R, qualunque altro testo è inutile e deviante."
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Una EMPROM è una ROM che serve a memorizzare l'EMPatia....  smiley-yell smiley-yell

Una EMProm è una rom non sensibile agli impulsi EMP, ottima in caso di attacco nucleare  smiley-mr-green
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 335
Posts: 23123
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

smiley-yell smiley-yell
Logged


0
Offline Offline
Faraday Member
**
Karma: 31
Posts: 2908
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

In teoria oggi non ho nulla da fare se non questo programmino, spero di avere almeno la mattinata senza rotture di p..e.

Dunque una EMPROM è una memoria a cui e connesso un circuito decisionale indeciso. smiley-roll
Avete presente quando alle medie durante una interrogazione tra una parola e l'altra si inserisce EMmmmm. Questo accade quando il bus è impegnato dal transito informazioni scaturite a seguito di evento (sentimento), informazioni tipo sono, bastardo proprio oggi mi devi interrogare, ma ti faccio vedere io sti svito i bulloni delle ruote, ecc.  smiley-eek

Leo, ti prego cura per me una pagina su wikipedia sull'argomento. smiley-razz

Fine cazzeggio.

Che poi ho riletto 3 volte il post alla ricerca dell'errore, che invece si trova nel titolo.

Bene, come faccio a serializzare i bit di una variabile che contiene start bit, opcode e indirizzo.
Posso leggere sempre lo stato del bit0 e usare lo shitf per scorrere tutti i bit fino alla fine, oppure?

Ciao.


Logged

AvrDudeQui front end per avrdude https://gitorious.org/avrdudequi/pages/Home

BZ (I)
Offline Offline
Brattain Member
*****
Karma: 271
Posts: 21938
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1290974281
http://mcu.sunplusmcu.com/soft/65_en_Application_note/AN_SPMC65_O0323_en_V1.2.pdf spiega un po di cose

Ciao Uwe
Logged

0
Offline Offline
Faraday Member
**
Karma: 31
Posts: 2908
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@uwe
Ok mi sono documentato, grazie a buon rendere. smiley-wink

Di queste EEprom seriali c'è ne per qualunque esigenza, della serie 93c i seguenti sono quelli di cui ho letto il datasheet:

93c46                                         fonte Atmel
93c76/86                                    fonte microchip
93c06/46                                    fonte microchip anno 1995, non ha il pin ORG

Bene 1 a 0 per microchip a causa del datasheet molto dettagliato.

Si tratta di EEprom con protocollo microwire 3/4 fili, 3 o 4  perchè DI (data input) e DO (data output) sono connessi insieme, grazie al fatto che DO viene posto ad alta impedenza dal protollo e in open collector (credo) quando serve. Lo schematico consigliato nel documuneto al secondo link di uwe richiede 4 fili e vede i pin DI e DO connessi con una pull-up da 10k e gli altri pin direttamente connessi al microcontroller.

Un pin denominato ORG permette di selezionare l'organizzazione 8 o 16 bit. Se ORG è connesso a VCC l'organizzazione interna è a 16bit, se connesso a GND l'organizzazione è a 8bit.

Su pin DI si inviano i dati serialmente presi sul fronte di salita del clock applicato al pin CK (clock). All'accensione la EEprom si trova in modo
Erase/Write Disable (EWDS), quindi non è possibile scrivere o cancellare ma è possibile leggere da subito.

La lunghezza del frame dipende dalla dimensione della memoria e dalla organizzazione 8/16bit.
Il frame seriale è composto da:
uno start bit posto sul bit più significativo.
2 bit per il command opcode, tramite il quale possiamo scegliere se scrivere, leggere o cancellare.
6|7|9|10 o 11bit per l'indirizzo di memoria, più grande è lo spazio di memoria maggiore è il numero di bit necessario per l'indirizzo.
8|16 bit per il dato da leggere o scrivere.

Quindi il numero di cicli varia, partendo da 18 del 93c46 in modo 8bit, per finire a 29 per il 93c86 in modo 16bit.

....continua

Ciao

                                       


Logged

AvrDudeQui front end per avrdude https://gitorious.org/avrdudequi/pages/Home

Pages: [1]   Go Up
Jump to: