====== Programování PIC ====== ===== Kompilátory ===== * MPLAB * [[http://www.ccsinfo.com/|CCS C]] ===== Knihovny ===== * Microchip ===== Nahrávání kódu ===== Nejběžnějším řešením je program zkompilovat do formátu [[http://cs.wikipedia.org/wiki/Intel_HEX|.hex]] a tento soubor vypálit do paměti procesoru programátorem [[http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1406&dDocName=en023805|PICkit]]. K tomu určený programovací modul je [[cs:picprogusb|PICPROGUSB02A]]. Který je kompatibilní s originálním programátorem Microchip Pickit2. ==== Připojení mikroprocesoru ==== Procesorový modul se propojuje s programátorem přes programovací kablík s 5ti vodiči. Je vhodné jej vylepšit protažením a zkroucením drátu skrz prázdnou dutinku (Konektor se jednak lépe vyndavá a zároveň to i prodlužuje životnost vodičů). {{:pic_programming_cable.jpg?direct&200|Vylepšený programovací kablík PIC}} {{:cs:pic18f4550_mlab_programming.jpg?direct&300|Připojení programátoru k procesorovému modulu}} ==== Linux ==== Instalace vcetne vyvojoveho prostredí je popsána zde http://hackaday.com/2010/11/03/how-to-program-pics-using-linux/ === Nahrávání programu === Výhodou kompatibility modulu [[cs:picprogusb|PICPROGUSB02A]] s programátorem PicKit2 je, že k němu jsou dostupné i drivery pro linux. Je jednak k dispozici přeložený balík z [[http://deb.urriellu.net/|repozitáře]] pro debian like systémy (jako třeba Ubuntu). V tomto repositáři ale [[http://curuxa.org/en/Pk2cmd_manual_installation|není balík pro 64bit systémy]]. Je proto vhodnější si jej samostatně přeložit. Tento postup je ověřen v Ubuntu 13.04 Naistalujeme potřebné nástroje sudo apt-get install git gcc g++ make libusb-dev stáhneme a přeložíme zdrojové kódy pk2cmd git clone https://github.com/jda/pk2cmd.git cd pk2cmd make linux Pokud vzniknou nějaké chyby, tak je to pravděpodobně způsobeno chybějícími balíky v systému. Jinak můžeme binární soubory naistalovat do systému. sudo make install V případě, že máme [[cs:picprogusb|PICPROGUSB02A]] připojený k počítači a procesoru, můžeme vyzkoušet správnou komunikaci. $ pk2cmd -P Auto-Detect: Found part PIC16F887. Operation Succeeded čtení programu z paměti procesoru provedeme přikazem pk2cmd -PPIC16Fxx -GF/home/my_user/my_program.hex Zápis pk2cmd -PPIC16Fxxx -M -Y -W -F./main.hex Zápis a spuštění (uvolnění MCLR) bez ověření zápisu pk2cmd -PPIC16Fxxx -R -M -W -F./main.hex Ověření pk2cmd -PPIC16Fxxx -Y -Fmy_program.hex Napájet zařízení lze i z programátoru pomocí pk2cmd -PPIC16Fxxx -A3.3 -T [[http://curuxa.org/en/Program_PICs_with_a_PICkit2_using_the_command_line_on_Linux|Zdroj Curuxa]] ==== Windows ====