Ir ao conteúdo
  • Cadastre-se

kodorna

Membro Pleno
  • Posts

    21
  • Cadastrado em

  • Última visita

Reputação

2
  1. Eu iria dizer para fazer isso usando uma interrupção.
  2. Você desabilitou os fuse do primeiro comentário, que reseta o pic em tensões baixas ou não estabilizadas de "Brown-out" ?
  3. Não sei te explicar como você fara isso, mas para se trabalhar com tensão de alimentação mais baixa deve reduzir a frequência de operação.
  4. Eu vi vários exemplos, mas é o diferencial de cada compilador mesmo devagarinho vamos pegando essas particularidades. Aqui é como loteria ser taxado, porém menos de 50 dólares acho difícil, tem mesmo é esse roubo de "taxa dos correios" nunca vi ter que pagar frete duas vezes!!! São parceiros da EasyEDA, do próprio editor online você já envia para eles o arquivo GERBER. Também recomendo muito, empresa com produtos acessíveis e bons.
  5. Sim....infelizmente para nós é tudo mais caro, (junta imposto, falta de investimento que gera concorrência e outros fatores) deixa qualquer produção muito cara. Acaba sendo uma pena porque temos muitos hobistas e profissionais que buscam soluções lá fora. A Respeito do código era a sintaxe mesmo, cada compilador tem uma e acaba sendo desafiador e prazeroso buscar a solução. void __interrupt() IRS(void) { if(INTCONbits.T0IF == 1) // testa se houve estouro do timer0 { cont = cont-1; // Decrementa a cada interrupção INTCONbits.T0IF = 0; // seta a flag de interrupçao TMR0 = 0; // inicia o timer em 0 } } no caso acrescentando aqueles dois "__ " e um nome veio a funcionar corretamente. Agora desenvolver a logica! Grato pela ajuda e as dicas e vocês, a solução achei neste link https://www.microchip.com/forums/m1058706-p2.aspx Eu particularmente desenvolvo e compro na EasyEDA --> https://easyeda.com Você cria uma conta ou loga com o google se desejar, tem uma gama de componentes para gerar seu circuito e sua placa com o arquivo GERBER, existem alguns tutoriais no próprio youtube que você pode estar pesquisando que explicam bem o básico para desenhar e compar as PCBs. Demora uns 40 dais dependendo do frete, porém a produção é rápida. A empresa é confiável. pagamento com cartão internacional dólar. em termos de segurança nunca tive problemas, mas é bom sempre comprar com cartão virtual e ficar atento nos correios coma chegada do pacote.
  6. Os 4 bits menos significativos acendem em 0 mesmo! Vou realizar as mudanças e depois posto o resultado, grato pela ajuda. Faz muita diferença para o funcionamento, fora a beleza! essas pequeninas (10x10 cm) são 5 unidades por 2 dólares, o que mata é o frete.
  7. Boa noite pessoal! A um tempo atrás eu montei uma plaquinha com um pic 16f84a, ela está funcionado porém estou usando ela para desenvolver minha logica de programação com o MPLAB e XC8. Sou iniciante, só vi programação em pic em ASM e faz muito tempo, porém em C tenho uma maior facilidade em desenvolver algo. Estou a tentando utilizar o timer0 dele como contador para varredura de botões e outros afins, porém não funciona nada que eu faço, como não tenho experienciaria, e já reli varias vezes o datasheet do mesmo nos bits que devo setar e não consigo sair do lugar, gostaria da ajuda dos mais experientes. codigo: <CODE> #include <stdio.h> #include <stdlib.h> #include <pic16f84a.h> #include <xc.h> #define _XTAL_FREQ 4000000 // CONFIG #pragma config FOSC = HS // Oscillator Selection bits (XT oscillator) #pragma config WDTE = OFF // Watchdog Timer (WDT disabled) #pragma config PWRTE = OFF // Power-up Timer Enable bit (Power-up Timer is disabled) #pragma config CP = OFF // Code Protection bit (Code protection disabled) unsigned cont = 3000; void main(void) { TRISA = 0x1f; TRISB = 0x00; PORTB = 0xf0; INTCONbits.GIE = 1; // habilita interrupção global INTCONbits.T0IE = 1; // habilita interrupção do timer INTCONbits.T0IF = 0; // seta flag OPTION_REG = 0x01; // prescaler 1:256 - TMR0 = 0; // inicia o contador em 0 while(1) { if (cont == 0) { cont = 3000; // inicia a variavel em 3000 PORTB = ~PORTB; // inverte os valores do PORTB } } } void interrupt() { if(INTCONbits.T0IF) // testa se houve estouro do timer0 { cont--; // Decrementa a cada interrupção INTCONbits.T0IF = 0; // seta a flag de interrupçao TMR0 = 0; // inicia o timer0 em 0 } } </CODE> nesse caso acima só estou tentando inverter o estado do portB para enxergar a ação do timer0 funcionando porém não acontece, independente do tempo! Se alguem puder apontar algum erro an minha logica pois compilando está perfeitamente. desde já grato.
  8. Muito boa a placa, porém poderia ter usado o H77 para baratear pois tem somente um PCI Express x16. Claro que também não teria o overclock o que eu acho desnecessário nesse segmento.

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...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!