Термосенсор: различия между версиями
Строка 73: | Строка 73: | ||
|Регистр запуска непрерываного измерения | |Регистр запуска непрерываного измерения | ||
|WO | |WO | ||
|- | |||
|REF_CLB | |||
|0x38 | |||
|0x01 | |||
|Управление калибруемыми источниками тока и напряжения | |||
|RW | |||
|} | |} | ||
==== Описание регистров ==== | ==== Описание регистров ==== | ||
===== TSENS_CFG | ===== TSENS_CFG ===== | ||
Смещение: 0x1C - регистр настройки термодатчика. Значение после подачи сброса: 0x00000000; | |||
{| class="wikitable" | |||
|31 | |||
|30 | |||
|29 | |||
|28 | |||
|27 | |||
|26 | |||
|25 | |||
|24 | |||
|23 | |||
|22 | |||
|21 | |||
|20 | |||
|19 | |||
|18 | |||
|17 | |||
|16 | |||
|- | |||
| colspan="8" |Зарезервировано | |||
| colspan="8" |Div | |||
|- | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|} | |||
{| class="wikitable" | |||
|15 | |||
|14 | |||
|13 | |||
|12 | |||
|11 | |||
|10 | |||
|9 | |||
|8 | |||
|7 | |||
|6 | |||
|5 | |||
|4 | |||
|3 | |||
|2 | |||
|1 | |||
|0 | |||
|- | |||
| colspan="2" |Div | |||
| colspan="3" |Clk_mux | |||
| colspan="8" |Trim | |||
|Rn | |||
|Npd_Clk | |||
|Npd | |||
|- | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|}Биты 23:14 '''Div''' - Значение делителя тактового сигнала. Частота сенсора определяется как T<sub>SENS</sub> = F<sub>IN</sub>/(Div + 1) | |||
Биты 13:11 '''Clk_mux''' - Выбор источника тактирвоания сенсора (F<sub>IN</sub>): | |||
* 0x0 – системная частота (sys_clk); | |||
* 0x1 – частота шины AHB (hclk); | |||
* 0x2 – частота внешнего осцилятора 32 МГц; | |||
* 0x3 – частота HSI32M; | |||
* 0x4 – частота внешнего осцилятора 32 кГц; | |||
* 0x5 – частота LSI32K | |||
Биты 10:3 '''Trim''' - Колибровочный коэфициент | |||
Бит 2 '''Rn''' - Управление сбросом сенсора, активный уровень «0» | |||
Бит 1 '''Npd_Clk''' - Управление тактированием сенсора: | |||
* 0 – тактирование сенсора выключено; | |||
* 1 – тактирование сенсора включено | |||
Бит 0 '''Npd''' - Управление питанием сенсора: | |||
* 0 – сенсор выключен; | |||
* 1 – сенсор включен | |||
===== REF_CLB ===== | |||
Смещение: 0x38 - регистр калибровочных данных. Значение после подачи сброса: 0x00000100; | |||
{| class="wikitable" | |||
|31 | |||
|30 | |||
|29 | |||
|28 | |||
|27 | |||
|26 | |||
|25 | |||
|24 | |||
|23 | |||
|22 | |||
|21 | |||
|20 | |||
|19 | |||
|18 | |||
|17 | |||
|16 | |||
|- | |||
| colspan="15" |Зарезервировано | |||
| | |||
|- | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|} | |||
{| class="wikitable" | |||
|15 | |||
|14 | |||
|13 | |||
|12 | |||
|11 | |||
|10 | |||
|9 | |||
|8 | |||
|7 | |||
|6 | |||
|5 | |||
|4 | |||
|3 | |||
|2 | |||
|1 | |||
|0 | |||
|- | |||
| colspan="7" |Зарезервировано | |||
|EN | |||
| colspan="4" |Coef_RefIclb | |||
| colspan="4" |Coef_RefVclb | |||
|- | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|rw | |||
|ro | |||
|}Бит 8 '''EN''' - Включение калибровки настройки опорного | |||
Бит 7:4 '''Coef_RefIclb''' - Коэффициент настройки тока | |||
===== Бит 3:0 '''Coef_RefVclb''' - Коэффициент настройки напряжения ===== |
Версия от 16:08, 12 мая 2023
Введение
Сенсор преобразует электрические величины, прямо пропорционально зависящие от температуры кристалла, в двоичное представление этой температуры.
Технические характеристики:
- точность измерения температуры ±0,1 ℃;
- погрешность измерения температуры в диапазоне [–40 °C; 125 °C] не превышает 1 %;
- наличие спящего режима с пониженным потреблением тока;
- функция подстройки для уменьшения влияния разброса техпроцесса.
- Тактовая частота 32КГц-100КГц
Состав и принцип работы сенсора
Структурная схема представлена на рисунке ниже. Сенсор состоит из блока формирования опорного тока, блока формирования двух напряжений база-эмиттер, сигма-дельта АЦП и регистра накопления результатов АЦП.
Блок сенсора основан на биполярных транзисторах, так как их технологический разброс параметров мал по сравнению с альтернативами. Для генерации данных о температуре достаточно всего двух транзисторов в диодном включении, управляемых разными токами. Напряжение база-эмиттер Vbe обратно пропорционально температуре (CTAT), а разница напряжений ΔVbe прямо пропорциональна (PTAT). Эти напряжения линейны, а линейная комбинация создает температурно-независимое постоянное напряжение Vref (рисунок и формулы далее), соответствующее ширине запрещенной зоны.
Основное преимущество такой схемы, что формируемое PTAT напряжение не зависимо от технологического процесса и вычисляется по формуле:
Эти напряжения переводятся в базис заряда и используются сигма-дельта АЦП на переключающихся конденсаторах. Плотность потока на выходе АЦП меняется от 0 до 1 в зависимости от температуры и равна согласно равенству зарядов по формуле 16. Сама температура вычисляется в градусах Цельсия по формуле 17, при A= 619,2 и В= -273,15 (константы, следующие из формул далее)
Регистры управления
Список регистров
Обозначение | Смещение | Начальное значение | Назначение | Доступ |
TSENS_CFG | 0x1C | 0x0 | Регистр настроек | RW |
TSENS_TRESHOLD | 0x20 | 0x0 | Регистр пороговых значений | RW |
TSENS_IRQ | 0x24 | 0x0 | Регистр прерываний | RW |
TSENS_CLEAR_IRQ | 0x28 | 0x0 | Регистр сброса прерываний | W1C |
TSENS_VALUE | 0x2C | 0x0 | Регистр данных | RO |
TSENS_SINGLE | 0x30 | 0x0 | Регистр запуска однократного измерения | WO |
TSENS_ CONTINIUS | 0x34 | 0x0 | Регистр запуска непрерываного измерения | WO |
REF_CLB | 0x38 | 0x01 | Управление калибруемыми источниками тока и напряжения | RW |
Описание регистров
TSENS_CFG
Смещение: 0x1C - регистр настройки термодатчика. Значение после подачи сброса: 0x00000000;
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
Зарезервировано | Div | ||||||||||||||
rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw |
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Div | Clk_mux | Trim | Rn | Npd_Clk | Npd | ||||||||||
rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw |
Биты 23:14 Div - Значение делителя тактового сигнала. Частота сенсора определяется как TSENS = FIN/(Div + 1)
Биты 13:11 Clk_mux - Выбор источника тактирвоания сенсора (FIN):
- 0x0 – системная частота (sys_clk);
- 0x1 – частота шины AHB (hclk);
- 0x2 – частота внешнего осцилятора 32 МГц;
- 0x3 – частота HSI32M;
- 0x4 – частота внешнего осцилятора 32 кГц;
- 0x5 – частота LSI32K
Биты 10:3 Trim - Колибровочный коэфициент
Бит 2 Rn - Управление сбросом сенсора, активный уровень «0»
Бит 1 Npd_Clk - Управление тактированием сенсора:
- 0 – тактирование сенсора выключено;
- 1 – тактирование сенсора включено
Бит 0 Npd - Управление питанием сенсора:
- 0 – сенсор выключен;
- 1 – сенсор включен
REF_CLB
Смещение: 0x38 - регистр калибровочных данных. Значение после подачи сброса: 0x00000100;
31 | 30 | 29 | 28 | 27 | 26 | 25 | 24 | 23 | 22 | 21 | 20 | 19 | 18 | 17 | 16 |
Зарезервировано | |||||||||||||||
rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw |
15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Зарезервировано | EN | Coef_RefIclb | Coef_RefVclb | ||||||||||||
rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | rw | ro |
Бит 8 EN - Включение калибровки настройки опорного
Бит 7:4 Coef_RefIclb - Коэффициент настройки тока