[ elektrostudio @ 29.12.2012. 16:52 ] @
Dakle ovde ce biti Sinisin projekat ali u ASM-u. Potrebno je pratiti malo i Goran_68 jer ce njihovi primeri biti preradjeni u ASM code da se vidi da ASM nije bauk vec samo treba citati uputstva iz PDF-a za dati mcu i imati malo volje i upornosti.
Upotrebljen je MPLAB IDE 8.88 koji mozete preuzeti sa Microchipovog site-a.


http://www.microchip.com/stell...eId=1406&dDocName=en019469

Nakon instalacije sledi podesavanje okruzenja
[ elektrostudio @ 29.12.2012. 16:57 ] @
Za blink led sledi podesavanje:

[ elektrostudio @ 29.12.2012. 17:01 ] @
Dalja podesavanja...


Dodat je i PRAZAN asm samo da utvrdite da li je sve u redu i da li mozete dalje a znacete da je sve u redu ako dobijete prema slici 23 BUILD SUCCEEDED
[ elektrostudio @ 29.12.2012. 20:15 ] @
Potom iskopirati template iz
c:\Program Files\Microchip\MPASM Suite\Template\Code\
fajl: 16F1827TEMP.ASM u nas direktorij
koji ce nam biti osnova za dalje
[ elektrostudio @ 29.12.2012. 20:54 ] @
dodajte template u project na sledeci nacin i snimite project file
[ elektrostudio @ 29.12.2012. 21:01 ] @
Otvorite template duplim levim klikom na 16F1827TEMP.ASM
[ elektrostudio @ 29.12.2012. 21:09 ] @
SA CTRL+A selektujte sve i selektujte blikled1.asm pa obrisite sve sa CTRL+A i delete zatim sa paste iskopirajte ceo template i sa save snimite izmene
[ elektrostudio @ 29.12.2012. 21:26 ] @
Uklonite template iz project-a i uradite make project
[ elektrostudio @ 29.12.2012. 21:31 ] @
Kada sve uredno prodje asembliranje, linkovanje dobicete da je sve u redu i MPLAB ce preci u DEBUG mode
[ elektrostudio @ 29.12.2012. 21:35 ] @
Klikom na STEP INTO u DEBUG toolbaru mozete sada pratiti step by step sta mcu radi
[ elektrostudio @ 29.12.2012. 21:39 ] @
Videcete da mcu krene i stoji na goto $

jer je to zapravo kraj template-a a mcu stoji - vrti se u petlji goto $

sledi code za inicijalizaciju za Sinisin hardware

dalje ce biti SAMO ASM code sa komentarima da se ne opterecujeno klikovima i slikama

[Ovu poruku je menjao elektrostudio dana 29.12.2012. u 22:51 GMT+1]
[ elektrostudio @ 03.01.2013. 10:03 ] @
Dalje ce sve biti vezano za sam PIC16F1827 ciji data mozete preuzeti sa PIC16F1827 data link
[ elektrostudio @ 03.01.2013. 17:44 ] @
I prvi blink led u ASM-u. Svi komentari su u samom asm file-u. Prilozeni asm i hex file - duzina izvrsnog koda samo 29 word.

Ponovljen je upload jer komentari nisu bili azurirani, sada je sve kako treba


[Ovu poruku je menjao elektrostudio dana 03.01.2013. u 21:38 GMT+1]

[Ovu poruku je menjao elektrostudio dana 03.01.2013. u 21:39 GMT+1]
[ elektrostudio @ 03.01.2013. 20:44 ] @
Posto ne mogu obrisati stari upload, evo asm file kod koga su komentari sredjeni
[ elektrostudio @ 04.01.2013. 18:01 ] @
Ovo je ASM primer goran_68 gde shiftujemo ulevo i tako palimo LED-ovke 0-7 gaseci prethodnu
[ elektrostudio @ 22.03.2013. 20:50 ] @
Koristenje interrupt-a na PIC MCU je vrlo interesantna, s toga donosim jednostavan prg koji LED-ovke pali sa tacnim definisanim vremenom (tacnost zavisi od internog oscilatora i prilicno je precizan). Program je interesantan jer omogucuje da se rade real time aplikacije sa tacnim vremenima. Iz programa se vidi da LED1 blinka sa 100uS, LED2 sa 1mS, LED3 sa 10mS, LED4 sa 100mS, LED5 sa 1sec, LED6 sa 1min, LED7 sa 1h i LED8 sa 1day. Bitove odrade vremena mozete koristiti u nekoj svojoj aplikaciji a posebno je interesantno kada radite PID algoritam za upravljanje nekim procesom kome treba precizna vremenska baza.
[ elektrostudio @ 24.04.2013. 12:24 ] @
Dogadjaj koji se desio mora biti isprican - kada sam sastavljao Sinisinu plocku nisam obracao paznju mnogo vec samo daj da radi. Neverovatno ali sam zaboravio da stavim jumper za napajanje PIC-a!!! Sve dosadanje primere sam radio tako bez jumpera i to je radilo!!! (Doduse ledovke su malo slabije sijale ali mislio sam da su takve kakve jesu). Pitanje kako je radio bez napajanja na PINU14??? Tek kada sam hteo da odradim sledeci primer video sam da nesto ne ide kako treba... Uzmem instrument kad ono na PIN14 imam 2V a nigde nije vezan!!! Naravno, tih 2V je dovoljno da PIC radi. Posle merenja sam shvatio da je napajanje dobijao preko otpornika koji sluze kao PULLUP za tastere i I/O pinova. Naime svaki pin izmedju napajanja i sebe ima kontra diodu koja obezbedjuje da napon na pinu ne premasi napon napajanja te je preko tih dioda PIC napajan. Evo slucaja koji moze biti korisno upotrebljen kada se PIC koristi na baterijskom napajanju ukoliko I/O pinove ne opterecujete previse isti mogu biti i ulaz za napajanje.


A sad sledi program koji jednostavno signale tastera T1 i T2 i dip sw3-1:2 prenosi na izlaz ka LED diodama
[ elektrostudio @ 21.11.2013. 09:13 ] @
Posto je MPLAB prekinut sa odrzavanjem i update prelazimo na MPLAB-X pa slede podesavanja za isti