UVV

Управление цифровым потенциометром MCP4251 на PIC16F819

2 сообщения в этой теме

UVV    51

Решил выложить короткий проект для понимания так как в яндексе не смог не чего найти на эту тему

Proteus 8

scheme.thumb.gif.563f6cc219845354e7061805fbbcb1a9.gif

Код для МК PIC16F819 на программе mikroC PRO for PIC

unsigned short i=1,k=0;
void main() 
{
TRISB=0;             //все порты В на выход без этого SPI не будет работать
PORTB=0;
SSPCON=0B00100010;   //ВКЛ SPI частота такта для SPI Fosc/64
Delay_ms(1);
while(1)
{
Delay_ms(20);
if(i)
{
SPI1_Write(0B00010000); //посылаем команду MCP4251 где указывам что будем управлять 
                        //потенциометром №1
SPI1_Write(i++);        //посылаем данные в виде инкремента от 0 до 255 тем самым изменяем 
                        //выходное сопротивления от R=(10КОм/255)
if(i>254)
{
k=1;
i=0;
}
}

if(k)
{
SPI1_Write(0B00000000); //посылаем команду MCP4251 где указывам что будем управлять 
                        //потенциометром №0
SPI1_Write(k++);        //посылаем данные в виде инкремента от 0 до 255 тем самым изменяем 
                        //выходное сопротивления от R=(10КОм/255)
if(k>254)
{
i=1;
k=0;
}
}
}
}

Может и пригодится кому

PIC16F819.rar

Изменено пользователем UVV

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
my504    268

Все отлично. Кроме схемы.

Метод управления током с помощью делителя на базе, да еще и с размахом напряжения от питания до земли - полный идиотизм.

Годный способ спалить потенциометр и транзистор.

:lol:

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас