Newsgroup: it.hobby.elettronica.digitale
Titolo: Consiglio X microprocessore da utilizzare. (lunghetta)

Sono intenzionato a costruire un oggettino per il mio acquario. L'oggettino
inizialmente misurerà unicamente temperatura e conduttività dell'acqua (e
quindi salinità) ed in seguito piano piano ph, kh... (sonde permettendo)
cioè tutti i valori che servono.
Non ho esperienza di programmazione assembler dei processori che ci sono in
giro ultimamente. Ho programmato Z80 e null'altro.
L'oggettino che costruirò dovrà fare dei calcoli (moltiplicazione e
divisione oltre a somme e sottrazioni) dovrà registrare in memoria dei
valori ogni ora (meglio ogni 30 minuti) quindi dovrò avere un orologio (o
simularlo) e possibilmente un calendario. I dati che registrerò saranno la
data con ora (riducibili a 5 byte) temperatura (1 byte) salinità (1 byte) e
poi diciamo altri 5 valori (5 byte) per stare larghi per il futuro, quindi
un record 12 byte. In un giorno almeno 24 rilevazioni quindi 288 byte al
giorno non sarebbe male mantenere l'ultimo mese (30*288=8640 byte)
Questi dati chiaramente dovranno essere visualizzati in real-time su un
display 16 caratteri 2 righe.
Con tutti i dati memorizzati chiaramente dovrò poterli inviare al PC
(tramite RS232 suppongo sia il metodo più semplice)
Ero tentato di utilizzare i processori della serie ST62E25 (o superiori) in
quanto ho ordinato e realizzato un kit di nuova elettronica per simulare
alba, tramonto, maree e qualcosina d'altro (sempre per l'acquario). Il tutto
funziona correttamente, è molto carino, ma delle funzionalità non mi
piacciono un granchè come funzionano e mi piacerebbe sostituire il
processore (st62T25) riprogrammandolo come più mi piace.
Per questo anche per la nuova "macchinetta" intendevo utilizzare quei
processori, così studiato il linguaggio macchina, preso il
programmatore..... per uno valeva anche per l'altro.
Ho letto che è possibile interfacciarsi tramite uart su rs232 (non ho capito
se con tutta la famiglia st62) ho trovato diversi schemi per interfacciarsi
a memorie esterne, ma in questo caso si "perdono" tutti o quasi gli
ingressi/uscita che se non erro sono 20.
Considerando quanto sopra esposto e il fatto che mi servono 10
ingressi/uscite per sensori, buzzer e prese, (se non erro) 5 uscite per
pilotare display e 4 per i tasti quali microprocessore mi consigliate di
utilizzare (a basso prezzo 30euro max)? Ci sono delle cose da sapere?
Spero qualcuno mi sappia aiutare
Grazie Mauro

giro ultimamente. Ho programmato Z80 e null'altro.
Hai usato un ottimo microprocessore, che viene ancora prodotto.

Non concordo sulla scelta del processore, sarà perchè ho avuto brutte
esperienze con gli ST6 e non mi piacciono proprio.
Io userei un Atmel  ATMega128, che dispone di ingressi A/D, UART,
ingresso oscillatore per RTC  e soprattutto ha un set di istruzioni
esteso e paragonabile a quello dello Z80. Io ho fatto delle macro per
usare istruzioni asm Z80 con Atmel.
Anche per la programmazione dei chip basta un semplice pod da
connettere alla parallela.
guarda qui per farti un idea
http://www.atmel.com/dyn/products/devices.asp?family_id=607
http://www.avrfreaks.net
http://www.lancos.com/prog.html
ciao
  Stefano

Concordo pienamente specialmente per i costi !!!!
Io sono passato da ST6 alla serie Atmel Mega e ancora resto stupito dalla
questo micro...
Ti da proprio soddisfazione !
ALX

 prodotto.
ma dai? giuro che non lo sospettavo nemmeno lo ho utilizzato 10 
anni fa circa... pensavo fosse un processore del piripicchio...
Grazie per tutte le info. Ne farò prezioso uso
Mauro
SB ha scritto:

-- 
Inviato da Virgilio 
http://newsgroup.virgilio.it
Filtra gli antipatici, segnala le risposte, segue i thread, e tutto da web

> Concordo pienamente specialmente per i costi !!!!
oddio... il 128 a 8mhz costa 21 euro che non sono poi pochi. Mi 
sembra in linea col st6xx
Cmq grazie per le info mi studierò i datasheet
Mauro
Alx ha scritto:



 ha scritto nel messaggio 
news:29302333.1104959321960.JavaMail.newsgroup@sc-ng-1...


spese aggiuntive.
Concordo, non ricordavo che anche il Mega16 aveva l'oscillatore 32Khz
per RTC.
Anche il greco ha dei buoni prezzi, e se invia davvero in 3 giorni è
da tener presente.
ciao
  Stefano

anni fa circa... pensavo fosse un processore del piripicchio...
E' stato il processore più prodotto del mondo (come numero di pezzi)
fino a qualche anno fa, ora non so più le classifiche.
Io ho fattodelle schede con Z80 per ricambi poco tempo fa e non c'è
stato problema di reperibilità. (il + lento in commercio era a 10Mhz)
Inoltre, se conosci lo Z80 è abbastanza semplice adeguare la 'forma
mentis' di programmazione all'Atmel. 
Nello Z80 hai un accumulatore e tre coppie di registri puntatori
A, BC, DE, HL
Negli AVR hai tre coppie di registri puntatori  X, Y, Z e puoi
utilizzare come accumulatore qualunque registro da R16 a R32.
Per l' assembler io uso lo IAR che puoi trovare free anche qui:   
http://www.nalanda.nitc.ac.in/industry/datasheets/atmel/prod203.htm
IARASM13.ZIP
Nel file  ' io.h' o 'IOM128.H'  aggiungi queste definizioni (il
compilatore è lo stesso del C)
 /* Pointer definition Z80 compatible */
#define    A           r23	/* = Temp */
#define    C           r26
#define    B           r27
#define    E           r28
#define    D           r29
#define    L           r30	//pointer pair reg.
#define    H           r31
poi fai qualche macro nel file sorgente o in un file da includere:
ldiHL	macro	add		;es.	LD	HL,TBCHS
	ldi	L,add
	ldi	H,add+1
	endm
ldiDE	macro	add		;es.	LD	DE,TBCHS
	ldi	E,add
	ldi	D,add+1
	endm
ldiBC	macro	add		;es.	LD	BC,TBCHS
	ldi	C,add
	ldi	B,add+1
	endm
ldHLInd	macro	add		;es	LD	HL,(TBCHS)
	lds	L,add
	lds	H,add+1
	endm
stHLwIND	macro	add	;es	LD	(TBCHS),HL
	sts	add,L
	sts	add+1,H
	endm
e cosi via...
e dopo puoi usare routine dello Z80, tradotte e un po modificate
es.:
;RICEZIONE DATO DA UART
	In	A,Udr		;leggi dato
	Cpi	A,0CH		;FormFeed =inizio stringa
;load 16 bits
	LdiHL	StrSt		;buffer comparazione
	LdiDE	BufBeg		;buffer all'inizio
Naturalmente l'Avr ha molte altre potenzialità con 16 accumulatori e
altri 16 quasi accumulatori, ma se ti trovi bene con lo Z80 può essere
un idea per iniziare.
ciao
  Stefano

 pensavo fosse un processore del piripicchio...
del piripicchio? I PC di una volta, prima dell'arrivo dell'MS-DOS, 
usavano il sistema operativo multitasking CP-M, che girava appunto su 
Z80. Nell'87 le due generazioni di macchine coesistevano ancora, e la 
Borland produceva il suo turbopascal sia in versione 8088 che Z80 :)
ciao
Claudio F

	ldi	B,add+1
giusta:
ldiBC	macro	add		;es.	LD	BC,TBCHS
	ldi	C,low(add)
	ldi	B,high(add)
	endm
Meno male che me ne sono accorto io  =))
ciao
  Stefano

Borland produceva il suo turbopascal sia in versione 8088 che Z80 :)
yeee!! :))) incredibile: sai mica se/dove si riesce a reperire l'
eseguibile turbopascal CP/M?? ... per caso lo hai????

Grazie a tutti per le 1000 info utili.
Mi scuso per la mia definizione dello Z80... ma visto che lo 
avevo utilizzato circa 15 anni fa pensavo fosse veramente 
passato e vecchio....
Mauro
mgaggia ha scritto:



 yeee!! :))) incredibile: sai mica se/dove si
 > riesce a reperire l'eseguibile turbopascal CP/M??
Prova a vedere se e'quello che cerchi:
http://stor.altervista.org/z80/pasz80.htm
http://stor.altervista.org/z80/pascal.htm
Purtroppo il sito di alfa sistemi da tempo non e' piu' raggiungibile.
ciao
Claudio F


di nuovo incredibile! ne esite ancora traccia.
Certo e' quello che cerco, o meglio che avrei sempre voluto possedere.
Pero' avrei preferito la versione non "PATCHATA", cacchio se e' vero
quello che scrivono, hanno tolto proprio la parte che permette ai
programmi pascal di aprire i file verso il BDOS, cioe' una di quelle
piu' interessanti, almeno dal mio punto di vista.
Poi devo ancora capire se hanno zappato via anche qualcosa verso i
terminali, o che razza di codici usano :(((. Dalla fotocopie dei
vecchi manuali che ho cerchero' di capire bene se e come si possono
cambiare le sequenze di controllo, ma mi sembra gia' che con il VT52
non funzioni, almeno non funziona nella prova veloce che ho fatto con
l' emulazione VT52 del mio simulatore dove per esempio il wordstar si
trova a suo agio.
Peccato..., il turbo pascal era comodissimo proprio per vedere dove
sono gli errori e correggerli subito al volo!.
Comunque anche se funziona a meno del 50% e' pur sempre una bella
sorpresa, dopo tanto tempo!

ciao
io tempo fa ho fatto una cosa simile alla tua, che invece che un
display 2x16 aveva un display a matrice 128x64; ed ho usato un
ST62t65 con memoria E2 seriale esterna da 512K (oggi arrivano anche
a qualche Mb...).
la limitazione degli ST6 è che non hanno una Flash a bordo e bisogna
usare uno di prova con memoria Eprom cancellabile. io avevo un emulatore
hardware, per cui non avevo questo problema.
-- 
ATT:
per rispondere (for answer)
emilio<chiocciola>
brasimone.enea.it

 hardware, per cui non avevo questo problema.
che emulatore avevi?
