|
|
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 2024 12 22, 07:52. Visos datos yra GMT + 2 valandos.
|
|
|
|
Forumas » Mikrovaldikliai » Kaip MPLABe daryti uzlaikyma?
|
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
|
|
|
|
Kaip MPLABe daryti uzlaikyma? |
Parašytas: 2010 03 13, 13:40 |
|
|
|
Seniau programas PICams rasydavau per CCS kompiliatoriui, kuris turejo 'delay_us(100)' , 'delay_ms(100)' .... .Dabar bandau tiesiogiai rasyti su MPLABu ir ten kazkoks neaiskus helpas.... - klausimas kaip MPLABE (C klaboj, PIC32 procui) parasyti uzlaikyma (nurodant milisekundes... o ne ciklu kieki ...)?
p.s. MPLABo labai slykstus helpas lyginant su MikroC ar su CCS |
|
|
|
|
|
Kaip MPLABe daryti uzlaikyma? |
Parašytas: 2010 03 13, 20:09 |
|
|
|
negi niekas neraso programu 32 bitu PICams su MPLABu? - tai tada patarkit su kuo geriau rasyt, kad nebutu tokiu problemu su elementariu uzlaikymu...? (nes su kuo as moku MikroC ir CCS nepalaiko 32 serijos PICu) |
|
|
|
|
|
Kaip MPLABe daryti uzlaikyma? |
Parašytas: 2010 03 13, 20:43 |
|
|
|
Kodas: |
void delay_ms(unsigned int ms){
unsigned int i;
for(i=0; i<ms; i++){
__delay_cycles(1ms) //pauze 1ms, ciklu sk. pasiskaiciuoji pagal dazni
}
}
|
|
|
|
|
|
|
Kaip MPLABe daryti uzlaikyma? |
Parašytas: 2010 03 13, 20:52 |
|
|
|
centronic rašo: |
Kodas: |
void delay_ms(unsigned int ms){
unsigned int i;
for(i=0; i<ms; i++){
__delay_cycles(1ms) //pauze 1ms, ciklu sk. pasiskaiciuoji pagal dazni
}
}
|
|
na kiek suprantu tu man siulai savo sukurti 'laikrodi' kuris suks ciklus ratu kol skaitliukas mazesnis uz norimo uzlaikymo reiksme..... ta as jau ir esu padares savo programoje, bet negi nera kazko panasaus i "delay_ms(10)" kaip ant CCS komiliatoriaus, kuriam nebereikia skaiciuoti ciklu skaiciu (aisku dazni pradzioje nurodai "#use delay(clock=80M, oscillator=20M)" ir paskui tik rasai norimos reiksmes uzlaikyma... "delay_ms(10)") |
|
|
|
|
|
|
Kaip MPLABe daryti uzlaikyma? |
Parašytas: 2010 03 13, 20:58 |
|
|
|
centronic rašo: |
Kodas: |
void delay_ms(unsigned int ms){
unsigned int i;
for(i=0; i<ms; i++){
__delay_cycles(1ms) //pauze 1ms, ciklu sk. pasiskaiciuoji pagal dazni
}
}
|
|
p.s. tokiu primityviu budu skaiciuojant uzlaikymus , apskaiciavus tiksliai vienos ms uzliakyma ir juos kartojant norima kartu kad gauti konkretu uzlaikyma - Gaunamas mikro sekundziu nesutapimas per visas tas "for..... " skaitliuko komandas.... Norint pasidaryt tikslesni skaitliuka reikia gudresnes programulkos.... , as ja jau turiu (bet dar reikia 'islaizyti' kad neliktu nano sekudziu nesutapimu) , bet noretus kazka standartinio is MPLAB bibliotekos.... |
|
|
|
|
|
|
Kaip MPLABe daryti uzlaikyma? |
Parašytas: 2010 03 13, 21:07 |
|
|
|
as turiu taip pasirases ant avr
Kodas: |
#define f_cpu 16000000
#define msek (f_cpu / 1000)
void delay_ms(unsigned int ms){
unsigned int i;
for(i=0; i<ms; i++){
__delay_cycles(msek);
}
}
|
uztenka irasyt uC dazni ir nieko nereikia skaiciuot, neidealus tikslumas, bet uztenka |
|
|
|
|
|
Kaip MPLABe daryti uzlaikyma? |
Parašytas: 2010 03 13, 21:42 |
|
|
|
Dovydas rašo: |
Tiksliausias užlaikymas tik naudojant Taimerius. |
...galbut.
Del tikslumo as seip uzsiminiau, o taimeriu nesinoretu apkraut tokiais darbais... (paskui dar pertrauktis persipildzius taimeriui naudot...) |
|
|
|
|
|
Kaip MPLABe daryti uzlaikyma? |
Parašytas: 2010 03 13, 22:38 |
|
|
|
dariusmano rašo: |
Dovydas rašo: |
Tiksliausias užlaikymas tik naudojant Taimerius. |
...galbut.
Del tikslumo as seip uzsiminiau, o taimeriu nesinoretu apkraut tokiais darbais... (paskui dar pertrauktis persipildzius taimeriui naudot...) |
Tikriausiai ir CCS užlaikymo funkcija naudojo taimerius, tad nuo Taimerių neišsisuksi. |
|
|
|
|
|
|
Kaip MPLABe daryti uzlaikyma? |
Parašytas: 2010 03 13, 22:42 |
|
|
|
Dovydas rašo: |
dariusmano rašo: |
Dovydas rašo: |
Tiksliausias užlaikymas tik naudojant Taimerius. |
...galbut.
Del tikslumo as seip uzsiminiau, o taimeriu nesinoretu apkraut tokiais darbais... (paskui dar pertrauktis persipildzius taimeriui naudot...) |
Tikriausiai ir CCS užlaikymo funkcija naudojo taimerius, tad nuo Taimerių neišsisuksi. |
na jei niekas nepasiulis kanors is MPLAB biblioteku, naudosiu savo sukurta ciklu skaitliuka.... (kol nereikia didelio tikslumo, geriau taimerius pataupyt) . aisku nera labai patogus naudojimas, bet teks kentet (dabar prie PIC32MX440 bandau jungti LCD ir fotokamera isluptus is SIEMENS CX70 - cia kad paziureti PICo galingumus... (LCD jau piesia... , raso.... )) |
|
|
|
|
|
|
Kaip MPLABe daryti uzlaikyma? |
Parašytas: 2011 06 22, 22:27 |
|
|
|
Prikelsiu seną temą. Vėlinimui Microchip'as savo programų pavyzdžiuose naudoja tokią funkciją:
#define SYS_FREQ (80000000)
void DelayMs(unsigned int msec)
{
unsigned int tWait, tStart;
tWait=(SYS_FREQ/2000)*msec;
tStart=ReadCoreTimer();
while((ReadCoreTimer()-tStart)<tWait); // wait for the time to pass
}
Čia naudojamas vidinis MIPS branduolio taimeris, kuris kaip ir nėra įtrauktas į PIC32 taimerių skaičių. Todėl jei rūpiniesi dėl Timer1-Timer5, tai jie nebus naudojami |
|
|
|
|
|
|
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 |
|
VAT calculator
VAT number check,
What is VAT,
How much is VAT |
|
LEGO
Mänguköök,
mudelautod,
nukuvanker |
|
Thermal monocular
Thermal vision camera,
Night vision ar scope,
Night vision spotting scope |
|
FS25 Mods
FS25 Harvesters,
FS25 Tractors Mods,
FS25 Maps Mods |
|
Dantų protezavimas
All on 4 implantai,
Endodontija mikroskopu,
Dantų implantacija |
|
FS25 Mods
FS25 Maps,
FS25 Cheats,
FS25 Install Mods |
|
GTA 6 Weapons
GTA 6 Characters,
GTA 6 Map,
GTA 6 Vehicles |
|
FS25 Mods
Farming Simulator 25 Mods,
FS25 Maps |
|
ATS Trailers
American Truck Simulator Mods,
ATS Trucks,
ATS Maps |
|
|
|