Elison Postat Octombrie 7, 2016 Partajează Postat Octombrie 7, 2016 Daca ai inteles ce se intampla cu variabilele neinitializate si daca ai facut debounce hardware, o sa-ti functioneze corect montajul. Pe de alta parte, cred ca pe un forum, indiferent de ce spun participantii la discutie, este normal sa ne comportam civilizat si sa nu privim pe nimeni de sus, chiar daca credem ca stim perfect totul. Intentia mea a fost doar de a te ajuta, iar reactiile care au urmat dupa prima mea postare in acest topic m-au dezamagit si m-au dus cu gandul la o celebra zicala romaneasca. Imi cer scuze pentru offtopic si iti urez succes. Link spre comentariu
Myhayxx Postat Octombrie 7, 2016 Autor Partajează Postat Octombrie 7, 2016 (editat) Inca odata imi cer scuze daca ti s-a parut ca am fost nepoliticos. Emoticonul respectiv a fost sub forma de gluma. O chestie de moment. Chiar n-a fost cu intentie. Dupa ce am postat am vrut sa modific dar ce e scris, scris ramane. Nu cred ca mi se potriveste zicala aceea romaneasca daca e ceea ce cred eu pentru ca nu-mi sta in caracter un asfel de comportament Editat Octombrie 7, 2016 de Myhayxx Link spre comentariu
Rabulea Sergiu Postat Octombrie 8, 2016 Partajează Postat Octombrie 8, 2016 Cam asa as vedea eu lucrurile: unsigned short current_duty, Button_state;#define false 0#define true 1void InitMain() { PORTA = 0; TRISA = 0; PORTB = 0; TRISB = 0xff; PORTC = 0; TRISC = 0; TRISD = 0xfd; Button_state = 0; PWM1_Init(5000);} void main() { InitMain(); current_duty = 20; PWM1_Start(); while (1) { if (RB6_bit) { Delay_ms(10); while (RB6_bit){ if(current_duty < 255) { current_duty++; PWM1_Set_Duty(current_duty); Delay_ms(100); } } } if (RB7_bit) { Delay_ms(10); while (RB7_bit){ if(current_duty > 0) { current_duty--; PWM1_Set_Duty(current_duty); Delay_ms(100); } } } if (PORTB.B5){ Delay_ms(10); if (PORTB.B5){ Button_state = true } } if ((PORTB.B5==0) && (Button_state == true)){ Button_state = false; ~PORTD.B1 }}} Link spre comentariu
aureliu67 Postat August 31, 2017 Partajează Postat August 31, 2017 Salut. Imi cer mii de scuze ca poluez topicul aici dar nu am vrut sa deschid topic nou. Am o problema cu pic 16f877a. Mai exact problema consta nu in PIC ci in placa realizata pt el. Pe placa de dezvoltare merge perfect. Pe placa realizata de mine nu merge bine. Ciudatenia consta in faptul ca functioneaza corect cand ating cu degetul unii pini ai picului. Mai des se intampla cand ating pinii alimentati cu 5v. Am incercat sa conectez pinii cu 5v la diferiti pini ai picului prin o rezistenta de 75k. Rezultatele sunt f modeste Nu am reusit sa am un rezutat ferm. Cineva are o idee unde sa caut problema? Alimentarea este sigura pt ca am led de control pt asta Link spre comentariu
nico_2010 Postat August 31, 2017 Partajează Postat August 31, 2017 Dar rezistenta de 10k intre pinul MCLR si +5V ai pus-o? Link spre comentariu
aureliu67 Postat Septembrie 15, 2017 Partajează Postat Septembrie 15, 2017 Rezistenta exista, la fel exista si rezonatorul extern cu condensatorii de 22 pf, desi in program nu este activat. cel extern. Link spre comentariu
mars01 Postat Septembrie 15, 2017 Partajează Postat Septembrie 15, 2017 (editat) 16f877a nu are oscilator intern prin urmare trebuie selectat corect in firmware / CONFIG register, tipul de oscilator extern folosit. Probleme de instabilitate pot fi generate de: - tensiune de alimentare sub valoarea minim acceptata de microcontroler / lipsa condensator de decuplare de 0.1 uF intre pinii de alimentare ai uC-ului. - lipsa rezistorului de cca 4.7K .... 47K intre VCC si pinul MCLR - oscilator instabil, configurat incorect sau conectat incorect. BTW, rezonatoarele ceramice au nevoie si de un rezistor de cca 1Mo conectat in paralel, ca sa porneasca (au factorul Q mai mic). Cristalele de cuartz nu au nevoie. LE: Se pare ca uC-ul are deja un rezistor paralel integrat (cu valoare intre 2Mo si 10Mo): http://ww1.microchip.com/downloads/en/DeviceDoc/31002a.pdf Editat Septembrie 15, 2017 de mars01 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