Ir ao conteúdo
  • Cadastre-se

venturafvj

Membro Júnior
  • Posts

    5
  • Cadastrado em

  • Última visita

Reputação

1
  1. Vamos ver, int X -> o compilador interpreta a variável X como 8bits, inteiro sem sinal (0 – 255). %d -> o compilador interpreta que a variável a ser impressa no LCD é do tipo 8bits com sinal (-128 - 127). %u -> o compilador interpreta que a variável a ser impressa no LCD é do tipo 8bits sem sinal (0 - 255). Então deveria ser printf(lcd_putc,"%u",X); Digita printf() depois type specifiers em pesquisar no arquivo de ajuda do ccs, dá uma lida e terás mais respostas, principalmente se precisar aumentar valor dessa contagem. Obs: não olhei todo o código somente bati o olho e vi que o tipo de dados recebido pela função printf não é compatível com o tipo de variável declarada em X.
  2. Caro, para ter acesso ao registrador usando o ccs antes do main faço assim: #byte timer0 = 0x01// acesso ao registrador completo. #bit timer0_b5 = 0x01.5 // acesso ao bit 5 do registrador timer0 no main é só fazer: timer0 = 0x00; //ou 0b00000000; timer0_b5 = 1; existe outras formas de acessa-los mas está é a que menos utiliza memória. O mikroc e melhor nesse quesito já que não precisa saber a posição da memória do registrador.
  3. Caro, da uma olhada nos artigos do Cláudio Larios, ele tem vários projetos de controle remoto rf, já fiz a muito tempo um controle que controlava velocidade e sentido do motor e direção com servo motor além de alguns botões on/off disponível com um pic 12f675 no tx e outro no rx com módulos rf de 433mhz. Vou logo avisando que a frequência do pwm é baixa mas para um brinquedo serve de sobra. Larios.tecnologia.ws/iBlog/
  4. Olá Isadora, obrigado pela dica, conheço o fórum do Claudio Larios, essa cara é muito bom e já fiz alguns dos projetos dele, portanto consegui substituir o lote que tinha do 16f1615 por outro com o mesmo vendedor, ontem quando cheguei em casa a primeira coisa que fiz foi grava-los com o código que tinha feito e de primeira funcionou certinho, ou seja, para cada frequência que eu escolhia tinha 1/4 na saída clockout do pic, nem precisei mexer no OSCTUNE que é usado no ajuste fino, testei todos eles e todos estão funcionando, diante disso, finalmente fui dormir em paz.
  5. PIC16f1615, Calibração do oscilador interno Caros, Gostaria de relatar um problema na esperança de consegui solução, tenho alguns PIC’s 16f1615 e estou querendo utiliza-los em um projeto porém de primeira me esbarrei em um problema relacionado ao oscilador interno “INTOSC”, quando eu defino o oscilador para trabalhar a 4Mhz por exemplo, o ciclo de máquina deveria ser 1us “1Mhz” mas na verdade está em 0,726us “1,377Mhz”, segundo o dataheet o registrador OSCTUNE pode ser utilizado para calibrar o oscilador interno mas mesmo definido o OSCTUNE para a menor frequência ele fica em 0,765us “1,307Mhz” e a maior frequência ele fica em 0,677us “1,477Mhz” , devido a este problema não consigo ter uma base de tempo +- correta ou 1us “1Mhz” +-1%, já programei vários PIC’s da serie 12f/16f com oscilador interno descalibrado e consegui calibrar usando o OSCAL, mas esse 16f1615 está difícil, já li o datasheet diversas vezes principalmente a sessão OSCILADORES e não consigo achar nada que sugere uma solução para este caso, este microcontrolador tem um total de 49 instruções e lembra muito os da serie 18f. Obs: programo tanto em C CCS como em assembly e defino o RA4 como clockout “INTOSC + CLOCKOUT em RA4” para tentar calibrar utilizando um frequêncimetro ou osciloscópio, se alguém mais experiente tiver alguma ideia de como eu saio dessa enrascada agradeço. Estou quase convencido que adquiri um lote de 16f1615 falsos ou com bug, estou apostando mais que sejam falsos já que mesmo com oscilador externo a frequência interna não fica correta "Fosc/4" mas na verdade fica em 30,7% a mais, a exemplo coloquei um oscilador cristal 20Mhz e programei um código para gerar 1000Hz no pino C0 mas na verdade ele fica em 1307Hz, o mesmo código em outros PICs que tenho 16f e 18f fica certinho 1000Hz, testei a maioria dos periféricos como ADC, CCP1, PWM, TIMER's, INTERRUPÇÕES eles exitem no pic mas como é de se esperar o PWM e os TIMER's não trabalham na frequência correta. Vou entrar em contado com o vendedor e vê no que dá.

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