 |

|
|
Elektronika.lt portalo forumas
Jūs esate neprisijungęs lankytojas. Norint dalyvauti diskusijose, būtina užsiregistruoti ir prisijungti prie forumo.
Prisijungę galėsite kurti naujas temas, atsakyti į kitų užduotus klausimus, balsuoti forumo apklausose.
Administracija pasilieka teisę pašalinti pasisakymus bei dalyvius,
kurie nesilaiko forumo taisyklių.
Pastebėjus nusižengimus, prašome pranešti.
Dabar yra 2026 02 27, 11:20. Visos datos yra GMT + 2 valandos.
|
|
|
 |
Forumas » Mikrovaldikliai » Programavimo C kalba pamokėlės pradedantiesiems su PIC12F629
|
Jūs negalite rašyti naujų pranešimų į šį forumą Jūs negalite atsakinėti į pranešimus šiame forume Jūs negalite redaguoti savo pranešimų šiame forume Jūs negalite ištrinti savo pranešimų šiame forume Jūs negalite dalyvauti apklausose šiame forume
|
|
|
 |
 |
 |
Programavimo C kalba pamokėlės pradedantiesiems su PIC12F629 |
Parašytas: 2013 05 14, 21:25 |
|
|
|
|
| PauliusA rašo: |
Na bet programavimo metu VPP diodas visaip mirksi, o ne šviečia pastoviai, reiškias +13V tai įsijungia tai išsijungia... Tai man tiesiog programeryje nuo +13V 1K varžike užkabinti ant VPP ir viskas taip ir palikti ?
Dar reiks +5V jungiklį isidėti... |
Ne, varza bandyk deti "Data" grandineje, jeigu tai pades...jeigu ne. tai vietoj varzos statyk mygtuka, kuri nuspaudus sujungtu grandine taip kaip rasiau ankstesniame poste. Picpgm palyginus gana ilgai iesko devaiso, tai turi pakankamai laiko nuspausti mygtuka... |
|
|
|
|
|
 |
 |
Programavimo C kalba pamokėlės pradedantiesiems su PIC12F629 |
Parašytas: 2013 05 15, 17:19 |
|
|
|
|
Bandžiau DATA grandinėje ir 1K varžikę statyti ir mygtuką... Nieko nesigavo. kol data grandinė per mygtuka nutraukta, aptinka iškart JDM programmer. Paspaudus mygtuką nebemato programerio... Pasileidžia ta supersta programa picoje, išvadai nusistato i out ir ragai, kaip minėo sadivas...
Bandžiau 1k varžikę ir ant VPP kabinti, kad visalaik +13V būtų, gavosi š... niekaip nepereina į programavimo rėžimą...
Dairausi kito programatoriaus... gal galėtumėt patarti kokį gamintis? pirkti gatavą nėra noro... |
|
|
|
|
|
 |
Programavimo C kalba pamokėlės pradedantiesiems su PIC12F629 |
Parašytas: 2013 05 15, 18:28 |
|
|
|
|
| Jei sugebėtum padaryti kokį tranzistorinį raktą PIC-o maitinimo komutavimui, gal išsispręstų problema. Pradžioje PIC maitinimas 0. Padavus +13V, po 5us suveiktų raktas, pasiduotų maitinimas į PIC ir viskas būtų OK. T.y. maitinmą PIC-ui paduoti vėliau, nei +13V. |
|
|
|
|
|
 |
 |
Programavimo C kalba pamokėlės pradedantiesiems su PIC12F629 |
Parašytas: 2013 05 15, 18:43 |
|
|
|
|
| PauliusA rašo: |
Bandžiau DATA grandinėje ir 1K varžikę statyti ir mygtuką... Nieko nesigavo. kol data grandinė per mygtuka nutraukta, aptinka iškart JDM programmer. Paspaudus mygtuką nebemato programerio... Pasileidžia ta supersta programa picoje, išvadai nusistato i out ir ragai, kaip minėo sadivas...
Bandžiau 1k varžikę ir ant VPP kabinti, kad visalaik +13V būtų, gavosi š... niekaip nepereina į programavimo rėžimą...
Dairausi kito programatoriaus... gal galėtumėt patarti kokį gamintis? pirkti gatavą nėra noro... |
...aptinka JDM programmer..., po to Picpgm spaudi AutodetectPic ir tik tada spaudi mikrika - ar taip darei? |
|
|
|
|
|
 |
 |
Programavimo C kalba pamokėlės pradedantiesiems su PIC12F629 |
Parašytas: 2013 05 15, 18:59 |
|
|
|
|
| sadivas rašo: |
| Jei sugebėtum padaryti kokį tranzistorinį raktą PIC-o maitinimo komutavimui, gal išsispręstų problema. Pradžioje PIC maitinimas 0. Padavus +13V, po 5us suveiktų raktas, pasiduotų maitinimas į PIC ir viskas būtų OK. T.y. maitinmą PIC-ui paduoti vėliau, nei +13V. |
Atskirai paduoti +5V dar nebandžiau, reiks pabandyti. Juk galima išsiversti ir su paprastu jungikliu?
Pas mane padavus maitinimą iš karto neatsiranda ant VPP +13V...Tai taip išeina, reikia padaryti, kad pastoviai būtų +13V ant vpp ? nepriklausomai nuo kompo siunčiamu signalų? |
|
|
|
|
|
 |
Programavimo C kalba pamokėlės pradedantiesiems su PIC12F629 |
Parašytas: 2013 05 15, 19:04 |
|
|
|
|
| Ingo rašo: |
...aptinka JDM programmer..., po to Picpgm spaudi AutodetectPic ir tik tada spaudi mikrika - ar taip darei? |
Taip ir dariau, paskui išmeta kad no pic connected, paskui no programmer connected... atjungi data, tada viskas ok... |
|
|
|
|
|
 |
 |
Programavimo C kalba pamokėlės pradedantiesiems su PIC12F629 |
Parašytas: 2013 10 03, 06:19 |
|
|
|
|
Sveiki,
Gal galėtumet pagelbėti užstrigau su šiuo algoritmu...
Paduodamas maitinimas, jeigu nenuspaustas mygtukas ant GP3 po 3 sek. užsidega LED1 ant GP2, dar po 3sek. užsidega LED2 ant GP4 ir taip abu ledai šviečia neribotą laiką. Kai nuspaudžiamas mygtukas ant GP3 ir laikomas nuspaustas ne mažiau 3 sek. LED2 išsijungia, dar po 3sek. LED1 išsijungia ir taip abu ledai būna išjungti neribotą laiką, kol laikomas nuspaustas mygtukas ant GP3.
Viskas būtų gerai, tik bėda, kad atleidus mygtuką ledai pastoviai junginėjasi pagal minėtą algoritmą... Gal dar kur kokia sąlygą reikia įrašyti, kad ledai nesimarkstytų...? help...
Procas PIC12F629 kompiliatorius MicroC PRO for PIC.
Proteus schema http://ikelk.lt/i/153099/o_994ee3d78a.png
kodas:
//CONFIG :$2007 : 0x3194
void main() {
CMCON = 7;// Comparator OFF
OPTION_REG = 0b00000000 ;
TRISIO2_bit = 0 ; // GPIO.2 output
TRISIO3_bit = 1 ; // GPIO.3 input
TRISIO4_bit = 0 ; // GPIO.4 output
GPIO =1;
while (1){
if ( GP3_bit == 1 ) {
delay_ms (3000);
GP2_bit = 1;
delay_ms (3000);
GP4_bit = 1;
delay_ms (3000);
GP4_bit = 0;
delay_ms (3000);
GP2_bit = 0;
}
}
}
|
|
Paskutinį kartą redagavo PauliusA, 2013 10 10, 17:01. Redaguota 1 kartą |
|
|
|
 |
 |
Programavimo C kalba pamokėlės pradedantiesiems su PIC12F629 |
Parašytas: 2013 10 03, 07:45 |
|
|
|
|
netikrinau, bet logika pagausi, o sintakses klaidas istaisysi
| Kodas: |
//CONFIG :$2007 : 0x31D4
void main() {
int kb=0; kp=0;
CMCON = 7;// Comparator OFF
OPTION_REG = 0b00000000 ;
TRISIO2_bit = 0 ; // GPIO.2 output
TRISIO3_bit = 1 ; // GPIO.3 input
TRISIO4_bit = 0 ; // GPIO.4 output
while (1){
if ( GP3_bit == 0 ){ // klavisas nuspaustas
if ( kb == 0 ){ // pries tai nebuvo nuspaustas
kp=0; kb=1;
}
else
if ( kp <= 6000) kp++;
}// if GP3
else{ // klavisas nenuspaustas
if ( kb == 1 ){ // pries tai buvo nuspaustas
kp=0; kb=0;
}
else
if ( kp >= -6000) kp--;
}// elseif GP3
if ( kp == -3000) GP2_bit = 1;
if ( kp == -6000) GP4_bit = 1;
if ( kp == 3000) GP4_bit = 0;
if ( kp == 6000) GP2_bit = 0;
delay_ms (1);
}// while
}// main
|
|
|
|
|
|
|
 |
 |
Programavimo C kalba pamokėlės pradedantiesiems su PIC12F629 |
Parašytas: 2013 10 03, 15:45 |
|
|
|
|
Kompiliatorius brauke raudonai kintamajį kp deklaravau jį su char kp pries void main () Nesupratau kodėl kintamojo kb neprašė deklaruot?
Dabar sukompiliavo sėkmingai, tik ikėlus hex į Proteus ir paledus simuliaciją iš karto išmeta du error'us:
Duplicate part reference: R1 {R1}.
Simulation FAILED due to netlist compiler error(s).
Sunkiai man su ta logika, žinių trūksta... Gal jungimo schema pasikeitė?
http://ikelk.lt/i/153099/o_994ee3d78a.png |
|
|
|
|
|
 |
Programavimo C kalba pamokėlės pradedantiesiems su PIC12F629 |
Parašytas: 2013 10 03, 16:16 |
|
|
|
|
| Ingo rašo: |
nagi akivaizdu, jau raudonai pats parašei: dubliuojasi R1
Pataisyk vieną kažkurį iš dviejų R1 rezistorių į R3 |
Nespėjau paredaguoti posto jau pataisiau. Dar pataisiau vietoj
int kb=0; kp=0; parašiau
int kb=0;
int kp=0;
Ir viskas veikia, labai dėkui už pagalbą.  |
|
|
|
|
|
 |
Programavimo C kalba pamokėlės pradedantiesiems su PIC12F629 |
Parašytas: 2013 10 03, 16:38 |
|
|
|
|
| AlgisL rašo: |
Klaidele isivele, vietoje kablelio buvo irasyta kabliataskis. Teisingai turetu buti:
Svarbiausia - ar supratai principa ir kodel tau nedirbo anksciau? |
dėl klaidų tai supratau, na o dėl sintaksės tai reiks dar pastudijuoti, paekspermentuoti...
Algi, kaip man butelį tau perduoti?  |
|
|
|
|
|
|
 |
Google paieška forume |
|
|
 |
Naujos temos forume |
|
 |
FS25 Tractors
Farming Simulator 25 Mods,
FS25 Maps,
FS25 Trucks |
 |
ETS2 Mods
ETS2 Trucks,
ETS2 Bus,
Euro Truck Simulator 2 Mods
|
 |
FS22 Tractors
Farming Simulator 22 Mods,
FS22 Maps,
FS25 Mods |
 |
Dantų protezavimas
All on 4 implantai,
Endodontija mikroskopu,
Dantų implantacija |
 |
FS25 Mods
FS25 Maps,
FS25 Cheats,
FS25 Install Mods |
 |
FS25 Mods
Farming Simulator 25 Mods,
FS25 Maps |
 |
ATS Trailers
American Truck Simulator Mods,
ATS Trucks,
ATS Maps |
 |
RDR2 Mods
Euro Truck Simulator 2 Mods,
WOT Mods,
Assetto Corsa Rally Mods |
|

|
 |