Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

LMC555 per riparare luci natalizie

Elettronica lineare e digitale: didattica ed applicazioni

Moderatori: Foto Utentecarloc, Foto Utenteg.schgor, Foto UtenteBrunoValente, Foto UtenteIsidoroKZ

0
voti

[281] Re: LMC555 per riparare luci natalizie

Messaggioda Foto Utentestefanopc » 29 gen 2025, 20:44

frankis ha scritto:Al momento più che la fantasia mi limita la conoscenza. Inoltre, anche potendo, eviterei di fare qualcosa di troppo diverso dal controllore cinese che si è guastato...
... Non dubito che si possa fare tutto ma all’inizio la programmazione richiede parecchio tempo e sperimentazione. L'impegno deve anche valere la pena.


Io sono praticamente autodidatta in informatica.
Ho imparato nel tempo a livello base diversi linguaggi di programmazione e me la cavo abbastanza .
Le conoscenze fondamentali (sono comuni a qualsiasi approccio) vanno imparate perché senza non si va da nessuna parte.
Quindi se ti piace l'idea di quello che stai provando con arduino devi imparare alcune cose con cui poi costruire i tuoi progetti.
La dichiarazione e i tipi di variabili e costanti.
Gli operatori di base come if then else for do case.
La dichiarazione delle funzioni.
Qui trovi tutto spiegato in modo chiaro.
https://docs.arduino.cc/language-refere ... jE3NzcwMg..
Con il manuale di riferimento ufficiale sotto mano gli esempi e un libro ben fatto come guida in qualche mese si arriva a capire i fondamentali.
La strada di solito è quella.
Ciao
600 Elettra
Avatar utente
Foto Utentestefanopc
13,3k 5 9 13
Master EY
Master EY
 
Messaggi: 5567
Iscritto il: 4 ago 2020, 9:11

0
voti

[282] Re: LMC555 per riparare luci natalizie

Messaggioda Foto UtenteEtemenanki » 29 gen 2025, 22:12

Aggiungo soltanto che per fare cose simili, vengono buone le "flag".

Una "flag" non e' altro che una qualsiasi variabile, del tipo che serve per lo scopo necessario (esempio, se deve essere solo 1 o 0 basta una bool, se deve contenere piu valori, fino a 254, si usa una byte, e cosi via), che tu poi puoi usare nel programma per dire ad una (o piu) funzioni "se" fare qualcosa e/o "cosa" fare, secondo il valore della variabile.

Mettiamo ad esempio (esempio banale) che tu voglia eseguire una funzione oppure un'altra alternativamente alla pressione di un pulsante, quando premi una volta metti la flag ad 1, quando premi la seconda la rimetti a 0, e cosi via (o meglio ancora, piu semplicemente, ogni volta che premi, inverti lo stato, tipo con "stato == !stato" , il punto esclamativo significa inverso), e poi nel programma con un sempli ce if ... else controlli ilvalore della variabile e se 1 esegui la prima funzione, se 0 esegui la seconda, o viceversa.

Stessa cosa se devi eseguire piu di due cose, in quel caso userai una variabile di tipo byte, gli assegnerai tutti i valori che ti servono (fino ad un massimo di 254, piu lo zero), e poi con l'if ... else if ... else eccetera in base al valore eseguirai la funzione associata a quel valore (si puo fare anche con gli switch...case, ma forse come inizio gli if sono piu semplici da capire)

Ovviamente potrai avere tutte le "flag" che vuoi, basta dichiararle all'inizio ognuna con il suo nome, tipo e valore iniziale.

E' piu semplice provare che spiegarlo :mrgreen:
"Sopravvivere" e' attualmente l'unico lusso che la maggior parte dei Cittadini italiani,
sia pure a costo di enormi sacrifici, riesce ancora a permettersi.
Avatar utente
Foto UtenteEtemenanki
9.527 3 6 10
Master
Master
 
Messaggi: 5951
Iscritto il: 2 apr 2021, 23:42
Località: Dalle parti di un grande lago ... :)

0
voti

[283] Re: LMC555 per riparare luci natalizie

Messaggioda Foto Utentevince59 » 29 gen 2025, 22:18

stefanopc ha scritto:
frankis ha scritto:....
Qui trovi tutto spiegato in modo chiaro...
Con il manuale di riferimento ufficiale sotto mano gli esempi e un libro ben fatto come guida in qualche mese si arriva a capire i fondamentali.
La strada di solito è quella.
Ciao


Caro Frankis...come vedi la strada è quella indicata qualche centinaio di post addietro :mrgreen: :roll:
Avatar utente
Foto Utentevince59
664 2 3 6
Sostenitore
Sostenitore
 
Messaggi: 1062
Iscritto il: 17 giu 2019, 19:32

0
voti

[284] Re: LMC555 per riparare luci natalizie

Messaggioda Foto Utenteboiler » 29 gen 2025, 22:30

Etemenanki ha scritto:inverti lo stato, tipo con "stato == !stato"

Questa operazione ritorna sempre false senza modificare nessuno stato.

Boiler
Avatar utente
Foto Utenteboiler
26,4k 5 9 13
G.Master EY
G.Master EY
 
Messaggi: 5613
Iscritto il: 9 nov 2011, 12:27

1
voti

[285] Re: LMC555 per riparare luci natalizie

Messaggioda Foto UtenteEtemenanki » 29 gen 2025, 23:03

ARGH, mi e' sfuggito un'uguale di troppo, hai ragione.
stato = !stato;
"Sopravvivere" e' attualmente l'unico lusso che la maggior parte dei Cittadini italiani,
sia pure a costo di enormi sacrifici, riesce ancora a permettersi.
Avatar utente
Foto UtenteEtemenanki
9.527 3 6 10
Master
Master
 
Messaggi: 5951
Iscritto il: 2 apr 2021, 23:42
Località: Dalle parti di un grande lago ... :)

0
voti

[286] Re: LMC555 per riparare luci natalizie

Messaggioda Foto Utentefrankis » 30 gen 2025, 22:51

Grazie per l’aiuto. Cerco di fare il possibile. Si trovano in rete anche delle funzioni già fatte ma vanno modificate però aiutano ad accelerare l’apprendimento.
Avatar utente
Foto Utentefrankis
745 1 4 8
Stabilizzato
Stabilizzato
 
Messaggi: 427
Iscritto il: 5 set 2024, 15:42

2
voti

[287] Re: LMC555 per riparare luci natalizie

Messaggioda Foto Utentefrankis » 5 feb 2025, 13:06

Non è molto però adesso i tempi li rispetta abbastanza. Su un ciclo di 24 ore ha superato il tempo previsto di 10 minuti e 30 secondi. Se consideriamo che dopo due giorni devo sostituire la batteria al Litio avrei un ritardo totale di 21 minuti che ritengo accettabile, anche perché sostituendo la batteria si azzererebbe il conteggio e anche il ritardo. Potrei ritoccare i tempi di start e stop ma non credo valga la pena per un ritardo di 21 minuti in 2 giorni? Operativamente credo che quel ritardo nelle accensioni non sarebbe neanche percettibile...
Adesso rimane da provare il programma per il pulsante ma c’è da lavorarci un po'... :D
Avatar utente
Foto Utentefrankis
745 1 4 8
Stabilizzato
Stabilizzato
 
Messaggi: 427
Iscritto il: 5 set 2024, 15:42

0
voti

[288] Re: LMC555 per riparare luci natalizie

Messaggioda Foto UtenteThEnGi » 5 feb 2025, 18:00

frankis ha scritto: 21 minuti in 2 giorni?


equivalente a 7292 ppm, considerando che un orologio "medio" ha uno scarto di circa 50-200 ppm.....

Insomma non puoi usarlo per sapere l'ora :mrgreen:

Comunque complimenti :ok:

O_/
Avatar utente
Foto UtenteThEnGi
2.230 3 6 9
Expert EY
Expert EY
 
Messaggi: 2228
Iscritto il: 6 ott 2022, 18:43

1
voti

[289] Re: LMC555 per riparare luci natalizie

Messaggioda Foto Utentedjnz » 5 feb 2025, 20:13

Temporizzando bene con millis (senza ritardi nell'aggiornamento delle variabili temporali), anche senza introdurre fattori correttivi l'errore si può contenere in circa due minuti al giorno.

Codice: Seleziona tutto
uint32_t t;
bool     primo_giro = 1;

void loop() {

    if (primo_giro  ||  (millis()-t >= PERIODO)) {
        t = primo_giro ? millis() : t + PERIODO;
        primo_giro = 0;
        ...fai cose ogni PERIODO tempo...
        ...riavvio con errore di 2 minuti al giorno...
    }

}
Una domanda ben posta è già mezza risposta.
Avatar utente
Foto Utentedjnz
1.590 1 4 7
Master
Master
 
Messaggi: 709
Iscritto il: 26 lug 2020, 14:52

0
voti

[290] Re: LMC555 per riparare luci natalizie

Messaggioda Foto Utentefrankis » 6 feb 2025, 2:04

Con millis ci devo andare coi piedi di piombo perché mi risulta difficile da applicare. Specialmente con gli effetti non riesco ad ottenere le funzionalità equivalenti a quelle che ottengo con delay. Poi non so se utilizzerò il pulsante, troppo complesso per me. Difficile anche armonizzare il pulsante con lo start e stop di 6/18 ore.
Se sorgono troppi problemi vado a ripescare la versione che rispetta (o quasi) i tempi e tarda di 21 minuti in 48 ore e utilizzo quella, contiene già tanti di quegli effetti che poi più se ne aggiungono e più si assomigliano tra loro.
Piuttosto che un pulsante che funziona male preferisco il timer 6/18 ore che funziona bene.
Inoltre il programma è diventato troppo lungo e complicato da gestire (per me).
Faccio ancora un po’ di prove poi ritorno. O_/
Avatar utente
Foto Utentefrankis
745 1 4 8
Stabilizzato
Stabilizzato
 
Messaggi: 427
Iscritto il: 5 set 2024, 15:42

PrecedenteProssimo

Torna a Elettronica generale

Chi c’è in linea

Visitano il forum: Nessuno e 101 ospiti