Ir ao conteúdo

Problema na saída dos pinos do Pic


Fernandes F.C.

Posts recomendados

Postado

Olá galera do fórum,

Preciso muito da ajuda de vocês... tenho me empenhado na projeção de um sistema de pisca led usando um Pic para no futuro fazer o controle de um robô.

Já troquei de PIC's várias vezes até chegar no Pic 18f4620 de 40 pinos, sendo que seu uso é definitivo para o resto do meu projeto.

Sinto que até aonde eu cheguei está certo, eu consigo fazer o Led piscar e consigo controlar o tempo em que ele pisca facilmente, entretanto, só consigo manipular um de cada vez, ou seja, independente de quantos Leds eu coloque ás saídas do Pic somente 1 irá piscar.

Vocês tem alguma ideia do que seja?!

Eu desconfio de que esteja faltando algum pragma, então, eis aqui os que eu já usei:

#pragma config OSC = INTIO67 //Internal RC, OSC1 as RA7, OSC2 as RA6

#pragma config WDT = OFF //desabilita watchdog

#pragma config MCLRE = OFF //desabilita o MCLR

Obrigado pela atenção !

Postado

Os LEDs estão todos ligados no mesmo pino? Ou está um LED em cada pino? Como está o driver do LED? Poste o seu código e circuito para a gente tentar identificar o problema.

Postado

#include	<P18F4620.h>
#include <delays.h>


//Nomeando variáveis
#define LED0 PORTAbits.RA0
#define LED1 PORTAbits.RA1

// Configurações
#pragma config OSC = INTIO67 //Internal RC, OSC1 as RA7, OSC2 as RA6
#pragma config WDT = OFF //desabilita watchdog
#pragma config MCLRE = OFF //desabilita o MCLR
#pragma config STVREN = OFF //Stack Full/Overflow Reset
#pragma config LPT1OSC = OFF
#pragma config IESO = ON



void main(void){

OSCCON = 0b10101110;



//configurando os pinos como saída
TRISAbits.TRISA0=0;
TRISAbits.TRISA1=0;

ADCON1=0b11110000;



//aciona todos os LEDs
LED0=1;
LED1=1;

//Espera 2 segundos
Delay10KTCYx(5); // 0,5 s

//Desliga todos os LEDs
LED0=0;
LED1=0;

//Espera 2 segundos
Delay10KTCYx(5); // 0,5 s

}

Então...eu quero ligar um LED em cada pino, pois quero fazer o controle de várias situações ao mesmo tempo.

Na verdade, o que eu fizer com esses LEDs será feito para acionamento de motores e sensores com drivers de potência e outros circuitos, então não é interessante para mim ter o controle de apenas um LED.

Postado

Galera, só pra tentar ser um pouco mais claro eu vou colocar as tentativas que eu já fiz na hora de fazer a ligação:

1º método: Como somente um pino funciona de cada vez eu verifiquei se o problema não era com os demais pinos, fazendo o seguinte:

*quando eu colocava RA0 e RA1 no código do programa, somente o RA0 acendia e apagava, então eu retirei o RA0 e gravei de novo...desse jeito o RA1funcionou.

2º método: Coloquei os dois LEDs em um pino só... desse jeito os dois funcionaram, mas aí não é interessante para mim, pois eu preciso fazer o controle de várias situações ao mesmo tempo.

De acordo com mais tentativas que eu fizer e as dicas que vocês derem eu vou postando os resultados. Obrigado pela atenção, se eu soubesse que a galera respondia tão rápido e que era tão atenciosa já tinha entrado pro Clube do Hardware a mais tempo !

Abraço...

A linguagem usada é o C

A princípio eu quero que todos os LEDs acendam

//aciona todos os LEDs
LED0=1;
LED1=1;

e depois eu quero que após um intervalo todos apaguem

/Espera 2 segundos
Delay10KTCYx(5); // 0,5 s
//Desliga todos os LEDs
LED0=0;
LED1=0;

Observação: DESCONSIDERE ESSE 0,5 SEGUNDOS POR QUE A FREQUÊNCIA UTILIZADA ESTÁ DIFERENTE.

Esse programa é o básico do básico mesmo, por que de acordo com o fluxograma do robô que eu estou projetando eu vou precisar acionar um motor de cada vez, isso significa que, se os LEDs fossem os motores, enquanto um estivesse ligado o outro estaria desligado, mas aí já é outra questão...no momento eu só quero que todos acendam e depois de um tempo apaguem e assim sucessivamente.

Postado
Poxa...qualquer ajuda é muito bem vinda

mas CCS não é linguagem para Html?

No meu caso eu estou trabalhando com microcontroladores

CCS é diferente de CSS. CCS é um compilador da linguagem C, e CSS ou cascading style sheets é um script que define propriedades visuais de uma página da web...

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...