Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: CTMU
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > PIC
Juggernaut
Здравствуйте. Прошу помощи. Я новичок и немного не понимаю как получить температуру в цельсиях.
Имеется:
PIC32MX130F256D

Внутри имеется температурный сенсор.
В документации к ADC (AD1CSSL) написано следующее:
CSSL13 selects CTMU input for scan;

Код следующий:
CODE
AD1CON1CLR = _AD1CON1_ON_MASK ;
AD1CSSL = 1<<13;
AD1CON1 = (1 << _AD1CON1_ADON_POSITION) | (0x00 << _AD1CON1_FORM_POSITION) |(7 << _AD1CON1_SSRC_POSITION) ;
AD1CON1bits.ADON = 1;
AD1CON1bits.SAMP = 1;
while(!AD1CON1bits.DONE)
;
uint32_t ret= ADC1BUF0;


После запуска на контроллере в ret находится число 0x000003A6 (934).

Вопрос в том как это число привести к градусам. Перерыл кучу документации, ответа так и не нашел.



Redguy
Добрый вечер,
я особо не в курсе, но немного знаком с PIC32.
Цитата(Juggernaut @ Feb 13 2017, 11:43) *
Вопрос в том как это число привести к градусам. Перерыл кучу документации, ответа так и не нашел.

Здесь читали?
Я посмотрел бегло, там есть формула зависимости напряжения от температуры. Напряжение исходя из настроек АЦП получить можно, остальное либо константы, либо настраивается. Точной формулы нет и не будет, написано, что зависит от настроек источника тока, как от параметра, поэтому у каждой настройки своя уникальная формула пересчета.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.