/* * File: porty.c * Author: Kubalik * * Created on 7. prosinec 2015, 13:08 */ #include "p33EV32GM002.h" // je to v C:\Program Files (x86)\Microchip\xc16\v1.24\support\dsPIC33E\h // od radky 8852 je definovani tech TRIS // dale si udelejte CntrlF a hledejet ve file *.h /* nasledujici makra nastavuji oscilator * hledame v header file * * Macros for setting device configuration registers * pin OSC1 jako I/O pin * vypinaji Watchdog - opet se podivejte do header file, co vsecno se da nastavit * */ _FOSCSEL( FNOSC_FRC ) _FOSC( OSCIOFNC_ON & IOL1WAY_OFF) _FWDT( FWDTEN_OFF ) /* * */ int main() { int i; i = 0; /* sem si dejte breakpoint ! */ TRISA = 0xffff; // zapisujeme do celeho registru najednou TRISAbits.TRISA1 = 0 ; // zapisujeme do prvniho bitu TRISA _TRISA2 = 0; // jina moznost // zapisujeme do 2. bitu TRISA , tohleto je definovano v header file na radku 8855 // vzdycky se podivejte do header, jak to je definovano, NENI to stejne u vsech registru // a samozrejme to muzeme udelat i primo v assembleru asm("bclr TRISA,#3 " ); asm("nop" ); asm("bclr TRISA,#4 " ); TRISB = 0x00; PORTB = 0; TRISBbits.TRISB0 = 1; asm("bset TRISB,#1" ); PORTBbits.RB2 = 1; ANSELB = 0; while(1) { i = PORTBbits.RB1; PORTBbits.RB3 = i; PORTBbits.RB4 = ! PORTBbits.RB4; _RB5 = 1; _RB5 = 0; asm(" btg PORTB,#6 "); } }