srdjan Postat Iunie 29, 2010 Partajează Postat Iunie 29, 2010 poate iti face bounce butonul si induce in eroare cateva milisecunde microcontroller-ul. de proba ai putea sa faci debounce cu condensator, rezistenta si un trigger Schmitt Link spre comentariu
DarkAngel_Bv Postat Iunie 29, 2010 Partajează Postat Iunie 29, 2010 Va vine sa credeti sau nu, am reusit sa citesc fuse bitii si memoria cu oscilator extern facut cu NE555RA=220 Ohm, RB=680 Ohm,C= 1 nF.Cum trebuiesc setati fusebitii?Acum ii am asa: Link spre comentariu
vasile eugen Postat Iunie 29, 2010 Partajează Postat Iunie 29, 2010 pentru setarea unui quartz de 8 mhz extern in bascom cum trebuie sa setez Link spre comentariu
yo6pir Postat Iunie 29, 2010 Partajează Postat Iunie 29, 2010 Salut baieti, Eu folosesc de foarte multa vreme acest calculator de fusebiti: http://www.engbedded.com/fusecalc/ si nu a dat gres niciodata. Il recomand cu caldura. @DarkAngel_Bv Daca ai reusit sa-i citesti fusebitii, iti recomand sa-l scrii cu setarile "default" si doar dupa aceea sa incerci configuratii mai deosebite. Spor la treaba si numai bine, Ovidiu. Link spre comentariu
MifTy Postat Iulie 1, 2010 Partajează Postat Iulie 1, 2010 ... are cineva nişte surse comentate, C, assembler sau bascom, nu contează, pentru un ceas cu mcu atmel???de preferat pe led 7 segmente, să-mi fac idee de unde pornesc ... Link spre comentariu
stefan_k Postat Iulie 1, 2010 Partajează Postat Iulie 1, 2010 Un exemplu de pornire: in ideea ca se foloseste un cuartz de 16MHz, seteaza timer1 pt a obtine o frecventa de 4Hz. Valorile le poti modifica in functie de frecventa dorita, cat timp se incadreaza in datasheet; eu am facut copy dintr-un loc unde l-am folosit, nu il mai recalculez pt 1Hz. // Atmega88/168void init(void){ // TIMER1 init // running on 16MHz; use timer1, prescaler 256, compare with 15625 // in order to get a frequency of 4Hz (four calls per second) // TCCR1A: no compare pins, no waveform generation; leave it default (to zero) // TCCR1A = 0; // TCCR1B: // WGM12: CTC - clear timer on compare match (OCR1A) // prescaler 256: CS12=1 CS11=0 CS10=0 TCCR1B = (1<<WGM12)|(1<<CS12); // compareA value OCR1A = 15625; // 0x3D09 // timer1 output compare A (match) interrupt enable TIMSK1 = (1<<OCIE1A); // set timer1 counter initial value (not required, default 0) // TCNT1=0x00; // enable interrupts sei();}uint8_t timer_quarters = 4; // count quarters of secondsuint8_t second_elapsed;// rutina de tratare a intreruperiiISR(TIMER1_COMPA_vect){ if (!(--timer_quarters)) { /// A TRECUT O SECUNDA! FA CEVA! second_elapsed = 1; // exemplu timer_quarters = 4; // reset counter }}void main(void){ init(); for(;;) { if (second_elapsed) { second_elapsed = 0; // reset it // FA CEVA! } }} Pentru un exemplu cu afisaje cu 7 segmente, poti sa te uiti peste "Multi-voltmetru cu Atmega8 si afisaj 7 segmente" de pe aici. Nu mai dau linku, ca mi-e lene. Daca sunt intrebari concrete, raspund cu cea mai mare placere. Link spre comentariu
MifTy Postat Iulie 1, 2010 Partajează Postat Iulie 1, 2010 mai precis, când căutam zilele trecute în "cutia cu maimuţe" în căutare de socluri sacrificabile pentru breadboardul ăla, am găsit un afişaj "de ceas" multiplexat fabricat de răposata microelectronica acum 15-20 de ani în urmă... şi m-am gândit să-l folosesc la ceva.şi cum este bun, aduna praful, este pentru ceas, şi celebrele 351 nu se mai fabrică demult ... Link spre comentariu
stefan_k Postat Iulie 1, 2010 Partajează Postat Iulie 1, 2010 Am si eu un afisaj de genul acela, verde, luat cu ganduri marete prin copilarie ... sau cand. Nefolosit. Ma gandeam si eu sa il infig pe o placa cu un mcu, dar ... inca nu i-a venit ceasul.Hmmm. Amu ca mi-ai adus aminte de el ... parca-parca i-as face ceva. Ca m-am cam saturat de proiectul la care lucrez acum, si mi-ar prinde bine o relaxare.No dara. Nu promit nimic, dar ... sunt ceva sanse... Link spre comentariu
MifTy Postat Iulie 1, 2010 Partajează Postat Iulie 1, 2010 io voiam surse, ca să mă prind şi cum se scrie corect un soft pentru aşa ceva...de-aia nu mă interesa prea tare limbajul, mă interesa să fie comentat la greu...din momentul în care te-ai prins care e principiul de bază, poţi să rescrii softul ăla şi în .net dacă te doare mintea, şi îl cunoşti bine...P.S. afişorul meu e roşu, şi mi se pare că e CC... nu mai ştiu bine dacă e în format 12 sau 24 de ore... aflu eu mai pe seară, că acum trebuie să mă cam plimb... Link spre comentariu
ionu x Postat Iulie 1, 2010 Partajează Postat Iulie 1, 2010 am o dilema....as vrea sa folosesc un ATtiny2312 alimentat la 3 sau 4 acumulatori de 1.2V=3,6V respectiv 4,8V dar problema este k fiecare acumulator are 3000mA si mi-e frica sa nu-l ardma puteti ajuta cu sfaturi? Link spre comentariu
stefan_k Postat Iulie 1, 2010 Partajează Postat Iulie 1, 2010 ma puteti ajuta cu sfaturi?Da, pune mana si citeste niste notiuni de baza: ce e ala Volt si ce e ala Amper. Altfel chiar nu stiu ce poti sa faci cu microcontrollerele ...(Hint: primul a fost italian, al doilea francez)Pentru cazul tau particular, sa nu zici ca nu primesti raspuns: poti folosi linistit acumulatorii respectivi, capacitatea lor (Ah) nu "arde" nimic. Doar tensiunea de lucru sa nu o depasesti. Link spre comentariu
Stefan Postat Iulie 1, 2010 Partajează Postat Iulie 1, 2010 pai si bateria de la masina are 12V (14.5) si min 50Ah, oare cum de nu se ard becurile de 20W ?cand nu stiu raspunsul la o intrebare incerc s-o iau prin de deductie logica, daca logica nu ma ajuta apelez la cunsostintele acumulate de internet, abia la final apelez la forum.alt ex: daca la un aparat foto ai 3 acumulatori AAA de 1.2V/buc si 1600mAh si ii inlocuiesti cu alti 3 acumulator de 1.2V/buc la 3000mAh ce crezi ca se intampla ?p.s: si totusi sa pui un zener de 5 ... 5.2V pe alimentarea uC-ului, nu se stie ce se poate intampla din neatentie Link spre comentariu
ionu x Postat Iulie 1, 2010 Partajează Postat Iulie 1, 2010 MifTy totusi puteai atasa si un soft la placa de "joaca"....(daca aveai,daca nu,scuze)...pt uni ca mine le este greu sa faca programe(deocamdata este primul an de programare si nu prea stiu toate comenzile :cry: )chear as accepta si as fi recunoscator dak cnv m-ar putea sjuta sa inteleg mai bine... Link spre comentariu
ionu x Postat Iulie 1, 2010 Partajează Postat Iulie 1, 2010 intrebarea asta am pus-o doar sa ma asigur. ..si eu stiam k un consumator "mananca" doar cat are nevoie....cnv tot imi zicea k o sa-l ard si am zis sa intreb totusi....ms mult de raspunssi notiunile de baza le am stai linistit .....nu cred k strica sa intreb totusi Link spre comentariu
MifTy Postat Iulie 1, 2010 Partajează Postat Iulie 1, 2010 uf, un search pe google găseşte zeci de exemple... uite un exemplu în c: #define F_CPU 8000000UL#include <avr/io.h>#include <util/delay.h>int main(void) { DDRB |= 1<<PB0; /* set PB0 to output */ while(1) { PORTB &= ~(1<<PB0); /* LED on */ _delay_ms(100); PORTB |= 1<<PB0; /* LED off */ _delay_ms(900); } return 0;} sau aşa: #include <avr/io.h>#include <util/delay.h>int main(void){ DDRD = (1 << 4); /* make the LED pin an output */ for(;;){ char i; for(i = 0; i < 50; i++){ _delay_ms(20); /* max is 262.14 ms / F_CPU in MHz */ } PORTD ^= (1 << 4); /* toggle the LED */ } return 0; /* never reached */} vezi şi tu, pentru bascom, alte alea... 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