Страница 1 из 1

Атмега328P Термо-сенсор, есть он в нем или нет ?

Добавлено: Вс дек 28, 2025 02:24:39
Ariadna-on-Line
Пробовал читать - возвращается чистый ноль. В даташите написано что сенсор есть во всех 328. Но в форумах - информация противоречивая. Пробовал читать в АТтини85 - там читается и работает вполне нормально. Хотелось бы прояснить тему. С уважением.

Re: Атмега328P Термо-сенсор, есть он в нем или нет ?

Добавлено: Вс дек 28, 2025 06:47:21
akl
У меня нет mega328P, а mega48PA с таким кодом (Aref=AVcc=3V) работает.
Спойлер

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

;	LDI	R16,1<<REFS1|1<<REFS0|1<<ADLAR|1<<MUX3; Aref=1,1V ADC8 смещение
	LDI	R16,0<<REFS1|1<<REFS0|0<<ADLAR|1<<MUX3; Aref=AVcc ADC8 без смещения
	STS	ADMUX,R16

;	LDI	R16,1<<ADEN|1<<ADSC|1<<ADIF|1<<ADIE|1<<ADPS2|1<<ADPS1|1<<ADPS0
	LDI	R16,1<<ADEN|1<<ADSC|1<<ADIF|1<<ADPS2|1<<ADPS1|1<<ADPS0
	STS	ADCSRA,R16
;*****
WAIT_ADSC:
	LDS	R16,ADCSRA
	SBRC	R16,ADSC
	RJMP	WAIT_ADSC
;*****
	LDS	R12,ADCL
	LDS	R11,ADCH
	CLR	R10
СпойлерИзображение
Верхняя часть картинки камень накрыт полиэтиленовым пакетом со снегом. Нижняя часть - камень подогрет паяльником (без энтузиазма). EM08 и N4190 служебная информация.

Re: Атмега328P Термо-сенсор, есть он в нем или нет ?

Добавлено: Вс дек 28, 2025 10:21:43
veso74
Сохранил код ниже как тестовой. По идее имеет" кривые " значения - температура зависит от нагрузки МК и самонагревания.
Для использования уточните свой offset - работа напр. 5-7 минут -> разницу между калиброванным термометром.
Можете не использовать float, напр. умножите на 100.
Спойлер

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

void setup() {
  Serial.begin(9600);

  ADMUX = (1 << REFS1) | (1 << REFS0) | (1 << MUX3);
  ADCSRA |= (1 << ADEN);
}

void loop() {
  ADCSRA |= (1 << ADSC);
  while (ADCSRA & (1 << ADSC));

  int raw = ADCW;

  float temperature = (raw - 324.31) / 1.22;

  float offset = 4.9;
  temperature = temperature + offset;

  Serial.print("Raw ADC: ");
  Serial.print(raw);
  Serial.print("  Temp: ");
  Serial.print(temperature);
  Serial.println(" oC");

  delay(1000);
}

Re: Атмега328P Термо-сенсор, есть он в нем или нет ?

Добавлено: Вс дек 28, 2025 10:53:54
roman.com
Атмега328P Термо-сенсор, есть он в нем или нет ?
есть.
достаточно переключить мультиплексор...

Изображение

другой вопрос что там точность никакая...

Изображение

с такой точностью Термо-сенсор имеет мало пользы))

Re: Атмега328P Термо-сенсор, есть он в нем или нет ?

Добавлено: Вс дек 28, 2025 15:41:39
Ariadna-on-Line
Оказалось что сенсор-таки есть. Определённость -это главное. Даёт отсчеты в пределах 350 - 365 единиц. На нагрев-охлаждение реагирует. Больше его насиловать не хотелось. Достаточно и этого. Заморочка была с целочисленной "арихметикой", а плавающую вводить не хочется. Короче тема исчерпана. Всем спасибо.