Это старая версия документа!


Эксперимент 26. Секундомер

Научившись подключать и управлять светодиодным индикатором попробуем использовать его для отображения данных. Сконструируем простейший секундомер, который отсчитывает и отображает секунды от 0 до 9.

Схема эксперимента

Оставим схему, собранную на прошлом эксперименте. Рисунок 1. Электрическая принципиальная схема эксперимента

Токоограничительные резисторы обязательны!

Рисунок 2. Монтажная схема эксперимента

Программный код эксперимента

Exp25.py
  1. from machine import Pin
  2. import time
  3. _init()
  4.  
  5. segments = [14, 13, 4, 5, 12, 16, 15] # ABCDEFG
  6.  
  7. for s in segments:
  8. led = Pin(s, Pin.OUT).off()
  9.  
  10. digits = [
  11. [1, 1, 1, 1, 1, 1, 0], # 0
  12. [0, 1, 1, 0, 0, 0, 0], # 1
  13. [1, 1, 0, 1, 1, 0, 1], # 2
  14. [1, 1, 1, 1, 0, 0, 1], # 3
  15. [0, 1, 1, 0, 0, 1, 1], # 4
  16. [1, 0, 1, 1, 0, 1, 1], # 5
  17. [1, 0, 1, 1, 1, 1, 1], # 6
  18. [1, 1, 1, 0, 0, 0, 0], # 7
  19. [1, 1, 1, 1, 1, 1, 1], # 8
  20. [1, 1, 1, 1, 0, 1, 1], # 9
  21. ]
  22.  
  23. def draw_time(digit):
  24. for el in enumerate(digit):
  25. if (el[1]):
  26. Pin(segments[el[0]]).on()
  27. else:
  28. Pin(segments[el[0]]).off()
  29.  
  30.  
  31. for digit in digits:
  32. draw_time(digit)
  33. time.sleep(1)

В этой программе мы записали номера выводов микроконтроллера, к которым подключены сегменты индикатора, в массив segments. Порядок перечисления сегментов указан в комментарии в этой строке.

Комментарии используются в программах, чтобы записать какие либо пояснения к коду и предназначены только для человека, который читает код. Комментарии никак не влияют на выполнение программы. В языке Python комментарий начинается с символа #. Также часто комментируют части кода, которые не должны исполняться, но удалять совсем их пока не нужно.