Jump to content
ELFORUM - Forumul electronistilor

CIBY2

Membru cunoscut
  • Posts

    1,086
  • Joined

  • Last visited

1 Follower

Recent Profile Visitors

1,490 profile views

CIBY2's Achievements

Mentor

Mentor (12/14)

  • Dedicated
  • First Post
  • Collaborator
  • Posting Machine Rare
  • Conversation Starter

Recent Badges

  1. DS1307 la alimentare necesita scrierea bitului 7 din linia secundelor, denumit in datasheet CH (Cloc Halt). Valoarea 1 a acestui bit blocheaza oscilatorul iar valorile din registri sunt statice. Valoarea 0 a CH porneste oscilatorul. La alimentare (sau la prima alimentare daca bateria este montata), valorile din registri sunt nedefinite si pot lua valori aleatorii, CH-ul putand fi fie 1, fie 0. Este recomandat ca la inceputul codului, inainte de bucla principala a programului, sa fie introdusa o secventa de cod de verificare a bitului 7 din linia 00h a memoriei si una de verificare a registrului de control, linia 07h din memorie. Pentru acest registru valoarea folosita in cazul acestui ceas trebuie sa fie 00010000, cea ce inseamna SQW activat pe pinul 7 si 1HZ la iesire. Daca valorile nu sunt cele corecte, atunci se rescrie linia cu pricina. Atentie la linia secundelor unde se pastreaza valoarea citita si se reseteaza doar bitul 7, altfel apar probleme de precizie la nivelul secundelor. Sterge ce este sub acest text. Duplicat! DS1307 la alimentare necesita scrierea bitului 7 din linia secundelor, denumit in datasheet CH (Cloc Halt). Valoarea 1 a acestui bit blocheaza oscilatorul iar valorile din registri sunt statice. Valoarea 0 a CH porneste oscilatorul. La alimentare (sau la prima alimentare daca bateria este montata), valorile din registri sunt nedefinite si pot lua valori aleatorii, CH-ul putand fi fie 1, fie 0. Este recomandat ca la inceputul codului, inainte de bucla principala a programului, sa fie introdusa o secventa de cod de verificare a bitului 7 din linia 00h a memoriei si una de verificare a registrului de control, linia 07h din memorie. Pentru acest registru valoarea folosita in cazul acestui ceas trebuie sa fie 00010000, cea ce inseamna SQW activat pe pinul 7 si 1HZ la iesire. Daca valorile nu sunt cele corecte, atunci se rescrie linia cu pricina. Atentie la linia secundelor unde se pastreaza valoarea citita si se reseteaza doar bitul 7, altfel apar probleme de precizie la nivelul secundelor.
  2. Salut! Am patit si eu la fel cu fasolea mai multi ani la rand. Remediul a fost sa o pun mai deasa, ce ramane, ramane. Dar, exista in comert, si am si folosit, otravuri speciale pentru melci, fie bio, fie chimicale, de regula granule de culoare albastra, moluscocid se numesc generic. Se presara pe deasupra solului astfel incat melcii sa treaca peste ele, moment in care se infesteaza si mor in cateva ore - zile.
  3. Bascom AVR. Este prima data cand incerc comunicarea I2C si 1Wire. In tinerete am mai cochetat cu BASIC-ul si in facultate am studiat Foxpro, care e tot un BASIC orientat pe baze de date. Chiar mi-am facut niste programe de contabilitate si gestiune cu el, functionale, dar asta acum 20 si ceva de ani. Si cum Bascom-ul este tot un Basic, am zis ca experienta din tinerete nu s-a irosit si ca ma descurc si cu el. Dar cred ca problema mea sunt microcontrolerele, chiar daca am idee de functiile logice, cochetand candva cu TTL si CMOS, astea sunt mult mai complexe, iar din datasheet, cu engleza mea, merg mai mult pe ghicite.
  4. Nu este aceasta schema. Am incercat pe doua variante, prima cu Atmega88 si 4 cifre, iar a doua cu Atmega8535, inlocuit ulterior cu Atmega16, cu 6 cifre, folosind la ambele o rutina de afisaj accesata de intreruperea din Timer0, ulterior incercand si cu Timer2. Acum fac referire la cel cu 8535: La pornire, in program, am introdus un cod de scriere a registrului de control al RTC-ului si de setare a bitului de pornire a oscilatorului (bit 7 din prima linie, cea a secundelor din RTC). Am folosit prima data MCP7940 si pe urma am incercat cu DS1307. Stiu ca nu sunt echivalente 100%, dar am scris cod pentru amandoua, folosind aceleasi variabile. Pe liniile SCL si SDA am rezistente de pullup de 4,3 kiloohmi, iar pinii folositi sunt cei dedicati, PC0 si PC1 din Atmega. Dupa scrierea registrului si a bitului de pornire oscilator (1 in cazul MCP si 0 in cazul DS) urmeaza o bucla DO-LOOP, in care in functie de starea unui bit setat de iesirea SQWE din RTC, denumit de mine Set_read_flag, citeste memoria RTC-ului. SQWE este legat la INT0, in asa fel incat citirea sa se faca la fiecare secunda. Daca am vazut ca nu reusesc sa citesc RTC-ul, am introdus diferite valori pentru variabilele ce trebuiesc afisate, pentru a verifica functionarea rutinei de afisaj, si functioneaza, inclusiv cu un cod ce genereaza ceas (secunde, minute, ore) in functie de Timer1. Ma tot gandesc unde am gresit, ce nu am configurat bine. Ca idee, PortulD este folosit pentru comanda LED-urilor si se suprapune peste pinii RXT si TXD ai USART si a trebuit sa dezactivez aceasta functie, netrecand in cod setarea baudrate. Inca o chestie, a trebuit sa dezactivez din fusebits JTAG-ul, care imi bloca o cifra, tot din cauza suprapunerii cu iesirea, dar catre unul din tranzistoarele din anozii afisajelor. Am cerut codul tau in speranta ca imi pot da seama ce setari ai facut tu acolo. Din pacate nu am acum codul scris de mine sa pot posta ce am facut, dar cand ajung acasa o sa incerc sa postez din el. Nici cu DS18B20 nu am reusit sa comunic.
  5. Te rog daca ai timp sa postezi si codul sursa. Am vreo trei ceasuri incepute si nu reusesc sa comunic pe I2C cu RTC-ul, nici cu DS1307 nici cu MCP7940.
  6. Declaratie pe proprie raspundere data la un notar public precum ca e construit in regie proprie. Se mai ataseaza si documente de achizitie pentru diferite componente si materiale incluse in constructie. Asa se procedeaza si pentru alte bunuri mobile construite acasa.
  7. Masca este realizata in Sprint Layout, iar centrul fiecarei gauri l-am marcat cu un pad cu diametrul de 2,54 si gaura de 0,6. Am printat masca pe hartia A4 si cu un adeziv ordinar am lipit pe placa de aluminiu. Apoi am punctat fiecare gaura si pentru precizie am gaurit cu spiral de 1,5 mm si dupa aia cu spiral in trepte. Spiralele in trepte au profil rotund si gaura iese perfect rotunda si curata si bavura pe fata placii. Se inlatura hartia lipita, se lipeste cu rasina epoxidica alta masca de hartie, se aliniaza din gaurile pentru surub si se preseaza intre doua placi drepte, cu greutate deasupra, apoi se decupeaza hartia din gauri cu bisturiul si se lacuieste.
  8. Vad ca esti din Bucuresti. Gasesti in Obor, "la fiare", placi de sticlotextolit fara cupru, diferite grosimi, de la sub 1mm la 4-5mm, dimensiuni aproximativ A4 si A3. Merg foarte bine la carcase si alte aplicatii.
  9. https://www.marcoser.ro/produse/irigare-picurare/fiting/pix-pentru-tub-capilar-2-mm.html 3-4 pixuri pentru fiecare pom, chiar mai multe cand pomii se vor mari, furtun orb de 20, capilare si ai rezolvat problema.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.Terms of Use si Guidelines