Sari la conținut
ELFORUM - Forumul electronistilor

Automat sonerie


Traxxx

Postări Recomandate

Vreau si eu sa fac o sonerie automata pentru liceu, proiectul este "aproape" gata dar sunt blocat la un pas...destul de mare. Eu dupa ce termin liceul nu cred ca va fi cineva din clasele mici care sa fie pasionat de uC si sa programeze soneria daca se schimba programa scolara.Problema este ca pana acum functioneaza bine (in proteus) dar vreau sa pot schimba orele de sunat din butoane si nu doar prin reprogramarea uC. Daca are cineva timp sa ma ajute voi fi recunascator :jytuiyu

 

Momentan setarea orei este in urmatorul cod (ora,minut , ora,minut ,.....8:1...15:0)

 

unsigned char orar_normal[29]={14, 8,1 ,8,50 ,9,0 ,9,50 ,10,0 ,10,50 , 11,10 ,12,0 ,12,10 ,13,0 ,13,10 ,14,0 ,14,10 ,15,0};

Pot face modificari si de schema,nu conteaza ce si cum. Multumesc noob64 :)

Link spre comentariu
  • Răspunsuri 11
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • Traxxx

    7

  • bercioiu

    2

  • nooob64

    1

  • ratoiul

    1

Top autori în acest subiect

Imagini postate

Ce am facut este simplu . Sa zicem ca avem un vector (unsigned char orar_normal[29]) , memorarea acestui vector in eeprom este foarte simpla , iti alegi o adresa de start si una de stop si intr-un FOR memorezi fiecare element al vectorului in intervalul adresei de start/stop , la fel si cu citirea .

   for(j = orar1_start;j <= orar1_stop;j++)     {     EEPROM_Write(j,orar_normal[j-orar1_start]);//adresa , valoare     delay_ms(25);     }

Sa mai adaugat un meniu in care se pargurge vectorul si se seteaza fiecare valoare , iar la iesire din meniu se apeleaza functia de salvare .

Link spre comentariu
  • 3 săptămâni mai târziu...
  • 9 luni mai târziu...

Am realizat practic automatul, dar are ceva probleme, noob64 nu mai are ideei si nici timp, se descurca mai bine pe atmel iar eu nu am inceput cu atmel, curand am cumparat un usbasp, dar montajul este deja creat, in caz ca nu gaseste nimeni o rezolvare o sa apelez la un atmega8 (in timpul liber a lui noob64). Rog pe cineva care doreste sa se uite putin peste sursa daca este ceva gresit, problemele le expun mai jos.post-39305-139829544565_thumb.jpgpost-39305-13982954456_thumb.jpg?v=uqVyKi0kb1Y&feature Probleme:1- ds1307 nu memoreaza data si ora dupa caderea tensiunii de 5v (bateria este bine legata si are 3v)2- In filmare se vede clar cum sare cate o secunda la 20-30 secunde(de la quart pic nu cred ca este, am folosit valoare mai mica 8mhz dar era afisarea mai lenta si se comporta la fel)3- Ziua cu data nu sunt identice (17.01.2012 = marti , am incercat sa modific dar a facut si mai urat)Ce se afla in arhiva ruleaza cu MikroC si Proteus

post-39305-13982954457_thumb.jpg

Link spre comentariu

Am pus pentru cine vrea solutia cu zilele

 

void Display_Time(char sec, char min, char hr, char week_day, char day, char mn, char year) {   switch(week_day){     case 0: txt="DUM"; break;     case 1: txt="LUN"; break;     case 2: txt="MAR"; break;     case 3: txt="MIE"; break;     case 4: txt="JOI"; break;     case 5: txt="VIN"; break;     case 6: txt="SAM"; break;   }

A patit cineva sa nu functioneze corect ds1307? ma gandesc ca el o fi problema :jytuiyu

Link spre comentariu

Parerea mea este ca nu sare secunde, este problema de afisare, se decaleaza perioada de afisare. Ai pus langa el un ceas sa vezi daca intr-adevar sare?Referitor la faptul ca nu tine minte data si ora la deconectarea sursei este clar problema de baterie de backup: conexiuni gresite, lipituri reci, traseu intrerupt, baterie descarcata.Succes!

Link spre comentariu

Salut, mersi de interes macar asa imi fac si eu sperante. icon_hang Bateria este si e conectata bine, am masurat direct pe pinii la ds1307 daca ajunge tensunea de la baterie, este prezenta si cand se intrerupe alimentarea.

Link spre comentariu

Dupa 3 zile de functionare am constatat ca intradevar este o problema de afisare. Daca intr-un minut sare 2-3 secunte la urmatorul minut revine la normal si iar sare si iar revine...Stie cineva daca e problema in program?? s-a uitat careva macar de curiozitate daca e corect la ds1307 memorare/citire

Link spre comentariu

Banuiam ca este o problema de afisare... Pai, ce sa-ti zic... la cat timp citesti-afisezi? Mai joaca-te cu intervalul acela.Referitor la faptul ca nu tine minte ora setata nu are ce sa fie altceva decat hw.Mai incearca totusi si alt DS.Succes!

Link spre comentariu

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 cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări