03 luglio 07, 17:23 | #31 (permalink) Top | |
UserPlus | Citazione:
__________________ C'e' chi vola con l'elettronica e chi fa volare l'elettronica ... entrambi volano. ________________________________________________ ProtoMax proudly present: ProtoMeter 2 32bit ARM core + ZigBee Radio all in one Telemetry system ... Next on this forum | |
04 luglio 07, 18:00 | #32 (permalink) Top |
User Data registr.: 29-05-2006 Residenza: Catania
Messaggi: 2.933
|
Ciao a tutti, ho ricontrollato il software di due giorni fa.... Ho sistemato un po' i tempi. Ancora però sono da sistemare i due delay in accordo però su una rilevazione sperimentale dei ritardi... Nel senso che per ora non lo posso provare, e che i delay vanno regolati in accordo con il tempo di conversione dell' ADC. Appena compro il PIC faccio l'ultima "taratura" dei ritardi e provo il tutto.... Poi invierò pure il segnale visualizzato sull'oscilloscopio. ecco il software: void main (void) { int n,i,c,sinc,durata=0; long int canale; TRISB = 0; TRISC = 0; TRISD = 0; ADCON1 = 0x80; while(1){ n=1; while(n<9){ n++; PORTB.F0=1; canale = ADC_Read(n); canale = canale*1000/1024; delay_us(262); // delay casomai variabile PORTB.F0=0; delay_us(563); // delay casomai variabile canale = canale/6; canale = canale - canale/10 - canale/4; i=0; while(i<=canale){ i++; ** durata = durata + canale; ** sinc = 12000 - durata; sinc = sinc/3.3; c=0; while(c<=sinc){ c++; ** ** ** Ho soistituito i for con dei while così da avere un controllo migliore sui ritardi.
__________________ Il filo attaccato all'antenna non mente mai....Troppo vento, si torna a casa.... I miei circuiti elettronici autocostruiti: Postbruciatore per ventole intubate ; Circuito luci per aeromodello-elimodello ; Rallenta servo con protezione da corto circuito |
05 luglio 07, 14:14 | #33 (permalink) Top | |
UserPlus | Citazione:
Nel momento in cui dovrai aggiungere qualcosa dovrai ritarare e poi arriverai ad un punto in cui i tempi per fare altro non ti basteranno per svolgere il lavoro in ogni tuo ciclo...es: premere in tasto, comandare un display, controllare il livello batterie, mettere un timer ecc... a questo punto sarai costretto a prendere una decisione : - Cambiare modo di pensare alla programmazione . - Cambiare micro se quello che hai non ti permettere di cambiare modo di programmare . Tutto dipende da come affronti il progetto e che cosa vuoi realizzare ...alla base di un buon prodotto c'e' una buona progettazione
__________________ C'e' chi vola con l'elettronica e chi fa volare l'elettronica ... entrambi volano. ________________________________________________ ProtoMax proudly present: ProtoMeter 2 32bit ARM core + ZigBee Radio all in one Telemetry system ... Next on this forum | |
05 luglio 07, 20:18 | #34 (permalink) Top | |
User Data registr.: 29-05-2006 Residenza: Catania
Messaggi: 2.933
| Citazione:
allora vediamo che combino.....nel frattempo se qualcun'0altro ha qualche ideuzza...che ne so...qualche flow-chart magari per avere un'idea di come iniziare un nuovo software....
__________________ Il filo attaccato all'antenna non mente mai....Troppo vento, si torna a casa.... I miei circuiti elettronici autocostruiti: Postbruciatore per ventole intubate ; Circuito luci per aeromodello-elimodello ; Rallenta servo con protezione da corto circuito | |
05 luglio 07, 23:26 | #35 (permalink) Top | |
User Data registr.: 11-10-2004 Residenza: out of Verona
Messaggi: 573
| Citazione:
Ad ogni tick dell'interrupt, modifichi o meno lo stato del'uscita TX in base a quanto hai già trasmesso. Sembra complicato, ma se ci ragioni un attimo è l'unico sistema professionale per realizzare questo tipo di programmi. Concentrati intanto sul task di trasmissione, e quando funziona poi affronti il resto che vedrai diventa una cavolata. | |
05 luglio 07, 23:28 | #36 (permalink) Top |
User Data registr.: 11-10-2004 Residenza: out of Verona
Messaggi: 573
|
Allora...queste cose si risolvono realizzando una macchina a stati. Devi crearti un interrupt con il timer che ti gestisce la trasmissione di un'area di memoria riempita dal programma principale. Il programma principale che non ha strette esigenze di temporizzazione legge gli ADC, i pulsanti, gestisce LCD e quant'altro. Così svincoli la generazione dei timing dal programma principale. Ad ogni tick dell'interrupt, modifichi o meno lo stato del'uscita TX in base a quanto hai già trasmesso. Sembra complicato, ma se ci ragioni un attimo è l'unico sistema professionale per realizzare questo tipo di programmi. Concentrati intanto sul task di trasmissione, e quando funziona poi affronti il resto che vedrai diventa una cavolata |
06 luglio 07, 13:14 | #37 (permalink) Top | |
User Data registr.: 02-04-2005
Messaggi: 2.050
| Citazione:
| |
06 luglio 07, 13:23 | #38 (permalink) Top | |
User Data registr.: 02-04-2005
Messaggi: 2.050
| Citazione:
| |
06 luglio 07, 14:37 | #39 (permalink) Top | |
UserPlus | Citazione:
In questo modo si ha a disposizione indipendentemente dalla esecuzione dell'interrupt altri "istanti di tempo" in cui si puo' fare altro. Pensate all'interrupt come un evento che arriva "congela tutto il resto" prende il soppravvneto sul processore (esegue il codice di interrupt) e poi restituisce il controllo ristabilendo la situazione che aveva interrotto forse non e' proprio un flowchart ma e' un indicazione
__________________ C'e' chi vola con l'elettronica e chi fa volare l'elettronica ... entrambi volano. ________________________________________________ ProtoMax proudly present: ProtoMeter 2 32bit ARM core + ZigBee Radio all in one Telemetry system ... Next on this forum | |
06 luglio 07, 20:34 | #40 (permalink) Top | |
User Data registr.: 29-05-2006 Residenza: Catania
Messaggi: 2.933
| Citazione:
Vediamo se ho capito bene.... Nel "main" si leggono gli ADC e si pilotano altri dispositivi ( lettura pulsanti vari, pilotaggio display) e con l'interrupt si genera la trama degli 8 canali...quindi il timer interno deve dare un'interrupt ogni 20ms...giusto??
__________________ Il filo attaccato all'antenna non mente mai....Troppo vento, si torna a casa.... I miei circuiti elettronici autocostruiti: Postbruciatore per ventole intubate ; Circuito luci per aeromodello-elimodello ; Rallenta servo con protezione da corto circuito | |
Bookmarks |
| |
Discussioni simili | ||||
Discussione | Autore discussione | Forum | Commenti | Ultimo Commento |
Costruzione F3j | zedona | Aeromodellismo Progettazione e Costruzione | 138 | 01 aprile 08 14:10 |
trasformare un vecchio radiocomando rc in disuso in un radiocomando per simulatori rc | maxpresident | Simulatori | 2 | 09 giugno 07 17:53 |
radiocomando G3 con Reflex o radiocomando esky... | squalofly | Simulatori | 2 | 07 gennaio 06 18:19 |
quindi.. PURCHE SIA OMOLOGATo... | sozi | Elimodellismo Principianti | 6 | 22 novembre 05 16:44 |
costruzione | jnfarin | Aeromodellismo | 3 | 07 novembre 01 13:40 |