Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить

PIC16F690 проблема с TIMER0

Сб июл 15, 2017 23:47:29

Не получается запустить TIMER0 PIC16F690 от внешнего тактирования ни в протеусе, ни в макете. Возможно кто-нибудь сталкивался с такой задачей? Подскажите пожалуйста, в чем может быть проблема.
Код:
#include <stdio.h>
#include <stdlib.h>
#include <pic16f690.h>
#include <xc.h>
#pragma config FOSC=INTRCCLK, WDTE=OFF, CP=ON, CPD=OFF, PWRTE=OFF

void delay(char t)
{
    for (char i = 0; i < t; i++)
        for (char j = 0; j < 250; j++)
            NOP();
}

int main()
{
    OSCCONbits.IRCF = 0b110; // Internal 4MHz;

    TRISA=0b111110;
    PORTAbits.RA0=1;
    delay(100);
    PORTAbits.RA0=0;
    TRISB=0;
    TRISC=0;
   
    TMR0=0;
    OPTION_REGbits.T0SE=0;
    OPTION_REGbits.T0CS =1;
    OPTION_REGbits.PSA= 1;
   
    char T=0;
   
    while(1)
    {
        T++;
        PORTC=TMR0;
        PORTB=T;
        delay(2);
    }
}

Re: PIC16F690 проблема с TIMER0

Вс июл 16, 2017 00:14:11

в чем может быть проблема.
Как обычно, в нежелании читать документацию.
У вас все выводы ANх назначены как Analog input, а не Digital I/O.
Init контроллера надо делать полностью...

Re: PIC16F690 проблема с TIMER0

Вс июл 16, 2017 00:42:19

У вас все выводы ANх назначены как Analog input, а не Digital I/O.

Спасибо. Все заработало.
Ответить