PIC16F876A nejde __delay_ms(500);
Moderátor: Moderátoři
PIC16F876A nejde __delay_ms(500);
takže ledka svítí (když se dá první zhasnout ledku, tak zase zůstane zhaslá). Mám definovanou frekvenci krystalu, u PIC16F630 mi to šlo bez problému. Nevíte někdo čím to je?
edit: používám XC8 compiler
Kód: Vybrat vše
/*
* File: main.c
* Author: TOSHIBA
*
* Created on 19. duben 2015, 18:22
*/
#include <xc.h>
#include <stdio.h>
#include <stdlib.h>
#include <pic16f876a.h>
// CONFIG
#pragma config FOSC = XT // Oscillator Selection bits (XT oscillator)
#pragma config WDTE = OFF // Watchdog Timer Enable bit (WDT disabled)
#pragma config PWRTE = OFF // Power-up Timer Enable bit (PWRT disabled)
#pragma config BOREN = ON // Brown-out Reset Enable bit (BOR enabled)
#pragma config LVP = ON // Low-Voltage (Single-Supply) In-Circuit Serial Programming Enable bit (RB3/PGM pin has PGM function; low-voltage programming enabled)
#pragma config CPD = OFF // Data EEPROM Memory Code Protection bit (Data EEPROM code protection off)
#pragma config WRT = OFF // Flash Program Memory Write Enable bits (Write protection off; all program memory may be written to by EECON control)
#pragma config CP = OFF // Flash Program Memory Code Protection bit (Code protection off)
#define _XTAL_FREQ 4000000
int main(int argc, char** argv) {
ADCON1 = 0b00000110;
CMCON = 0b00000111;
TRISA = 0b00000000;
PORTA = 0b00000000;
while(1){
PORTA = 0b00000001;
__delay_ms(500);
PORTA = 0b00000010;
__delay_ms(500);
PORTA = 0b00000000;
__delay_ms(500);
}
return (EXIT_SUCCESS);
}
- Jeejda_teda_puvodne
- Příspěvky: 142
- Registrován: 08 dub 2012, 00:00
- Jeejda_teda_puvodne
- Příspěvky: 142
- Registrován: 08 dub 2012, 00:00
- Jeejda_teda_puvodne
- Příspěvky: 142
- Registrován: 08 dub 2012, 00:00
-
petrfilipi
- Příspěvky: 2901
- Registrován: 13 zář 2005, 00:00