Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

[INTERRUPT] Info importante per aspiranti microcontrollisti

Raccolta di codici sorgenti

Moderatore: Foto UtentePaolino

0
voti

[21] Re: [INTERRUPT] Info importante per aspiranti microcontrolli

Messaggioda Foto Utentespeedyant » 11 feb 2015, 19:44

Li lappate e ci mettete un waterblock e poi fate a gara! :lol:
Il fatto che io abbia un impianto a liquido nel PC non vi deve trarre in inganno, non sono mica un fanatico dell' overclocking!
Son quello delle domande strane!
Avatar utente
Foto Utentespeedyant
3.486 3 6 8
Master
Master
 
Messaggi: 2452
Iscritto il: 9 lug 2013, 18:29
Località: Torino

0
voti

[22] Re: [INTERRUPT] Info importante per aspiranti microcontrolli

Messaggioda Foto Utenteangel99 » 11 feb 2015, 19:49

E.... l'azoto liquido è permesso o no? Con quello si fanno cose troppo simpatiche! :-$

Adesso Pietro arriva e chiude il 3D... :mrgreen:
Avatar utente
Foto Utenteangel99
3.516 1 4 11
Master
Master
 
Messaggi: 1149
Iscritto il: 23 gen 2015, 19:39

0
voti

[23] Re: [INTERRUPT] Info importante per aspiranti microcontrolli

Messaggioda Foto Utentespeedyant » 11 feb 2015, 19:55

Prima che chiuda e ci "banni" a vita, se riesce a darmi qualche "info" sulle differenze, se esistono, della gestione degli interrupt dei micro rispetto ai "processori" x86...
Son quello delle domande strane!
Avatar utente
Foto Utentespeedyant
3.486 3 6 8
Master
Master
 
Messaggi: 2452
Iscritto il: 9 lug 2013, 18:29
Località: Torino

0
voti

[24] Re: [INTERRUPT] Info importante per aspiranti microcontrolli

Messaggioda Foto Utenteangel99 » 11 feb 2015, 20:00

Se parliamo dell'8086 e dei fratelli vicini, diciamo fino al 386, sostanzialmente non ci sono differenze nel loro utilizzo. Se invece parli dei micro x86 attuali, non ha neppure senso parlarne perché non credo (io non ho mai sentito) che siano stati scritti programmi che gestiscano il micro a tale livello. Attendiamo altre fonti.
Avatar utente
Foto Utenteangel99
3.516 1 4 11
Master
Master
 
Messaggi: 1149
Iscritto il: 23 gen 2015, 19:39

1
voti

[25] Re: [INTERRUPT] Info importante per aspiranti microcontrolli

Messaggioda Foto UtentePietroBaima » 11 feb 2015, 20:10

angel99 ha scritto:Adesso Pietro arriva e chiude il 3D... :mrgreen:

Chiuderei volentieri quelli di coloro che usano gli interrupt in quel modo e poi si lamentano che il micro a 72MHz è lento, quando con uno Z80 a 4MHz si potrebbero fare il triplo delle cose...ma non posso.

:D
Generatore codice per articoli:
nomi
emoticon
citazioni
formule latex

Io capisco le cose per come le scrivete. Per esempio: K sono kelvin e non chilo, h.z è la costante di Planck per zepto o per la zeta di Riemann e l'inverso di una frequenza non si misura in siemens.
Avatar utente
Foto UtentePietroBaima
77,2k 6 12 13
G.Master EY
G.Master EY
 
Messaggi: 9414
Iscritto il: 12 ago 2012, 1:20
Località: Londra

1
voti

[26] Re: [INTERRUPT] Info importante per aspiranti microcontrolli

Messaggioda Foto Utenteposta10100 » 11 feb 2015, 20:18

Di norma nell'interrupt si lascia il minimo indispensabile, ma purtroppo alle volte il minimo indispensabile corrisponde a buona parte del programma.
Sto mettendo a punto un generatore di funzioni DDS (senza troppe pretese a dir la verità) utilizzando un PIC18F4450 (ce l'ho in casa e lo voglio usare -:- ).
Di fatto, dopo aver programmato la RAM esterna, deve far girare all'infinito una routine che fa la somma di due numeri a 24 bit mettendo sui pin il risultato.
Deve girare all'infinito fino a quando un evento esterno (pressione di un tasto o simili) richiedono attenzione e bisogna assecondarli :)
Ora, la somma dei due numeri richiede una ventina di cicli macchina, aggiungerne anche solo 4 per verificare se una variabile ha cambiato valore significa decrementare del 20% le prestazioni.
L'idea (ma forse si può fare altrimenti) è quella di lasciare nel programma principale solo la routine che fa la somma e gestire tutto il resto nell'interrupt.
Al momento non mi vengono in mente altre soluzioni.
Purtroppo, alle volte, gli interrupt devono essere corposi.

O_/
http://millefori.altervista.org
Tool gratuito per chi sviluppa su millefori.

Tutti sanno che una cosa è impossibile da realizzare, finché arriva uno sprovveduto che non lo sa e la inventa. (A. Einstein)
Se non c'e` un 555 non e` un buon progetto (IsidoroKZ)

Strumento per formule
Avatar utente
Foto Utenteposta10100
5.420 4 9 13
Master EY
Master EY
 
Messaggi: 4786
Iscritto il: 5 nov 2006, 0:09

2
voti

[27] Re: [INTERRUPT] Info importante per aspiranti microcontrolli

Messaggioda Foto Utenteangel99 » 11 feb 2015, 20:27

Ciò di cui Freak sta parlando (mi arrogo ad interpretatore ufficiale) è che bisognerebbe analizzare il firmware prima di scriverlo. Ciò che si infila in una routine o in un'altra non deve essere ciò che appare necessario al momento, ma ciò che si è pianificato prima di scrivere il primo mov (o il primo void per chi non conosce l'assembler :mrgreen: ).

Nella routine di IRQ ci va solo quello che deve essere fatto prima che possa arrivare lo stesso interrupt una seconda volta! Tutto il resto va demandato alla parte "interruptibile" (aghhh che termine!) del programma (il main loop).
Avatar utente
Foto Utenteangel99
3.516 1 4 11
Master
Master
 
Messaggi: 1149
Iscritto il: 23 gen 2015, 19:39

0
voti

[28] Re: [INTERRUPT] Info importante per aspiranti microcontrolli

Messaggioda Foto Utentegotthard » 11 feb 2015, 20:30

angel99 ha scritto: "interruptibile" (aghhh che termine!).


Forse asservibile è più "normale" (e carino) :mrgreen:
...\frac{\mathrm{d} p}{\mathrm{d} t}=JCM... :!:
Avatar utente
Foto Utentegotthard
4.606 2 5 9
Expert EY
Expert EY
 
Messaggi: 1358
Iscritto il: 5 lug 2013, 14:01

1
voti

[29] Re: [INTERRUPT] Info importante per aspiranti microcontrolli

Messaggioda Foto Utenteangel99 » 11 feb 2015, 20:35

L'italiano è una lingua bellissima. Ma quando si tratta di parlare di software...
Avatar utente
Foto Utenteangel99
3.516 1 4 11
Master
Master
 
Messaggi: 1149
Iscritto il: 23 gen 2015, 19:39

1
voti

[30] Re: [INTERRUPT] Info importante per aspiranti microcontrolli

Messaggioda Foto UtenteTardoFreak » 11 feb 2015, 21:00

EcoTan ha scritto:.. e non è che io ne capisca tantissimo di quello che succede.

Questo è male, non s'ha da fare. [-X
Rimedio: munirsi di buona volontà e studiare il/i microcontrollori.
angel99 ha scritto: Scrivete, scrivete in C... e poi quello che fa il micro lo sa solo il compilatore (e forse neppure lui).

Assembler forever! :mrgreen:

Le palle! (emoticon con gesto dell' ombrello)
Si scrive in C prendendosi la briga di andare a vedere come lavora il compilatore (cosa che quasi nessuno fa e che invece dovrebbero fare tutti :evil: ).
Se poi il compilatore fa cag... ehm ... non è dei migliori allora si mette mano all' assembler. -:-
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,4k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15764
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

PrecedenteProssimo

Torna a Firmware e programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 2 ospiti