ATMEGA 1 MHz - attenzione !!!

Sezione dedicata al sistema di sviluppo BASCOM-AVR per i micro AVR
At90s, Attiny, Atmega e Xmega

ATMEGA 1 MHz - attenzione !!!

Postby adriano » 17 Feb 2013, 12:06

riciao a tutti , ho chiamato il 3d in questo modo perche :



ero convinto di usare il mio atmega48 a 16 MHz ...l'istruzione $cristal 16000000...e via....
invece NO , lo sto usando a 1 MHz , e me ne sono accorto quando per la prima volta li faccio fare una comunicazione rs232 ...riuscivo a comunicare solo a 600 bout rate ( E NEMMENO STABILE ( DOVEVO SCENDERE DI 10 BOUT per leggere coretto ))
. Allora mi chiedo COME MAI ??? tutto settato a 9600 :o non pretendo da subito 34200 , ma almeno 9600 :D
Bene , il problema sta nel fatto che il micro di fabbrica ha settato l'oscillatore interno ( cosa che trovo del tutto sbagliata , se mai lo vado a impostare io se non dispongo di un quarzo ) ... morale , non riesco a capire come settare il fuse bit .
Che cosa sto usando :
micro atmega48 pu 20
bascom avr (demo )
programmatore USB ASP

Ora oltre che aiutarmi a capire come si fa , vorrei sapere se sono l'unico ad aver avuto sto problema . Il bascom avr permette di settare le fuse, ma se non si sa cosa cambiare nella velocità si rischia di fare casini. Un micro è gia bloccato e non riesco più a scriverlo ( e se non ricordo male ho cambiato solo 2 parametri ( disattivato il cl di e provato diverse combinazioni per la velocità del quarzo , che nel mio caso e da 16 Mhz )

ps: ringrazio Giorgio che mi stava indicando la soluzione in pvt , Discuterne qua può essere di aiuto ad altri inesperti come me che tra le altre cose hanno problemi anche con l'inglese :lol:
Last edited by adriano on 17 Feb 2013, 18:43, edited 1 time in total.
Mai mi fu dato di vedere un animale in cordoglio di sé. Un uccelletto cadrà morto di gelo giù dal ramo senza aver provato mai pena per sé stesso.
User avatar
adriano
 
Posts: 108
Joined: 17 Feb 2013, 11:07

Re: ATMEGA 1 MHz - attenzione !!!

Postby ulisse21 » 17 Feb 2013, 16:54

ciao adriano e benvenuto.

potresti dirci quale software stai usando per programmare con l'USB-ASP ?
magari linkalo, così gli diamo una sbirciatina.

ciao
ulisse21
 
Posts: 49
Joined: 10 Nov 2012, 14:36

Re: ATMEGA 1 MHz - attenzione !!!

Postby adriano » 17 Feb 2013, 18:39

ulisse21 wrote:ciao adriano e benvenuto.

potresti dirci quale software stai usando per programmare con l'USB-ASP ?
magari linkalo, così gli diamo una sbirciatina.

ciao


Ciao Ulise ,
uso solo bascom avr , mi piace un saco e mi ci trovo molto bene , anche se ho ancora moltissimo da imparare . Quindi vado a settare in bascom programmatore "usbasp"
il programmatore lo comprato in cina per 3 euro spedizione compresa ( devo avere anche delle orrigini genovesi :lol: = link:
http://www.ebay.it/itm/1PCS-USBasp-USBI ... 3cc61e7aab

per il discorso fuse bit si può fare anche con il bascom avr , è se possibile vorrei usare bascom per impostare il clk esterno a 16 Mhz.
ps: forse per molti è una cosa "stupida" ma io sono 3 notti che non riesco a dormire perche il mio micro girra a 1 MHz :x

giusto per condividere quello che ho trovato in merito al "fuse bit " ma non ci ho capito quasi nulla = link sw per calcolare il fuse bit :
http://www.engbedded.com/fusecalc/

http://www.ladyada.net/learn/avr/fuses.html

ps: ritorno a dire che trovo stupido impostare di fabbrica un micro che usi il clk interno è dovver impazzire per riuscire ad usarlo alla frequenza del quarzo :x
ringrazio in anticcipo chi mi spiega in maniera più semplice possibile come settare il clk a 16 MHz !
Ciao Ulise , buona domenica ;)
Mai mi fu dato di vedere un animale in cordoglio di sé. Un uccelletto cadrà morto di gelo giù dal ramo senza aver provato mai pena per sé stesso.
User avatar
adriano
 
Posts: 108
Joined: 17 Feb 2013, 11:07

Re: ATMEGA 1 MHz - attenzione !!!

Postby deluca » 17 Feb 2013, 19:35

Adriano,
non è stupido che la Atmel configuri alla minima freq il chip fin dalla sua nascita.
1) non hai bisogno di elementi esterni per programmarlo.
2) a 1 Mhz consuma pochissimo. Per alcune applicazioni battery-powered è consigliabile. Considera che la freq interna RC è pari a 8Mhz che diviso 8 = 1 Mhz
3) puoi accedere alla sua programmazione anche attraverso la vecchia porta parallela dei pc, configurandola opportunamente, anche a bassissima velocità.

ora il punto è questo:
quale software stai usando per programmare usando USB-asp?
su alcuni software è veramente difficile configurare i fuse-bits .... ti dicono di settare o resettare dei bit a uno/zero senza spiegare attentamente a cosa servono.
Se usi uno di questi software devi leggere attentamente il pdf del chip, altrimenti rischi di rendere il chip inutilizzabile.

Se hai la possibilità di avere un PC con la porta parallela.... tutto si risolve in modo semplice e sicuro....
eventualmente ti spiego come fare.

PS. voglio ben sperare che hai già predisposto la presenza del cristallo da 16Mhz esterno e dei condensatori da 22pF ... giusto?

Ciao.
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)

Re: ATMEGA 1 MHz - attenzione !!!

Postby flz47655 » 17 Feb 2013, 20:41

Ho anch'io un USB-ASP (sostituito da un AVR Dragon :) ) con dei jumper sul programmatore per impostare:
- se il micro è alimentato esternamente o se deve essere alimentato dal programmatore a 5 o 3.3v
- se la programmazione deve essere lenta (se il clock è basso per esempio)
- se la programmazione deve essere del chip del programmatore

Mi ricordo che avevo le istruzioni in cinese e che avevo tribolato un pò per capirci qualcosa, il tuo modello è un pò diverso ma hai gli schematici
Hai controllato i jumper?

Usavo il programma progIsp che hai tra i download della pagina del programmatore (assieme agli schematici) ma ho anche utilizzato Bascom con successo

Mi ricordo che con la storia del jumper 3.3 o 5 volt avevo briccato diversi chip che per fortuna ho sbloccato grazie all'AVR Dragon
Ciao
flz47655
 
Posts: 639
Joined: 19 Jan 2012, 21:16

Re: ATMEGA 1 MHz - attenzione !!!

Postby adriano » 17 Feb 2013, 21:09

deluca wrote:Adriano,


PS. voglio ben sperare che hai già predisposto la presenza del cristallo da 16Mhz esterno e dei condensatori da 22pF ... giusto?

Ciao.


deluca wrote:Adriano,

PS. voglio ben sperare che hai già predisposto la presenza del cristallo da 16Mhz esterno e dei condensatori da 22pF ... giusto?

Ciao.


ciao Deluca ,

mi scuso per la fesseria che ho detto sul oscilatore interno , non ci avevo riflettuto abbastanza ( e non si finisce mai di imparare ) ... si ho diverse schede con atmega48 , una con lcd + max 232 , una con 8 led + pot 10 K x adc + max 232 , un altra con un mio bus ..ecc..ecc.. su tutti ho montato quarzo da 16 con relativi condensatori cerm . Uso l'istruzione giusta per conf. sw del micro è quarzo , diciamo che funziona quasi tutto quello che riesco a scrivere ... come già detto ero convinto di usare la feq di 16 MHz , ma quando ho comunicato in seriale andava solo a 600 bout .
Al in fuori di bascom avr non uso alcun sw . A questo punto capisco che bisogna usare "qualcosa d'altro" per impostare il fuse bit . SI cmq hai ragione , mi sa che un 48 lo già fuso , non riesco più a scriverlo .
Cosa mi consigli di usare ? esiste qualcosa di semplice da usare ( o con un tutorial in italiano ) ? se non ho capito male , una volta che vado a settare il micro per usare oscil EXT posso continuare a scrivere con il bascom avr è fare tutti gli esperimenti che voglio o bascom mi riscrive il fuse come è settato in bascom ?
Spero di non fare confusione nel spiegarmi ed abbiate pazienza ma l'inizio non è facile !
Grazie sempre per la disponibilità .

PS: LPT1 assolutamente si ...penso di aver capito ...ora accendo il saldatore e preparo il prog sulla lpt ...

flz47655 wrote:Ho anch'io un USB-ASP (sostituito da un AVR Dragon :) ) con dei jumper sul programmatore per

Mi ricordo che con la storia del jumper 3.3 o 5 volt avevo briccato diversi chip che per fortuna ho sbloccato grazie all'AVR Dragon
Ciao


ciao flz ,
veramente nel mio prog è presente sullo stampato un J2 , però inesistente , non ho mai approfondito tale jumper perche programmo con sucecco usando bascom .
La mia porta di program sulle mie schede e riporta i segnali di quel programmatore ed uso due file di chidini per 10 pin in modo da alimentare il micro dal programmatore ( tanto non ho assorbimenti sopra i 200 mA )
Per alimentare servi rc uso alimentare i servo esternamente ( il consumo e diverso che 4 led o un lcd 16*2 )
ora vado a vedere se trovo doc sul mio programmatore , il cinese mi ha spedito solo il prog + cavo piato senza nient'altro ...va be per 3 euro + sped gratis ...hahhahhahaaa
Mai mi fu dato di vedere un animale in cordoglio di sé. Un uccelletto cadrà morto di gelo giù dal ramo senza aver provato mai pena per sé stesso.
User avatar
adriano
 
Posts: 108
Joined: 17 Feb 2013, 11:07

Re: ATMEGA 1 MHz - attenzione !!!

Postby deluca » 17 Feb 2013, 21:26

Per configurare i fuse-bits puoi tranquillamente usare l'ambiente integrato Bascom.
seleziona il programmatore USBASP dalla lista.
Seleziona il tab "Lock and fuse bits", imposta il tipo di clock che vuoi usare, clikka sui pulsanti "write" corrispondenti .....fine
(attenzione !! potrebbe non essere presente la soluzione clock = 16Mhz.... eventualmente puoi scegliere l'opzione : Ext cystal oscillator clock :> 8Mhz)

quando riprogrammerai il tuo micro non sarà più necessario reimpostare i fuse bits . a meno che tu non voglia cambiare qualche altra cosa.
Poi se vuoi memorizzare ed aggiungere la config al tuo sorgente vai su "write prg", e posizionati con il cursore sul tuo sogente.
Verrà aggiunta in modo automatico una direttiva $prog con i relativi valori di fuse in esadecimale.
ma in questo modo ogni volta che riprogrammerai il chip verranno riconfigurati i fb ( non te lo consiglio).

ciao
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)

Re: ATMEGA 1 MHz - attenzione !!!

Postby adriano » 17 Feb 2013, 22:38

deluca wrote:Per configurare i fuse-bits puoi tranquillamente usare l'ambiente integrato Bascom.
seleziona il programmatore USBASP dalla lista.
Seleziona il tab "Lock and fuse bits", imposta il tipo di clock che vuoi usare, clikka sui pulsanti "write" corrispondenti .....fine
(attenzione !! potrebbe non essere presente la soluzione clock = 16Mhz.... eventualmente puoi scegliere l'opzione : Ext cystal oscillator clock :> 8Mhz)

quando riprogrammerai il tuo micro non sarà più necessario reimpostare i fuse bits . a meno che tu non voglia cambiare qualche altra cosa.
Poi se vuoi memorizzare ed aggiungere la config al tuo sorgente vai su "write prg", e posizionati con il cursore sul tuo sogente.
Verrà aggiunta in modo automatico una direttiva $prog con i relativi valori di fuse in esadecimale.
ma in questo modo ogni volta che riprogrammerai il chip verranno riconfigurati i fb ( non te lo consiglio).

ciao


ri_ciao deluca ,
ci ho perso due notti su quelle opzioni con il risultato che ho bloccato un atmega. Il fatto è che nel opzione "fusebit KLA 987" ho un sacco di opzioni tipo " 100100 ext Crystal osc " , in tantissime cambia solo il numero binario anteriore senza specificare quel numero a che freq corisponde e qualle di quelle opzioni bisogna usare !
per questo avevo fatto rif a questo , che forse e la strada giusta per capire :
http://www.engbedded.com/fusecalc/
se provi a metere atmega48 pare che il binario giusto per 16 Mhz sia "111111" , ma ora mi viene il dubio che forse cosi ho cotto la programmazione di un micro !
la mia vers bascom avr è 2.0.7.5 - gira su XP - sp3
vado a cercare anche una versione più vecchia di bascom , magari quelle opzioni nel fusebit sono spiegate meglio.
per ora mi sono limitato a seguire il tuo consiglio ma ho tolto solo il div x 8 senza toccare altre cose che non so cosa sono .... quindi se riesco a communicare con il max232 a 9600 per il momento sono già contento . Provo se funziona almeno a 8 MHz . Quindi , in sostanza il probblema è che nelle varie opzioni relative al "fusebit kla 987" (al interno di LOCK and FUSEBITS non si capisce bene cosa selezionare per lavorare con quarzo esterno da 16 MHz .
Appena mi stacco dalla scrivania provo a postare una foto delle opzioni che mi vengono fuori in bascom .
Grazie sempre per le risposte veloci e per il tempo dedicato .

NEWS DEL MATTINO :
sono riuscito a dormire 3 ore ...
Dopo aver preso spunto dalle vostre domande " che sw usi per il usb asp" ...ho fatto la cosa più logica che mi e venuta in mente questa mattina ... conoscere bene il mio programmatore ( che mi ostinavo a voler usare per forza solo con bascom avr ) .... risultato :
il mio programmatore è questo :
http://www.ebay.it/itm/USBASP-USB-AVR-P ... 2318c6b240

C'è anche il sw / extreme burner ) nella pagina di bay , forse il problema è risolvibile in maniera semplice ed è meno complicato che cercare di programmare il fusebites con il bascom . ( cmq bascom , ultima versione (demo) non è proprio chiaro sui parametri da inpostare !!!
A questo punto , forse basterebbe capire cosa settare nel fusebites di eXtreme burner avr :oops:
Ora mi viene anche un atroce dubbio ... ho appreto un 3d su una cosa banale che anche un ragazzino in primo anno di elettronica poteva risolvere o la questione del fusebites è davvero " da studiare " ????
sicuramente non siamo moltissimi in italia a fare ancora qualcosa con l'elettronica , sicuramente non sono cose semplici e non sono molte le persone disposte a condividere il loro sapere ma prima di disturbare per questa questione io avevo dedicato molto tempo per trovare la soluzione in internet.
Un ultima cosa , se ho detto qualche cavolata perdonatemi ma non è facile esere autodidatta su delle cose che di solito ci vogliono corsi o anni di studio .
Mai mi fu dato di vedere un animale in cordoglio di sé. Un uccelletto cadrà morto di gelo giù dal ramo senza aver provato mai pena per sé stesso.
User avatar
adriano
 
Posts: 108
Joined: 17 Feb 2013, 11:07

Re: ATMEGA 1 MHz - attenzione !!!

Postby adriano » 20 Feb 2013, 09:22

Buongiorno ,
ho sempre bisogno di un chiarimento , intanto a forza di fare prove sono riuscito a settare la com seriale a 57600 . Un tutorial semplice comunque fa moltissimo piacere .
Grazie .
Mai mi fu dato di vedere un animale in cordoglio di sé. Un uccelletto cadrà morto di gelo giù dal ramo senza aver provato mai pena per sé stesso.
User avatar
adriano
 
Posts: 108
Joined: 17 Feb 2013, 11:07

Re: ATMEGA 1 MHz - attenzione !!!

Postby adriano » 27 Feb 2013, 08:42

buongiorno ragazzi ,
sono riuscito ad incasinare un altro micro , sta faccenda dei fusebits non la capisco . avevo sostituito il quarzo da 16 a 11.059200 ed e peggiorato tutto. ora non funziona più niente !
Ho fatto il programmatore sulla lpt per ri programmare il micro , che sw mi consigliate ? esiste qualcosa "semplice " per riscrivere il fusebits ???
aiuto per favore !
Mai mi fu dato di vedere un animale in cordoglio di sé. Un uccelletto cadrà morto di gelo giù dal ramo senza aver provato mai pena per sé stesso.
User avatar
adriano
 
Posts: 108
Joined: 17 Feb 2013, 11:07

Re: ATMEGA 1 MHz - attenzione !!!

Postby deluca » 27 Feb 2013, 08:51

@adriano
quale schema hai seguito per realizzare il prg parallelo?

hai realizzato la mia configurazione ?
http://www.delucagiovanni.com/files/PROG%20PAR.pdf

imposta "Sample electronics programmer" da Option -> Programmer

PS.
Fai attenzione al "CLKDIV8" questa opzione divide il clock/8 e quindi deve essere disabilitata;
CKSEL fuse può essere : Ext. Full-swing Crystal (0111) o (0110), oppure Ext. Crystal 8.0-Mhz (1111)

La cosa che non devi assolutamente fare è quella di disabilitare "Ext Reset Disable" poichè questo bloccherebbe il micro e per ripristinarlo avresti bisogno di un prg HV parallelo.

Ciao
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)

Re: ATMEGA 1 MHz - attenzione !!!

Postby adriano » 27 Feb 2013, 14:40

deluca wrote:@adriano
quale schema hai seguito per realizzare il prg parallelo?

hai realizzato la mia configurazione ?
http://www.delucagiovanni.com/files/PROG%20PAR.pdf

imposta "Sample electronics programmer" da Option -> Programmer

PS.
Fai attenzione al "CLKDIV8" questa opzione divide il clock/8 e quindi deve essere disabilitata;
CKSEL fuse può essere : Ext. Full-swing Crystal (0111) o (0110), oppure Ext. Crystal 8.0-Mhz (1111)

La cosa che non devi assolutamente fare è quella di disabilitare "Ext Reset Disable" poichè questo bloccherebbe il micro e per ripristinarlo avresti bisogno di un prg HV parallelo.

Ciao


Ciao deluca ,
si il program.LPT rispeta il tuo schema con la differenza che si come uso il conettore 5+5 mi sono portato pure i 5 volt dal alimentazione pc al interno del connettore db25 ed e collegata al flat ( in prattica ho il 5+5 con vcc in modo da alimentare il micro ). Lo costruito ma non ancora usato .
Il CLKDIV8 è disabilitato ed il pin del reset me ne guardo bene di nn disabilitarlo. ( queste due cose che mi hai detto sono le uniche che avevo capito bene - altre cose non ho cambiato nulla - ma provando a scrivere il fusebits con "extreme burner " devo aver fatto dei casini )
Ma quello che non capisco in bascom avr : esempio : ( 0111 ) ...e li altri due che seguono ??? ,,,oppure Ext. Crystal 8.0-Mhz (1111) provo a mettere tutto a (111111) ??? sono 6 bit da settare .
una volta che $crystal= 11059200 e $baud=9600 se tutto giusto comunica a 9600 ? Se il clkdiv8 e disattivato il micro lavora alla frequenza piena del quarzo , giusto ???
Se compilo con i settagi fatti da me al interno del codice ( $crystal , $baud ecc,,,ecc) ... devo cambiare altre cose in "option " ?
in "option" io ho settato solo il tipo di programm(usb_asp) , il tipo di micro e basta .
Quando tutto funziona bene : posso scegliere qualsiasi velocità semplicemente cambiando ($baud al interno del codice ) …( nel limite del rag. :ex 4800 / 9600 / 19200 )?
se per esempio voglio leggere il protocollo nmea0183 di un gps ( 4800 ) cambio solo $baud , giusto ?
chiedo perche quando funzionava a 57600 non potevo fare altre velocità. ( ma in quel caso avevo il quarzo da 16000000 (dichiarato da 8000000 / probabilmente con il fusebits senza sapere cosa facevo lo program. come se avessi un quarzo da 8 Mhz )
Scusa per le mille domande :)
Mai mi fu dato di vedere un animale in cordoglio di sé. Un uccelletto cadrà morto di gelo giù dal ramo senza aver provato mai pena per sé stesso.
User avatar
adriano
 
Posts: 108
Joined: 17 Feb 2013, 11:07

Re: ATMEGA 1 MHz - attenzione !!!

Postby flz47655 » 27 Feb 2013, 14:48

Gli XMega mi sono simpatici perché non hanno questa storia dei fuse che possono bloccare il micro sbloccabile in alcuni casi solo con HV programming.

...e li altri due che seguono ???


Gli altri 2 bit non sono da mettere a caso, servono per impostare lo Start-up time, se metti 11 lo imposti a 65ms che potrebbe essere un buon valore se il quarzo è lento "a partire", trovi tutto nel datasheet ma anche in pagine web come http://www.engbedded.com/fusecalc

Se il clkdiv8 e disattivato il micro lavora alla frequenza piena del quarzo , giusto ???

Giusto se il fuse del clock è impostato sul quarzo esterno

Ciao
flz47655
 
Posts: 639
Joined: 19 Jan 2012, 21:16

Re: ATMEGA 1 MHz - attenzione !!!

Postby deluca » 27 Feb 2013, 14:58

@adriano
Un consiglio, lascia stare "extreme burner"
usa solo "Sample electronics programmer" che trovi nell'elenco dei programmatori (IDE Bascom)
setta l'indirizzo della parallel port.....

ciao
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)

Re: ATMEGA 1 MHz - attenzione !!!

Postby adriano » 27 Feb 2013, 16:15

ultime news :
su consiglio di deluca , fusebits: (0111) / consiglio di flz :" se metti 11 lo imposti a 65ms" ...quindi (011111) funziona .
io ho messo un quarzo da 11.059200 e mi do da solo la risposta che adesso sostituendo nel codice ( $baud ) ottengo tutte le velocità da 600 a 115200 )
il terminale del pc ora riceve dal micro a tutte le velocità , ora devo capire se il micro riceve da terminale pc e come lo fa , dopo sono in grado di provare il codice per accendere i led.
ora con il quarzo da 11.059 l'errore a 9600 = 0,0 % ( sono stato uno stupido ad aver usato il 16 Mhz , e che 16 Mhz ne ho qualcuno , 11.059 due o tre al massimo ) ...ora vedo di usare solo 11.059 su tutte le mie schede .
grazie mille ragazzi !!!
Mai mi fu dato di vedere un animale in cordoglio di sé. Un uccelletto cadrà morto di gelo giù dal ramo senza aver provato mai pena per sé stesso.
User avatar
adriano
 
Posts: 108
Joined: 17 Feb 2013, 11:07

Re: ATMEGA 1 MHz - attenzione !!!

Postby adriano » 27 Feb 2013, 16:31

perche mi ritorna un "0" ????
nel punto (A) il terminale trasmette come macro
nel punto (B) dovrei vedere quello che il micro ha ricevuto
... invece mi ritorna "0"

$regfile = "m48def.dat"
$crystal = 11059200
$hwstack = 32
$swstack = 32
$framesize = 32
$baud = 9600
'-----------------------

Dim A As Byte
Print "power on"
'-----------------------
Do

A = Waitkey()

Print A


Print " gira "
Waitms 500
Loop
End

Image

non cambia nulla neanche se inserisco manualmente i dati ... immagino qualche mio errore grosolano nel codice !
Mai mi fu dato di vedere un animale in cordoglio di sé. Un uccelletto cadrà morto di gelo giù dal ramo senza aver provato mai pena per sé stesso.
User avatar
adriano
 
Posts: 108
Joined: 17 Feb 2013, 11:07

Re: ATMEGA 1 MHz - attenzione !!!

Postby deluca » 27 Feb 2013, 19:13

@adriano,
il codice funziona.... ma vorrei capire cosa ti aspetti che faccia il tuo codice.
prova a commentare le righe del programma, io so perfettamente cosa succede,
ma, vorrei capire se quello che vuoi è proprio quello che hai scritto.

se pigi "0" zero sulla tastiera, ottieni Print A=48...
se pigi "a" allora avrai Print A=97 ecc ? se si, tutto sta funzionando.

il codice:
Code: Select all
$regfile = "m48def.dat"
$crystal = 11059200
$hwstack = 32
$swstack = 32
$framesize = 32
$baud = 9600
 '-----------------------

 Dim A As Byte
 Print "power on"
 '-----------------------
Do

 A = Waitkey()       'commenta qui ................                               
 Print A                  'cosa ti aspetti ?  .........................                             
                                                             
 Print " gira "          'commenta qui  ...........................                               
 Waitms 500                                           

Loop
End


poi ti chiedo;
perchè utilizzare terminali strani quando hai a disposizione il buon terminale di bascom che funziona alla grande?

ciao
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)

Re: ATMEGA 1 MHz - attenzione !!!

Postby adriano » 27 Feb 2013, 19:33

@deluca

$regfile = "m48def.dat"
$crystal = 11059200
$hwstack = 32
$swstack = 32
$framesize = 32
$baud = 9600
'-----------------------

Dim A As Byte
Print "power on"
'-----------------------
Do

A = Waitkey() 'commenta qui .........attendo un carattere da seriale (devo ancora capire la dif tra waitkey / inkey...............
Print A 'cosa ti aspetti ? ...scrivo in seriale ( sul terminale il valore che ho inserito )......................

Print " gira " 'commenta qui .......solo vedere quando il programma passa di qua ....................
Waitms 500

Loop
End

Con queste righe volevo acertarmi che il micro e in grado sia di trasmettere che ricevere . Quindi il terminale in automatico mi trasmette "la macro" ( esemp : 1 ...2...4...5...) a intervalli ...il micro li riceve e mi ritorna sulla seriale ciò che ha ricevuto .

usare il terminale sw su PC perche cosi sono sicuro che la comunicazione avviene , il mio obiettivo e quello di controllare servo , motori steep by steep e led con dati da rs232 . Sicuramente funziona benissimo anche il terminale di bascom ma preferivo vedere la connessione vera con una 232 .
Mai mi fu dato di vedere un animale in cordoglio di sé. Un uccelletto cadrà morto di gelo giù dal ramo senza aver provato mai pena per sé stesso.
User avatar
adriano
 
Posts: 108
Joined: 17 Feb 2013, 11:07

Re: ATMEGA 1 MHz - attenzione !!!

Postby deluca » 27 Feb 2013, 19:39

era come prevedevo....

quando trasmetti "1" da PC a uC cosa ti aspetti di vedere?
Ciao
Il mio sito: http://www.delucagiovanni.com ......e la chat: chat/
User avatar
deluca
Site Admin
 
Posts: 1104
Joined: 19 Jun 2011, 10:44
Location: 95123 - Catania (Italy)

Re: ATMEGA 1 MHz - attenzione !!!

Postby adriano » 27 Feb 2013, 20:00

deluca wrote:era come prevedevo....

quando trasmetti "1" da PC a uC cosa ti aspetti di vedere?


in questo esempio nulla , l' "1" che arriva , lo rispedisco al terminale , ma questo semplice esempio doveva farmi capire che l'"1" al uC arivasse ... quindi ho pensato che se il terminale lo manda , il micro lo riceve e lo ristampa sul terminale ...

da terminale bascom funziona ...da terminale pc NO ..ecco spiegato perche non funzionavano le i led accesi da seriale !!! quindi il mio terminale pc riceve ma non trasmette !!!
Mai mi fu dato di vedere un animale in cordoglio di sé. Un uccelletto cadrà morto di gelo giù dal ramo senza aver provato mai pena per sé stesso.
User avatar
adriano
 
Posts: 108
Joined: 17 Feb 2013, 11:07

Next

Return to BASCOM-AVR

Who is online

Users browsing this forum: No registered users and 8 guests