a_sorien Posted November 11, 2012 Share Posted November 11, 2012 Salutare ! Cum scriu din nou aceasta constanta , inainte de programare ?! Cica e specifica fiecarui cip ." In addition, a calibration instruction is programmed intothe last address of memory, which contains thecalibration value for the internal RC oscillator. Thislocation is always uncode protected, regardless of thecode-protect settings. This value is programmed as aMOVLW XX instruction where XX is the calibration value,and is placed at the Reset vector. This will load the Wregister with the calibration value upon Reset and thePC will then roll over to the users program at address0x000. The user then has the option of writing the valueto the OSCCAL Register (05h) or ignoring it.OSCCAL, when written to with the calibration value, will“trim” the internal oscillator to remove process variationfrom the oscillator frequency.For the PIC12F508/509/16F505 devices, only bits<7:1> of OSCCAL are implemented. Bits CAL6-CAL0are used for calibration. Adjusting CAL6-CAL0 from‘0000000’ to ‘1111111’ changes the clock speed. SeeRegister 4-5 for more information.VDDREXTCEXTVSSOSC1InternalclockPIC16F505NFOSC/4 OSC2/CLKOUTPIC12F508PIC12F509Note: Erasing the device will also erase the preprogrammedinternal calibration value forthe internal oscillator. The calibrationvalue must be read prior to erasing thepart so it can be reprogrammed correctlylater.Note: The 0 bit of OSCCAL is unimplementedand should be written as ‘0’ whenmodifying OSCCAL for compatibility withfuture devices. "Multumesc anticipat! Link to comment
Liviu M Posted November 11, 2012 Share Posted November 11, 2012 Ce programator? Ce soft de programare? Link to comment
a_sorien Posted November 12, 2012 Author Share Posted November 12, 2012 Salut ! E un picp02 de la Adelaida si programez cu winpic800 . Cum citesc constanta asta cred ca stiu , dar cum o salvez din nou la programare..?Trebuie scrisa din nou la 0x3F..? Multumesc..! Link to comment
a_sorien Posted November 12, 2012 Author Share Posted November 12, 2012 Si daca o ignor...?! O sterg la programare si nu ma intereseaza...aplicatia nefiind pretentioasa in acest domeniu .Sau mai bine sa o fac cu rezonator si am scapat de ...problema...!? Insa imi ramane pe creier . Link to comment
Liviu M Posted November 12, 2012 Share Posted November 12, 2012 Atata timp cat nu apesi pe butonul "Scrie", poti sa vezi ce se intampla cand conectezi programatorul la calculator, pui picul in programator si pornesti winpin800. Din cate tin eu minte *), citeste automat valoarea OSCCAL si ti-o arata. Daca stergi valoarea OSCCAL, iti vor functiona corect aplicatiile care nu au nevoie de timpi exacti. Daca reusesti sa-l stergi, cauta pe forum, in cateva topicuri ai sa gasesti niste valori care se potrivesc mai bine decat "totul 0" sau "totul 1".*) Sunt sanse sa ma insel, am testat winpic-ul cu mult timp in urma. Link to comment
a_sorien Posted November 12, 2012 Author Share Posted November 12, 2012 ok, si daca-l vad ...cum il rescriu..?!Odata cu codul sursa..si unde? Ce linie de comanda trebuie sa contina aceasta constanta? Link to comment
Liviu M Posted November 12, 2012 Share Posted November 12, 2012 Nu se scrie in cod, programatorul/softul de programare e cel care se ocupa de asta.Cum exact face winpic asta trebuie sa cauti singur. Cred ca e suficient sa ai grija ca in campul pentru OSCCAL sa fie valoarea care trebuie/sa n-o stergi din greseala. Daca o stergi, nu-i problema, o scrii la urmatoarea programare. Trebuie doar s-o notezi, ca s-o poti rescrie.LE Am instalat acum si winpic800 si picpgm si picpgm mi se pare mai prietenos. Daca as fi in locul tau l-as incerca mai intai pe ultimul (picpgm). Link to comment
MatyC Posted November 12, 2012 Share Posted November 12, 2012 Sa nu ignori valoarea OSCCAL ca eu am patit-o din cauza ei. Un prieten a modificat un program de blink led si la OSCCAL a fost belea. Softul de programare a cerut valoarea default, a dat OK si in final functionarea era haotica. Pana nu am folosit Pickit 2 software pentru recuperare valoare OSCCAL nu a functionat. In cazul meu a fost vorba de un PIC12F675 sau 629 ca nu mai stiu sigur.NU IGNORA VALOAREA OSCCAL, prezenta la unele variante de microcontrolere PIC !!! Link to comment
a_sorien Posted December 7, 2012 Author Share Posted December 7, 2012 Deci , pana acum , mo ucis OSCCAL . PICKIT2 are posibilitatea sa o regenereze , dar eu nu am reusit . Am scris totusi o valoare ( 00ff) in osccal si am decis sa folosesc quartz . La programare insa ma tot avertizeaza ca val osccal nu e cea valida . Mai are importanta acum , daca eu lucrez cu setarea _XT_OSC ..???!! Zau nu inteleg de ce totusi Microchip nu a facut asta in fabrica sa nu ma mai chinuie pe mine...!!?Seta valoarea asta ...implicit...si gata!Ma lumineaza si pe mine cineva..?! Link to comment
Liviu M Posted December 7, 2012 Share Posted December 7, 2012 Uite un topic despre osccal cu niste valori citite din alte pic-uri. Incearca valorile alea, poate-i plac pickitului mai mult si te lasa in pace. PS Despre politica uChip putem doar sa speculam si chiar nu ajuta la nimic. Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now