- www.kazdodennizivot.cz - https://kazdodennizivot.cz -

Programovaní mikroprocesorů PIC v jazyce C (ANCI C)

Co je potřeba pro programování v jazyce C:
->MPLAB X IDE
->MPLAB XC Compilers – podle typu procesoru
Všechno lze v rámci možností stánout na adrese www.microchip.com [1]


MPLAB XC Compilers -> XC8, XC16 nebo XC32 podle typu PICu, který chceme programovat:
v mém případě XC8 -> (PIC10F200, PIC12F675-PIC16F676….)
Problémem je , že se jedná o free verze compilátoru, které využívájí jen jednoduché příkazy z instrukční sady a tak zabírají velký paměťový prostor PICu. Což pro jednoduché aplikace není až takový problém, popřípadě si opatříme mikroprocesor s větší vnitřní pamětí pro program.

Zde jednoduchý prográmek pro rozblikání LED diody.

/*
BLikání LED s PIC12F675
*/

#pragma config CONFIG = 0x3194
#include <xc.h>
#include <stdint.h>

#define LED GPIObits.GP5 // Přiřazení názvu pinu

void delay_ms(unsigned int duration);

// ==================================================================

void main()
{
// konfigurace portu
GPIO = 0; // nastavení portů do nuly
TRISIObits.TRISIO5 = 0; // nastavení pinu jako výstupní

while( 1 )
{
LED = 1;
delay_ms( 1000 );
LED = 0;
delay_ms( 1000 );
}
}
// ==================================================================

void delay_ms(unsigned int duration)
{
unsigned int i;
for(; duration != 0; duration– )
{
for( i = 0; i <= 50; i++ )
{
asm(“nop”);
asm(“nop”);
asm(“nop”);
}
asm(“nop”);
asm(“nop”);
}
}