18. 7. 2025, 17:04
Casto som v minulosti potreboval nejaky malicky MCU a programovanie bolo mimo moj skill alebo pripadne na objednavku velmi drahe alebo zlozite na dohadovanie.
Chcel som naprogramovat procesor pre riadenie gramofonoveho predzosilnovaca
najprv som zacal s malickym attiny85 ktory aj stacil, ale nakoniec ako som si nakladal viac a viac skoncil som u lacneho attiny24 ktory ma viac pinov
V povodnom "analogovom" riadeni mi vadilo ze pri vypnuti hlavneho preampu a zosilnovacov, sa vypol aj gramo preamp, a z neho napajany gramofon, co znamenalo ze ihla ostala na platni a gramofon sa hned vypol, co nebolo prave idealne riesenie. Toto som chcel vysperkovat k dokonalosti tak planujem vymenit riadiacu dosku v gramo preampe aby toto vsetko vyriesila.
Ako programator som pouzil arduino nano naprogramovane ako arduino isp programmer co je jednoduchy predprogramovany skript v ich programe arduino IDE. Je na to kopa tutorialov.
Trochu ma potrapil kondenzator na reset pine arduina, vs reset na pine c.5 na isp vs priamo na arduine. Rozne attiny chcu rozne zapojenie resetu takze ak by niekto nahodou robil cosi podobne a mal problem ze attiny nechce komunikovat je vysoko pravdepodobne ze je problem v zapojeni reset pinu.
Kedze mame rozne umele inteligencie vyskusal som pre svoje potreby zdrojoveho kodu Microsoft Copilot (vyuziva gpt4.0 od open ai a dalsie) co sa mi ale u copilota zapacilo, ze pri zadavani querry su na vyber dve moznosti (quick response vs think deeper) a vysledok je casto dost rozdielny.
Ak som rozpisal svoje (dost zlozite) poziadavky plne podmienok tak "quick response" kod vyzadoval asi 10-20 uprav a debugov, kym som dosiel ako tak k vysledku. Ak som dal "think deeper" kod fungoval hned na prvy sup. Je ale zlozite spisat vsetky poziadavky hned v prvom requeste lebo casto si clovek neuvedomi ze vlastne toto ma byt tak a tamto onak.
Funkcie:
- standby ledka + blikanie pocas casovania
- zapinacie tlacitko
- zapnutie aj cez remote +5V (optoclen z 5V vetvy na pin co zapina zdroj, takto to mam na analogovej doske v povodnom preampe takze som to chcel nechat zachovane) procesor na zapinacom pine funguje ako vstup aby toto rozoznal, inak funguje ako vystup v pripade zapnutia tlacidlom = celkom zlozita sranda ale AI ma pochopilo
- casovac pre un-mute (zapne audio vystup)
- casovac pre "remote on" vystup pre zapnutie gramofonu
- trigger co posle impulz a automatickemu gramofonu stlaci "play button"
Pri vypnuti (ci uz tlacitkom alebo zmiznutim remote signalu):
- zdroj sa vypne
- zapne sa mute (vypne audiovystup)
- odosle sa trigger signal aby sa na gramofone stlacil play button
- remote on pre gramofon ostane zapnuty este 10 sekund aby ramienko odparkovalo
- ledka blika a signalizuje prebiehajuci "dobeh"
Tusim ze copilot a rozne ai maju aj jazykove mutacie a dokonca sa vedia aj rozpravat, ja to nevyuzivam a pisal som querry v anglictine lebo mi to tak prislo pre mna prirodzenejsie, dam vam sem pre zaujimavost aj moj konkretny priklad ako vyzeral request pre zdrojovy kod:
Viac menej hned na prvy sup AI dodalo fungujuci kod, chcel som este nejake blikatka a upravy ktore som si hned na prvykrat neuvedomil ale chcem to sem hodit len ako reprezentacny priklad. Je potrebne popisat uplne vsetky situacie a stavy co mozu nastat, inak nebudu zahrnute.
Co je ale uzasne, je ze aj clovek s nizkym programovacim skilom dokaze napalit dobre fungujuci firmware do mcu. Neveril by som ze doba kde len nadiktujem pocitacu co chcem naprogramovat bude takto blizko
sice mam pocit ze umela inteligencia stale pokulhava na matematike a tam casto chybuje, je to asi len otazka casu. No programovanie jej ide celkom fajn 
novu dosku idem akurat osadit do svojho ultimatneho elektronkoveho phono preampu az bude vsetko hotove hodim sem video ako to funguje v praxi.
Tu je video dosky s programom od ai:
https://www.youtube.com/watch?v=_SWV3cJDxKI
Chcel som naprogramovat procesor pre riadenie gramofonoveho predzosilnovaca
najprv som zacal s malickym attiny85 ktory aj stacil, ale nakoniec ako som si nakladal viac a viac skoncil som u lacneho attiny24 ktory ma viac pinov
V povodnom "analogovom" riadeni mi vadilo ze pri vypnuti hlavneho preampu a zosilnovacov, sa vypol aj gramo preamp, a z neho napajany gramofon, co znamenalo ze ihla ostala na platni a gramofon sa hned vypol, co nebolo prave idealne riesenie. Toto som chcel vysperkovat k dokonalosti tak planujem vymenit riadiacu dosku v gramo preampe aby toto vsetko vyriesila.Ako programator som pouzil arduino nano naprogramovane ako arduino isp programmer co je jednoduchy predprogramovany skript v ich programe arduino IDE. Je na to kopa tutorialov.
Trochu ma potrapil kondenzator na reset pine arduina, vs reset na pine c.5 na isp vs priamo na arduine. Rozne attiny chcu rozne zapojenie resetu takze ak by niekto nahodou robil cosi podobne a mal problem ze attiny nechce komunikovat je vysoko pravdepodobne ze je problem v zapojeni reset pinu.
Kedze mame rozne umele inteligencie vyskusal som pre svoje potreby zdrojoveho kodu Microsoft Copilot (vyuziva gpt4.0 od open ai a dalsie) co sa mi ale u copilota zapacilo, ze pri zadavani querry su na vyber dve moznosti (quick response vs think deeper) a vysledok je casto dost rozdielny.
Ak som rozpisal svoje (dost zlozite) poziadavky plne podmienok tak "quick response" kod vyzadoval asi 10-20 uprav a debugov, kym som dosiel ako tak k vysledku. Ak som dal "think deeper" kod fungoval hned na prvy sup. Je ale zlozite spisat vsetky poziadavky hned v prvom requeste lebo casto si clovek neuvedomi ze vlastne toto ma byt tak a tamto onak.
Funkcie:
- standby ledka + blikanie pocas casovania
- zapinacie tlacitko
- zapnutie aj cez remote +5V (optoclen z 5V vetvy na pin co zapina zdroj, takto to mam na analogovej doske v povodnom preampe takze som to chcel nechat zachovane) procesor na zapinacom pine funguje ako vstup aby toto rozoznal, inak funguje ako vystup v pripade zapnutia tlacidlom = celkom zlozita sranda ale AI ma pochopilo
- casovac pre un-mute (zapne audio vystup)
- casovac pre "remote on" vystup pre zapnutie gramofonu
- trigger co posle impulz a automatickemu gramofonu stlaci "play button"
Pri vypnuti (ci uz tlacitkom alebo zmiznutim remote signalu):
- zdroj sa vypne
- zapne sa mute (vypne audiovystup)
- odosle sa trigger signal aby sa na gramofone stlacil play button
- remote on pre gramofon ostane zapnuty este 10 sekund aby ramienko odparkovalo
- ledka blika a signalizuje prebiehajuci "dobeh"
Tusim ze copilot a rozne ai maju aj jazykove mutacie a dokonca sa vedia aj rozpravat, ja to nevyuzivam a pisal som querry v anglictine lebo mi to tak prislo pre mna prirodzenejsie, dam vam sem pre zaujimavost aj moj konkretny priklad ako vyzeral request pre zdrojovy kod:
Kód:
Hey, I need quite complex programming code full of conditions. I am programming attiny24 in Arduino ide.
I need:
1 input (PB0)
5 outputs (PA0-PA4)
PA1 needs to work as input under certain conditions, will describe at the end
- when attiny is powered up (voltage is applied), PA0 is in low state (for standby led to light from VCC to this pin) and rest of the outputs PA1-PA4 are in low state.
- PB0 is going to be a push button with on/off function. I want some internal pull-up activated and some debouncing prevention so it works reliably with minimum external components. Just switch from PB0 to ground.
- when the attiny wakes up with pushing the button on PB0, the following happens:
PA0 starts blinking every 500ms (goes high every 500ms)
PA1 is "high" rightaway
PA2 is "high" after 30 seconds
PA3 is "high" after 20 seconds
PA4 briefly sends one 50ms high impulse after 22 seconds
when PA2 reaches 30 seconds mark, PA0 stops blinking (goes to high state)
- if the PB0 goes low (pushed button again) while any of the above timers is counting, it will all go to off state = PA0 low, PA1-4 low.
However there is another condition: if the PA4 already sent impulse after those 22 seconds, and the PB0 goes low after that time, the PA4 needs to send impulse again, and PA3 will go low 10 seconds later after that happens.
As explained in the beginning, PA1 is normally output pin, but needs to work also as input - when device is in off state. If in off state, and PA1 goes continuous lasting signal "high", attiny will act in similar way as if PB0 button was pressed = all counters and conditions start, just with that difference PB0 is not active at all. All is conditioned based on PA1 high state. If PA1 goes continuously low, everything will go to off state (similar as PB0 button off) and all conditions remain the same as with button conditions - the 22second mark, the impulses, and PA3 10 seconds delay etc... and button control activation via PB0 is available again. So i suppose there needs to be some sort of detection if device was triggered by button on PB0, or by continuous signal on PA1 and select PA1 in-out state based on that? is this possible to do?Viac menej hned na prvy sup AI dodalo fungujuci kod, chcel som este nejake blikatka a upravy ktore som si hned na prvykrat neuvedomil ale chcem to sem hodit len ako reprezentacny priklad. Je potrebne popisat uplne vsetky situacie a stavy co mozu nastat, inak nebudu zahrnute.
Co je ale uzasne, je ze aj clovek s nizkym programovacim skilom dokaze napalit dobre fungujuci firmware do mcu. Neveril by som ze doba kde len nadiktujem pocitacu co chcem naprogramovat bude takto blizko
sice mam pocit ze umela inteligencia stale pokulhava na matematike a tam casto chybuje, je to asi len otazka casu. No programovanie jej ide celkom fajn 
novu dosku idem akurat osadit do svojho ultimatneho elektronkoveho phono preampu az bude vsetko hotove hodim sem video ako to funguje v praxi.
Tu je video dosky s programom od ai:
https://www.youtube.com/watch?v=_SWV3cJDxKI



)




podpoř provoz fóra