10.  Программирование микроконтроллеров и схемотехника.


    10.1 Простой цифровой вольтметр на основе MSP430G2553 (MSP430G2231).


Есть вещи которыми занимаешься не потому, что нужно, а потому, что интересно.

 

  У меня взникла необходимость сделать простой вольтметр. Точнее сделать его быстро и из тех деталей, которые уже есть. То есть ничего не покупая. Это обычная ситуация на моей работе, когда ничего нет, а вольтметр нужен уже.

  Задача делится на две. Подобрать схемотехнику из того что есть и сделать макет, который будет работать. Программу написать «по месту».

  Из микроконтроллеров, оказались только MSP430G2011, 2231 и 2553. Все легко программируются с помощью «LaunchPad» и последние имеют встроенное АЦП на 10 разрядов. С точки зрения схемотехники MSP430G2231 имеет один 8-битный порт и один 2-х битный порт (по умолчанию для подключения кварцевого резонатора). MSP430G2553 имеет то же самое, плюс порт на 6 бит.

  Так как задача простейшая, то «шерстить» интернет, в поисках схемы, не нужно. В первом приближении это должно выглядеть приблизительно так.



  Это будет работать, но. 30 мА, которые теоретически может выдать ножка порта, будут распределяться между 7-мью светодиодами индикатора, что около 4 мА на сегмент или 1 мА учитывая динамическую индикацию. Те индикатор светиться будет, но очень тускло.

  Эту проблему мы решаем легко и здорово, добавляя 4-ре PNP транзистора. Резистор 10 кОм, наверняка, закрывает транзистор, а 1 кОм ограничивает базовый ток до 3 мА.

  Теперь индикаторы включаются логическим «0» на выходах Р2.0 – Р2.3.

  И эта схема, то же, будет работать, но мы мы «убили» почти все потры ввода-вывода. В том числе Р1.0 – Р1.6, с которыми может работать АЦП. И индикация включается логическими нулями, что совершенно неестественно.

  Дешифратор 7-сегментного индикатора (SN7447) преобразует 4-бита в цифру. Комбинация «0000» будет преобразована в «0», «0001» в «1», и тд. Дополнительные символы – на картинке, ниже.

  С дешифратором SN7447 схема будет выглядеть следующим образом.

  Дешифратор 2 на 4, позволит преобразовать два бита на входе в низкий уровень на одном из четырех выходов. На «рассыпухе» это выглядит так.


  Теперь, для уравления четырьмя 7-сегментными индикаторами, достаточно 6-ти бит. Два для разряда и 4 для сегментов. Поэтому логично освободить 8-ми битный порт Р1.х и использовать 6 бит порта Р2.х. Окончательный вариант схемы на рисунке, ниже.

  Такая схема позволяет «прозрачно» выводить информацию на индикатор. Младшие четыре разряда содержат цифру, а два старших (Р2.4 и Р2.5) – позицию. Несколько примеров на рисунке.


  Что бы вывести 4 в нулевом разряде достаточно записать b_000100 в порт Р2, 5 в первом – b_010101, 9 в третьем – b_111001. Комбинация хх1111 выключает индикацию.



3.03.2014  SKootS

_

 
 
Make a Free Website with Yola.