Ревич, Ю.В. Программирование микроконтроллеров AVR: от Arduino к ассемблеру

386 Часть 111. Практическое программирование микроконтроллеров АVR коэффициент, равный 640, - после умножения и удаления младшего байта мы будем получать как раз трехзначное число, равное числу десятых долей градуса, - запятую мы выставляем вручную (если в этом рассуждении что-то непонятно, пе­ речтите еще раз разд. « Операции с вещественными числами>> главы 8) . Плохая подгонка под опорное напряжение (диапазон датчика составляет менее чет­ верти от опорного напряжения) скажется в том, что разрешение нашего термометра не будет превышать 0,25 °С, и при возрастании, например, от 2 до 3 градусов мы на дисплее увидим ряд чисел : 2,0, 2,2, 2,5, 2,7, 3 ,0 . Для улучшения разрешения в на­ шем случае придется либо выбирать внешний опорный источник с напряжением около 1 вольта (например, AD 1 5 80), либо усиливать сигнал вдвое-втрое с помощью внешнего операционного усилителя. Ну, или перейти на «продвинутые» модели А VR, в которых опорное напряжение АЦП напрямую подается от встроенного опорного источника (АTmega88 и далее) . Теоретически длительность рабочего состояния складывается из приблизительно 4 мс на пробуждение, 7 мс на считывание данных с осреднением и около 2 мс на вывод результатов: в сумме менее 1 5 мс. 1 5 мс от 2 секунд составит 1 / 1 33 часть, т. е. общее потребление схемы в активном состоянии, составляющее примерно 1 О мА, нужно поделить на 1 33 . К полученным 75 мкА надо прибавить потребление в ре­ жиме «сна>>, которое, согласно моим измерениям, составляло 1 50 мкА, и потребле­ ние дисплея с датчиком (30 + 50 = 80 мкА) . Всего получается примерно 300 мА. В реальности от схемы термометра на макете с контроллером АTmega8A при пита­ нии от источника 5 вольт мне удалось добиться потребления примерно в 350- 400 мкА, причем следует ожидать, что при работе от пониженного напряжения ба­ тареек эта цифра еще снизится . Это позволит работать от трех батареек АА при­ мерно в течение круглого года, но учтите, что ниже -1 О градусов дисплей МТ- 1 ОТ 1 1 все равно не работает, а батарейки при минусовых температурах сильно проседают в емкости. Потому эксплуатировать эту конструкцию зимой на улице может быть затруднительно. Можно пристроить к этому термометру и часы DS- 1 3 07, теоретических проблем для этого нет, и на экономичности это не скажется, даже улучшит ситуацию, т. к. мы сможем «будить» контроллер от прерывания SQW, выключив WatchDog и не тратя времени на полную загрузку. Но на семисегментных дисплеях без двоеточия время отображается плохо, потому от мысли добавить к температуре время здесь придется отказаться. К законченным часам с дисплеем мы обратимся в главе 16 при рассмотрении дис­ плеев со встроенными контроллерами.

RkJQdWJsaXNoZXIy MTExODQxMg==