Fork me on GitHub

Microcontrolandos

O Blog está passando por uma fase de mudanças. Todos os posts estão sendo atualizados, códigos, links e imagens estão sendo arrumados. Conteúdos novos ainda estão por vir.

PIC: MCP41XXX

Compartilhe:


MCP41XXX é uma família de potenciômetro digital de 256 posições e 1 canal. A família é composta por MCP41010 (10k), MCP41050 (50k) e MCP41100 (100k). A comunicação é feita via SPI.

Funcionamento

Para definir o valor do potenciômetro é necessário enviar 2 bytes.

O primeiro byte é o byte de comando:



  • Os bits C1 e C0 são os bits de comando: 00 = comando de escrita, 01 coloca o dispositivo em shutdown;
  • Os bits P1 e P0 são os bits que selecionam um potenciômetro. 01 seleciona o potenciômetro 0.

    O segundo byte define o valor do potenciômetro.

Download

MCP41XXX.zip

Código

/*
MCP41XXX - Potenciometro Digital de 256 posições e 1 canal.
Autor: Tiago Melo
Blog: Microcontrolandos
Compilador: MikroC PRO PIC
Bibliotecas: Soft_SPI
*/
//Pinos do MCP41XXX.
sbit SoftSpi_SDI at RB1_bit;
sbit SoftSpi_SDO at RB1_bit;
sbit SoftSpi_CLK at RB0_bit;
sbit SoftSpi_SDI_Direction at TRISB1_bit;
sbit SoftSpi_SDO_Direction at TRISB1_bit;
sbit SoftSpi_CLK_Direction at TRISB0_bit;
sbit MCP41XXX_CS at RB2_bit;
sbit MCP41XXX_CS_Direction at TRISB2_bit;
void MCP41XXX_Init() {
//Inicia o pino CS como saída e valor inicial = 1.
MCP41XXX_CS_Direction = 0;
MCP41XXX_CS = 1;
}
void MCP41XXX_Write(char valor) {
MCP41XXX_CS = 0;
//Define o valor do potenciômetro 0.
Soft_SPI_Write(0b00010001);
Soft_SPI_Write(valor);
MCP41XXX_CS = 1;
}
void main() {
char valor = 0;
//Inicia a comunicação SPI.
Soft_SPI_Init();
//Inicializa o MCP41XXX.
MCP41XXX_Init();
while(1) {
//Define o valor do potenciômetro.
MCP41XXX_Write(valor++);
//Faz nada por 100ms.
Delay_ms(100);
}
}
view raw MCP41XXX.c hosted with ❤ by GitHub

Escreva um comentário

4 comentários:

  1. 놠토 3003 세다 벳 - Shootercasino 카지노 카지노 카지노 카지노 カジノ シークレット カジノ シークレット 카지노 가입 쿠폰 카지노 가입 쿠폰 11bet 11bet 메리트 카지노 고객센터 메리트 카지노 고객센터 88 All You Need To Know About 튀먹튀 검증 소 검증 먹튀 검증 소 검증 소 검증 소 검먹튀 검먹튀 검먹튀 검증 소 검먹튀 검먹튀 검먹튀 검먹튀

    ResponderExcluir