Ir ao conteúdo

Mesa de luz controlada por pic


diego.maga

Posts recomendados

Postado

CCS eu não sei, eu programo em BASIC, mas a ideia é simples, você vai precisar de 5 canais AD, e 5 PWM, não são todos os pics que vão ter essa quantidade de AD e PWM, ai a ideia é você ler o valor do ad (0-1023) e jogar no durty do PWM, geralmente o valor de PWM vai de 0-255ai você tem que dividir o valor lido por 4 e jogar no duty.

valor = analógico

valor = valor / 4

pwm_duty = valor

basicamenmte isso, só que você precisa fazer isso em C, eu coloquei dessa forma para entendimento.

Postado

Quando se usa muitos canais PWM,voce faz a programação dos canais por Sofware,assim voce pode fazer quantos canais o pic tiver de pinos livres.

Outro detalhe é que para controlar por PWM a intensidade de luzes,voce vai precisar sincronizar a rotina com a rede AC.

Postado
Quando se usa muitos canais PWM,voce faz a programação dos canais por Sofware,assim voce pode fazer quantos canais o pic tiver de pinos livres.

Outro detalhe é que para controlar por PWM a intensidade de luzes,voce vai precisar sincronizar a rotina com a rede AC.

Entendi, porém não irei utilizar potenciometro para fazer a variação da entrada analógica. Quero tudo por software, o problema é como fazer o pic não ficar "travado " em uma unica lampada.

Postado

Olha,esse assunto é longo e voce vai ter que batalhar e fazer testes.

Se voce sabe programar,conhece eletronica analógica e digital,voce pode estudar o código que fiz como referencia.

Eu tenho um software para PC que faz o que voce quer,mas não terminei o Firmware do PIC na parte de saida das lampadas.

Tenho um exemplo de como seria a saída das lampadas feito em C18,foi usado Leds para teste.

Programei tambem um código para estudo com CCS e 16F628 que é o mesmo código do link acima.

-> CCS PWM 8 Canais Soft<-

Tanto o usado no C18 como o usado no CCS,foram transcritos do original em Assembly e os códigos usados em C foram feitos e conferidos para gerarem as mesmas instruções como se fossem programados em ASM.

Os valores carregados nas variéveis PWM0/PWM7,vão de apagado=1 e máximo brilho = 255.

OBS:No CCS,não use CASE/SWITCH ou altere o código do PWM pois o compilador só gerou um código ASM igual ao Assembly do modo que está,isto é,máximo desempenho.

Os capacitores usados nos terminais de saida eu vou verificar depois na minha placa teste(que não sei onde está)para colocar os valores corretos,com os valores corretos a saída fica zerada com 1 e totalmente acesa com 255.

Eu fiquei com preguiça de colocar em todas as saidas no Proteus.

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

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

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!