Dúvida no CCS

Software e Hardware para uC PIC

Moderadores: andre_luis, 51, guest2003, Renie

Dúvida no CCS

Mensagempor ÁgioFelipe » 28 Jun 2010 11:06

Pessoal vejam o seguinte código:

Código: Selecionar todos
#define Botão PIN_A0
#define Controle PIN_A2

#byte Ra = 0x05
#bit Buzzer = Ra.4
#define Válvula PIN_A5



void main()
{

   setup_adc_ports(NO_ANALOGS|VSS_VDD);
   setup_adc(ADC_OFF);
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_64);
   setup_timer_1(T1_DISABLED);
   setup_comparator(NC_NC_NC_NC);
   setup_vref(FALSE);


while(1)
   {
   output_bit(Válvula,1);

    Buzzer = 1;

   }




Porque no proteus válvula vai para 1 e buzzer não vai?
ÁgioFelipe
Word
 
Mensagens: 626
Registrado em: 27 Out 2006 20:04

Mensagempor Sergio38br » 28 Jun 2010 11:23

Alguns pics tem o Pino 4 como open drain, coloca um pull-up, e verifica

[ ]'s
Sergio
Avatar do usuário
Sergio38br
Word
 
Mensagens: 759
Registrado em: 22 Nov 2007 13:39
Localização: São Paulo - SP

Mensagempor xultz » 28 Jun 2010 12:17

O CCS aceita variável com acento?
98% das vezes estou certo, e não estou nem aí pros outros 3%.
Avatar do usuário
xultz
Dword
 
Mensagens: 3001
Registrado em: 13 Out 2006 18:41
Localização: Curitiba

Mensagempor _blackmore_ » 28 Jun 2010 13:33

conforme observação do xultz ... o CCS não aceita acentuação no código, apenas onde colocamos os textos, observações em geral.
Ouça mais classic rock
_blackmore_
Dword
 
Mensagens: 1397
Registrado em: 28 Set 2008 13:26

Mensagempor ÁgioFelipe » 28 Jun 2010 14:17

Desculpe, isso foi um erro na hora de postar o código.
Aqui vai o código correto:
Código: Selecionar todos

#byte Ra = 0x05
#bit Buzzer = Ra.4
#define Valvula PIN_A5

void main()
{

   setup_adc_ports(NO_ANALOGS|VSS_VDD);
   setup_adc(ADC_OFF);
   setup_timer_0(RTCC_INTERNAL|RTCC_DIV_64);
   setup_timer_1(T1_DISABLED);
   setup_comparator(NC_NC_NC_NC);
   setup_vref(FALSE);

while(1)
   {
output_bit(Valvula,1);

   Buzzer = 1;

   }

}


A dúvida é seguinte: Esse código tá compilando, mas na hora de executar Valvula vai pra 1 mas Buzzer não.
ÁgioFelipe
Word
 
Mensagens: 626
Registrado em: 27 Out 2006 20:04

Mensagempor Sergio38br » 28 Jun 2010 14:32

qual pic vc esta usando, verifica se o pino 4 não é coletor aberto neste modelo..

[ ]'s
Sergio
Avatar do usuário
Sergio38br
Word
 
Mensagens: 759
Registrado em: 22 Nov 2007 13:39
Localização: São Paulo - SP

Mensagempor ÁgioFelipe » 28 Jun 2010 18:04

Não é coletor aberto não.
Já tá tudo certo, tive que ver o assembly gerado para resolver o problema.
Quando se usa
#byte Ra = 0x05 #bit Buzzer = Ra.4 e depois Buzzer = 1;
Você está trabalhando diretamente com os bits, então você que se encarregue de configurar este bit como saída.
Ao contrário de output_bit(Valvula,1); Que o código gerado já configura aquele bit como saída.

Valeu.
ÁgioFelipe
Word
 
Mensagens: 626
Registrado em: 27 Out 2006 20:04


Voltar para PIC

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante

x