Вольтметр на PIC

Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 378
Зарегистрирован: Вс сен 11, 2011 12:35:11

Сообщение AVT-28 »

Добрый всем.
Тем про вольтметры сотни, я много схем пролапатил, и свою проблему не нашел.
Мне нужен цифровой вольтметр на PIC МК.
У меня есть макетка с 16f887 я на ней все отлаживаю что могу а потом всё это дело перевожу на другой контроллер, травлю плату и так далее.
Так вот запускаю макетку, делаю делитель напряжения с 15 вольт до 5 вольт.
При 15 вольт АЦП на дисплей кажет 1024. Всё прекрасно то что надо!
А теперь я начинаю понижать напряжение и тут начинается хренотень!!
+- 0.1 вольт АЦП не реагирует. То есть сотые вольта он не замеряет, это беда!
Мне надо очень.
Не уже ли надо еще что то дополнительно делать до АЦП?
Мне нужен предел от 10вольт до 15 c сотыми вольт в общем как в обычном дешевом тестере.
Не могу решить проблему. Может я как то не так напрограммил?
Вот кусочек кода который мне показания даёт с АЦП.

Код: Выделить всё

int vol()
{
	CHS0 = 0;
	CHS1 = 0;
	CHS2 = 0;
	ADON=1;
	GODONE = 1;		// Start conversion
	while(GODONE);	// Wait until conversion success
	return (ADRESH<<2)+(ADRESL>>6);
}

int Voltage = vol();
Я вот думаю может конывертация кривая?
return (ADRESH<<2)+(ADRESL>>6);

Тут ошибка?
Реклама
Потрогал лапой паяльник
Аватара пользователя
Сообщения: 378
Зарегистрирован: Вс сен 11, 2011 12:35:11

Сообщение AVT-28 »

Разобрался.
ADCS0 = 0;
ADCS1 = 1;

FOSC/32 надо было сделать. Только не понимаю как это влияло.
Реклама
Ответить

Вернуться в «PIC»