val Postat Mai 29, 2017 Partajează Postat Mai 29, 2017 Multumesc, acum este in regula; fara erori la programare. Link spre comentariu
bebe2010 Postat Martie 1, 2019 Partajează Postat Martie 1, 2019 Salut Ma poate ajuta cineva cu compilarea in hex sau bin la ceea ce am atasat Ce am atasat este scris pentru un atmega88. dar as vrea daca se poate compila pentru atmega8 momentan nu detin atmega88. Multumesc O seara buna va doresc patch lm7001.rar Link spre comentariu
zvonacfirst Postat Iunie 26, 2020 Partajează Postat Iunie 26, 2020 Va salut. Intr-un mic proiect cu ATmega328 am doua push-buttoane care comanda doua relee. Schema pentru cele doua butoane este urmatoarea: Dupa cum vedeti nu am prevazut rezistente pull-up. Este obligatoriu sa pun aceste rezistente? Am citit ceva referitor la activarea in soft a acestor rezistente. Daca nu le utilizez trebuie sa scriu ceva in soft? Multumesc. Link spre comentariu
Elison Postat Iunie 26, 2020 Partajează Postat Iunie 26, 2020 Da, trebuie activate cele interne sau montate altele externe. Fara aceste rezistente starea pinului este incerta. Daca nu vreti sa activati rezistentele interne, nu trebuie sa scrieti nimic legat de acestea atunci cand se face configurarea atmega 328. Link spre comentariu
nico_2010 Postat Iunie 26, 2020 Partajează Postat Iunie 26, 2020 (editat) Da, pot fi activate rezistentele de pull-up. In program scrii, spre exemplu: DDRB |= 1<<DDB1; // portul B1 este setat ca iesire PORTB |= 1<<PB1; // portul B1 are rezistenta pull-up activata L.E.: da' foaia de catalog ai citit-o? Editat Iunie 26, 2020 de nico_2010 Link spre comentariu
vijelie02 Postat Iunie 26, 2020 Partajează Postat Iunie 26, 2020 Zic si eu, n-ar fi bun si un C de vreo 100nF paralel pentru un debouncing? Link spre comentariu
zvonacfirst Postat Iunie 26, 2020 Partajează Postat Iunie 26, 2020 Acum 14 minute, Elison a spus: Da, trebuie activate cele interne sau montate altele externe. Deci exista unele interne care trebuie sa fie activate. Asta inseamna ca nu trebuie neaparat sa pun altele externe? Iar activarea celor interne o fac astfel: digitalWrite (pinBTN1, HIGH); Este corect? Acum 5 minute, vijelie02 a spus: Zic si eu, n-ar fi bun si un C de vreo 100nF paralel pentru un debouncing? Paralel cu ce? Cu butonul? Link spre comentariu
Elison Postat Iunie 26, 2020 Partajează Postat Iunie 26, 2020 Corect numai daca pinBT1 este configurat ca pin de intrare. Un alt mod de activare pull-up poate fi acesta: pinMode(2,INPUT_PULLUP); in cazul in care butonul este pe pinul 2 Link spre comentariu
PKP98 Postat Iunie 26, 2020 Partajează Postat Iunie 26, 2020 1 oră în urmă, zvonacfirst a spus: Paralel cu ce? Cu butonul? Da, paralel cu butonul. La apasarea butonului lamelele interne nu intra in contact instant(nu este ideal), apare un regim tranzitoriu (aclansari si declansari repetate ale contactelor). Testand la o frecventa mare starea butonului, deci o perioada mica, este posibil sa prinzi testarea starii butonului fix in momentul cand apare regimul tranzitoriu, astfel citesti o stare eronata. Condensatorul nu permite o variere rapida a tensiunii la bornele sale, astfel tranzitia se face lin. Iti recomand sa faci un debouncing software, adica dupa ce ai testat ca butonul a fost apasat astepti o perioada de timp (50 ms) si testezi din nou starea lui. Bafta! Link spre comentariu
nico_2010 Postat Iunie 27, 2020 Partajează Postat Iunie 27, 2020 Acum 11 ore, Elison a spus: pinMode(2,INPUT_PULLUP); Corect este doar asa. Cat despre condensator, trebuie stabilita valoarea rezistentei de pull-up astfel incat timpul de incarcare sa fie de circa 50-100ms, altfel nu pea este de folos. Link spre comentariu
vijelie02 Postat Iunie 27, 2020 Partajează Postat Iunie 27, 2020 T=R*C , R in ohm, C in farazi si T in secunde. Link spre comentariu
nico_2010 Postat Iunie 27, 2020 Partajează Postat Iunie 27, 2020 E un pic mai complicat decat o simpla rezistenta si un condensator. Un esemplu: https://hackaday.com/2015/12/09/embed-with-elliot-debounce-your-noisy-buttons-part-i/ si aici un altul: https://www.microcontrollertips.com/debouncing-switches-in-hardware-and-software-faq/ Link spre comentariu
zvonacfirst Postat Iunie 28, 2020 Partajează Postat Iunie 28, 2020 Multumesc mult pentru raspunsurile de real ajutor. Dar pentru un incepator apar intotdeauna alte nelamuriri. Daca compilez un soft pentru ATmega328 cu oscilator intern de 8MHz, se misca cu incetinitorul. Daca acelasi soft il compilez pentru oscilator intern de 1MHz se misca muuult mai bine, adica aproape bine dar totusi este lent. Ma asteptam ca la 8MHz sa zbarnaie, sau asa inteleg eu ca trebuie sa functioneze un procesor la frecventa mai mari, mai rapid decat la frecvente mici. Trebuie sa fie o smecherie la mijloc, sau cel putin asa cred. Am citit aici despre o posibila rezolvare si as incerca dar imi este teama sa nu blochez uC-ul. Ce ma sfatuiti? Link spre comentariu
vijelie02 Postat Iunie 28, 2020 Partajează Postat Iunie 28, 2020 Pai e arduino sau doar atmega328? Link spre comentariu
zvonacfirst Postat Iunie 28, 2020 Partajează Postat Iunie 28, 2020 Eu am ATmega328. Link spre comentariu
Postări Recomandate
Creează un cont sau autentifică-te pentru a adăuga comentariu
Trebuie să fi un membru pentru a putea lăsa un comentariu.
Creează un cont
Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!
Înregistrează un nou contAutentificare
Ai deja un cont? Autentifică-te aici.
Autentifică-te acum