Site Loader

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π½Π° PIC16F628A. Π‘Ρ…Π΅ΠΌΠ° ΠΈ описаниС

Π­Ρ‚ΠΎ схСма простого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° построСнного Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π΅ PIC16F628A ΠΈ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅Β LCD 1602. ИдСя Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° позаимствована с ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚ΡƒΠ³Π°Π»ΡŒΡΠΊΠΎΠ³ΠΎ сайта ΠΏΠΎ радиоэлСктроникС.

ΠœΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ PIC16F628A Π² Π΄Π°Π½Π½ΠΎΠΉ схСмС тактируСтся ΠΎΡ‚ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся достаточно Ρ‚ΠΎΡ‡Π½Ρ‹ΠΌ для Π΄Π°Π½Π½ΠΎΠ³ΠΎ случая, Π½ΠΎ ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π²Ρ‹Π²ΠΎΠ΄Ρ‹ 15 ΠΈ 16 ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ нСзанятыми, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшний ΠΊΠ²Π°Ρ€Ρ†Π΅Π²Ρ‹ΠΉ Ρ€Π΅Π·ΠΎΠ½Π°Ρ‚ΠΎΡ€ для большСй точности.

Π’Π°ΠΉΠΌΠ΅Ρ€ Π½Π° PIC16F628A. ОписаниС Ρ€Π°Π±ΠΎΡ‚Ρ‹

Как ΡƒΠΆΠ΅ Π±Ρ‹Π»ΠΎ сказано Ρ€Π°Π½Π΅Π΅, этот ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ создан Π½Π° основС ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π½ΠΎ Π½Π° самом Π΄Π΅Π»Π΅ ΠΎΠ±Π΅ схСмы ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°, ΠΈ поэтому ΠΊΠΎΠ΄ Π±Ρ‹Π» практичСски ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ пСрСписан. Π’ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π΅ для управлСния Π΅ΡΡ‚ΡŒ Ρ‚Ρ€ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ: Β«START/STOPΒ», Β«MINΒ» ΠΈ Β«SECΒ»

  1. Β«START/STOPΒ» β€” для запуска ΠΈ приостановки Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°.
  2. Β«MINΒ» β€” для установки ΠΌΠΈΠ½ΡƒΡ‚. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΌΠΈΠ½ΡƒΡ‚ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ 0 Π΄ΠΎ 99, Π° Π·Π°Ρ‚Π΅ΠΌ всС начинаСтся снова с 0.
  3. Β«SECΒ» β€” для установки сСкунд. Π‘Π΅ΠΊΡƒΠ½Π΄Ρƒ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ 0 Π΄ΠΎ 59 ΠΈ ΠΏΠΎΡ‚ΠΎΠΌ снова с 0.

ΠžΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ΅ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ Π½Π° Β«MINΒ» ΠΈ Β«SECΒ» ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ сбросу Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π²ΠΎ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Когда врСмя Π½Π° Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π΅ достигаСт 00:00, раздаСтся Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнал (3 ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΡ… ΠΈ 1 Π΄Π»ΠΈΠ½Π½Ρ‹ΠΉ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнал) ΠΈ свСтодиод HL1 загораСтся. Π’ качСствС звукоизлучатСля ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ Π·ΡƒΠΌΠΌΠ΅Ρ€ элСктромагнитного Ρ‚ΠΈΠΏΠ°. ПослС этого, ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΊΠ½ΠΎΠΏΠΎΠΊ, происходит сброс Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ свСтодиода HL1.

Когда Ρ‚Π°ΠΉΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ отсчСт Π½Π° Π²Ρ‹Π²ΠΎΠ΄Π΅ 13 (RB7) находится высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ, Π° ΠΏΡ€ΠΈ остановкС Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° появляСтся Π½ΠΈΠ·ΠΊΠΈΠΉ логичСский ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ. Π”Π°Π½Π½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для управлСния внСшними ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ устройствами. ΠΏΠΈΡ‚Π°Π½ΠΈΠ΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° осущСствляСтся ΠΎΡ‚ cстабилизированного источника Π½Π° 78L05.

ΠŸΠ΅Ρ€Π΅ΠΌΡ‹Ρ‡ΠΊΠ° J1 ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для ΠΊΠ°Π»ΠΈΠ±Ρ€ΠΎΠ²ΠΊΠΈ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. ΠŸΡ€ΠΈ Π΅Π΅ Π·Π°ΠΌΡ‹ΠΊΠ°Π½ΠΈΠΈ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² Ρ€Π΅ΠΆΠΈΠΌ настройки. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ½ΠΎΠΏΠΎΠΊ Β«MINΒ» ΠΈ Β«SECΒ» ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ/ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Π·Π°ΠΌΠ΅Π΄Π»ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΡΠΊΠΎΡ€ΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ сохраняСтся Π² EEPROM. Если Π½Π°Ρ…ΠΎΠ΄ΡΡΡŒ Π² этом Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«START/STOPΒ», Ρ‚ΠΎ этот ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ±Ρ€ΠΎΡˆΠ΅Π½ Π΄ΠΎ значСния ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ.

Код написан ΠΈ скомпилирован с mikroC PRO для PIC.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°:

  • Π“Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€: INTOSC
  • Частота Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°: 4 ΠœΠ“Ρ†
  • Π‘Ρ‚ΠΎΡ€ΠΎΠΆΠ΅Π²ΠΎΠΉ Π’Π°ΠΉΠΌΠ΅Ρ€: ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½
  • Power-up Ρ‚Π°ΠΉΠΌΠ΅Ρ€: Π²ΠΊΠ»ΡŽΡ‡Π΅Π½
  • RA5/MCLR/VPP : ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½
  • Brown-out: Π²ΠΊΠ»ΡŽΡ‡Π΅Π½

Π€ΠΎΡ‚ΠΎ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ³ΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°:

Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ ΠΈ рисунок ΠΏΠ΅Ρ‡Π°Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹ (unknown, скачано: 3 209)

Π’Π°ΠΉΠΌΠ΅Ρ€ Π½Π° PIC16F628A | ВсС своими Ρ€ΡƒΠΊΠ°ΠΌΠΈ

ΠžΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π» admin | Π”Π°Ρ‚Π° 14 дСкабря, 2014

Β Β Β Β Β ΠŸΠΎΠ»Ρ‚ΠΎΡ€Π° Π³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄ Π½Π° сайтС я рассказал ΠΎ ΠΊΡƒΡ…ΠΎΠ½Π½ΠΎΠΌ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π΅. ΠŸΡ€ΠΈΡˆΠ»ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ с ΠΏΡ€ΠΎΡΡŒΠ±ΠΎΠΉ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ с ΠΎΠ±Ρ‰ΠΈΠΌ ΠΊΠ°Ρ‚ΠΎΠ΄ΠΎΠΌ Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ с ΠΎΠ±Ρ‰ΠΈΠΌ Π°Π½ΠΎΠ΄ΠΎΠΌ. Идя Π½Π° встрСчу ΠΏΠΎΠΆΠ΅Π»Π°Π½ΠΈΠ΅ΠΌ, я пСрСписал ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Но Π½Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ измСнСния ΠΊΠΎΡΠ½ΡƒΠ»ΠΈΡΡŒ ΠΈ элСктричСской схСмы устройства.


Для упрощСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π±Ρ‹Π»ΠΎ принято Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ схСму ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ свСтодиода, ΠΈΠ½Π΄ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ Π½Π°Ρ‡Π°Π»ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Π’Ρ‹Ρ…ΠΎΠ΄ Π½Π° свСтодиод Π±Ρ‹Π» ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ с Π²Ρ‹Π²ΠΎΠ΄Π° 13 DD1, это сСдьмой разряд ΠΏΠΎΡ€Ρ‚Π° Π’, Π½Π° пятнадцатый Π²Ρ‹Π²ΠΎΠ΄ – ΡˆΠ΅ΡΡ‚ΠΎΠΉ разряд ΠΏΠΎΡ€Ρ‚Π° А. Π’ ΠΎΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΌ схСма ΠΎΡΡ‚Π°Π»Π°ΡΡŒ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅. ΠšΡΡ‚Π°Ρ‚ΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ составной Ρ‚Ρ€Π΅Ρ…Π°ΠΌΠΏΠ΅Ρ€Π½Ρ‹ΠΉ транзистор КВ973А Π² Π΄Π°Π½Π½ΠΎΠΉ конструкции я Π΄ΡƒΠΌΠ°ΡŽ Π½Π΅ цСлСсообразно, Π΄Π° ΠΈ Π½Π΅ всСгда ΠΎΠ½ оказываСтся ΠΏΠΎΠ΄ Ρ€ΡƒΠΊΠΎΠΉ Π² Π½ΡƒΠΆΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚. Для усилитСля ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠ² Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ частоты ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ΄ΠΎΠΉΡ‚ΠΈ ΠΈ ΠΌΠ°Π»ΠΎΠΌΠΎΡ‰Π½Ρ‹ΠΉ транзистор КВ361Π“.


Β Β Β Β Β Π•Π³ΠΎ ΠΌΠΎΡ‰Π½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ»Π»Π΅ΠΊΡ‚ΠΎΡ€Π° составляСт 150 ΠΌΠΈΠ»Π»ΠΈΠ²Π°Ρ‚Ρ‚. Π‘ΠΌΠΎΡ‚Ρ€ΠΈΠΌ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ. Но Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ, Ссли Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ транзистор Ρ‚Π΅ΠΏΠ»ΠΎΠΎΡ‚Π²ΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚ΡŒ ΠΈΠ· ΠΌΠ΅Π΄Π½ΠΎΠΉ полоски. Π¨ΠΈΡ€ΠΈΠ½Π° полоски Ρ€Π°Π²Π½Π° ΡˆΠΈΡ€ΠΈΠ½Π΅ корпуса транзистора, Π΄Π»ΠΈΠ½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Π°Ρ. Π˜Π·Π³ΠΈΠ±Π°Π΅Ρ‚ΡΡ полоска Π² соотвСтствии с Ρ„ΠΎΡ‚ΠΎ.


     Из Π±ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ½ΠΊΠΎΠΉ полоски дСлаСтся Π·Π°ΠΆΠΈΠΌ, Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΈ ΠΈΠ· Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ полоски, Ρ‡Ρ‚ΠΎ ΠΈ сам Ρ‚Π΅ΠΏΠ»ΠΎΠΎΡ‚Π²ΠΎΠ΄. Π’Π΅ΠΏΠ»ΠΎΠΎΡ‚Π²ΠΎΠ΄ одСваСтся Π½Π° корпус транзистора Ρ‡Π΅Ρ€Π΅Π· Ρ‚Π΅ΠΏΠ»ΠΎΠΏΡ€ΠΎΠ²ΠΎΠ΄Π½ΡƒΡŽ пасту. ΠšΠ°Ρ‡Π΅ΡΡ‚Π²Π΅Π½Π½ΠΎ сдСланный Ρ‚Π΅ΠΏΠ»ΠΎΠΎΡ‚Π²ΠΎΠ΄ «сидит» Π½Π° корпусС транзистора довольно ΠΏΡ€ΠΎΡ‡Π½ΠΎ ΠΈ ΠΌΠΎΡ‰Π½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ»Π»Π΅ΠΊΡ‚ΠΎΡ€Π° транзистора ΠΏΡ€ΠΈ этом ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΡΡ‚ΠΈΠ³Π°Ρ‚ΡŒ 500… 700 ΠΌΠΈΠ»Π»ΠΈΠ²Π°Ρ‚Ρ‚.


А громкости Π·Π²ΡƒΠΊΠ° ΠΏΡ€ΠΈ Ρ‚Π°ΠΊΠΎΠΉ мощности транзистора Π²ΠΏΠΎΠ»Π½Π΅ достаточно Π΄Π°ΠΆΠ΅ для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… ΠΏΠΎΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΉ. Π’Π΅ΠΌ Π±ΠΎΠ»Π΅Π΅ Ρ‡Ρ‚ΠΎ транзистор Π² Π΄Π°Π½Π½ΠΎΠΉ схСмС, Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅, ΠΈ коэффициСнт ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠ³ΠΎ дСйствия ΠΏΡ€ΠΈ этом ΠΎΡ‡Π΅Π½ΡŒ большой. Если Π² ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΎΡ‚ΠΎΠ³Π½ΡƒΡ‚Ρ‹Ρ… сторон полоски ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ отвСрстиС, Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠΉ Ρ‚Π΅ΠΏΠ»ΠΎΠΎΡ‚Π²ΠΎΠ΄ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΡ€Π΅ΠΏΠΈΡ‚ΡŒ ΠΊ ΠΏΠ»Π°Ρ‚Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²ΠΈΠ½Ρ‚ΠΈΠΊΠ°, Π΄ΠΈΠ°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ 2… 3 ΠΌΠΌ. На всС ΠΏΡ€ΠΎ всС Ρƒ мСня ΡƒΡ…ΠΎΠ΄ΠΈΡ‚ ΠΏΡΡ‚ΡŒ ΠΌΠΈΠ½ΡƒΡ‚. Рисунок ΠΏΠ΅Ρ‡Π°Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΈΠ· ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠΈ Β«Π’Π°ΠΉΠΌΠ΅Ρ€ для ΠΊΡƒΡ…Π½ΠΈΒ», внСся ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ нСбольшиС измСнСния Π² Ρ‚ΠΎΠΏΠΎΠ»ΠΎΠ³ΠΈΡŽ ΠΏΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² Π² соотвСтствии с этой схСмой ΠΈΠ»ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ самим.

Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ β€œΠ’Π°ΠΉΠΌΠ΅Ρ€ Π½Π° PIC16F628A” Timer_628_OA.rar – Π—Π°Π³Ρ€ΡƒΠΆΠ΅Π½ΠΎ 960 Ρ€Π°Π· – 40 KB

ΠžΠ±ΡΡƒΠ΄ΠΈΡ‚ΡŒ эту ΡΡ‚Π°Ρ‚ΡŒΡŽ Π½Π° — Ρ„ΠΎΡ€ΡƒΠΌΠ΅ «Π Π°Π΄ΠΈΠΎΡΠ»Π΅ΠΊΡ‚Ρ€ΠΎΠ½ΠΈΠΊΠ°, вопросы ΠΈ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹».

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ΠΎΠ²:7Β 623


ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ элСктронный Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π½Π° PIC16F628A. Π‘Ρ…Π΅ΠΌΠ°

Π­Ρ‚ΠΎΡ‚ простой Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π½Π° PIC16F628AΒ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° ΠΊΡƒΡ…Π½ΠΈ, Π΄Π° ΠΈ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° ΠΊΡƒΡ…Π½Π΅, Π° Π²Π΅Π·Π΄Π΅ Π³Π΄Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‚ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΠΊ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΎΡ‚ 1 Π΄ΠΎ 99 ΠΌΠΈΠ½ΡƒΡ‚. Основой Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° являСтся ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ PIC16F628A – достаточно популярный ΠΈ Π½Π΅ Π΄ΠΎΡ€ΠΎΠ³ΠΎΠΉ. Π’ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… ΡΡ‚Π°Ρ‚ΡŒΡΡ… Π±Ρ‹Π»ΠΈ рассмотрСны Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ конструкции Π½Π° Π΄Π°Π½Π½ΠΎΠΌ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π΅, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Ρ‚Π°Ρ…ΠΎΠΌΠ΅Ρ‚Ρ€ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π΅.

ΠžΡ€Π³Π°Π½Π°ΠΌΠΈ управлСния Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ΄Π½Π° ΠΊΠ½ΠΎΠΏΠΊΠ° ΠΈ Π²Π°Π»ΠΊΠΎΠ΄Π΅Ρ€. По Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡŽ отсчСта Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ раздаСтся прСрывистый акустичСский сигнал.

ОписаниС Ρ€Π°Π±ΠΎΡ‚Ρ‹ простого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π½Π° PIC16F628A

ПослС ΠΏΠΎΠ΄Π°Ρ‡ΠΈ питания Π½Π° схСму Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π½Π° свСтодиодных ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°Ρ… высвСчиваСтся установлСнноС врСмя, свСтодиод Π½Π΅ свСтится. ΠŸΡƒΡ‚Π΅ΠΌ вращСния Ρ€ΡƒΡ‡ΠΊΠΈ Π²Π°Π»ΠΊΠΎΠ΄Π΅Ρ€Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ установку Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΎΡ‚ 1 Π΄ΠΎ 99 ΠΌΠΈΠ½ΡƒΡ‚.

Π‘Ρ…Π΅ΠΌΠ° Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° β€” ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ с ΠΎΠ±Ρ‰ΠΈΠΌ ΠΊΠ°Ρ‚ΠΎΠ΄ΠΎΠΌ

Π‘Ρ…Π΅ΠΌΠ° Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° β€” ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ с ΠΎΠ±Ρ‰ΠΈΠΌ Π°Π½ΠΎΠ΄ΠΎΠΌ

ПослС установки Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π°, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ, послС Ρ‡Π΅Π³ΠΎ Π·Π°Π·Π²ΡƒΡ‡ΠΈΡ‚ ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ акустичСский сигнал, ΠΈ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π°ΠΊΡ‚ΠΈΠ²ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ отсчСт Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, свСтодиод Π±ΡƒΠ΄Π΅Ρ‚ ΠΌΠΈΠ³Π°Ρ‚ΡŒ, ΠΈ врСмя Π½Π° Ρ‚Π°Π±Π»ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ±Π°Π²Π»ΡΡ‚ΡŒΡΡ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΌΠΈΠ½ΡƒΡ‚Ρƒ.

По истСчСнии Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ρ‚Π°ΠΉΠΌΠ΅Ρ€ выдаст прСрывистыС акустичСскиС сигналы, свСтодиод Π±ΡƒΠ΄Π΅Ρ‚ Π³ΠΎΡ€Π΅Ρ‚ΡŒ постоянно. ΠŸΡƒΡ‚Π΅ΠΌ наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ акустичСский сигнал, ΠΈ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π² исходноС состояниС Π² ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π­Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ описаниС Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° с ΠΏΠ΅Ρ€Π²ΠΎΠΉ вСрсиСй ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ.

Вторая вСрсия Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ пСрвая, ΠΎΠ΄Π½Π°ΠΊΠΎ снабТСна нСбольшими дополнСниями. Π’ состоянии Π²Ρ‹Π±ΠΎΡ€Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ссли Β Β Π²Π°Π»ΠΊΠΎΠ΄Π΅Ρ€ Π½Π΅ ΠΊΡ€ΡƒΡ‚ΠΈΡ‚ΡŒ 2-3 сСкунды, Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅ появится анимационная заставка. Π’Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ Π²Π°Π»ΠΊΠΎΠ΄Π΅Ρ€Π° ΠΈΠ»ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ заставку ΠΈ снова активизируСтся Ρ€Π΅ΠΆΠΈΠΌ Π²Ρ‹Π±ΠΎΡ€Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚ отсчСта Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ссли Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° ΠΎΡΡ‚Π°Π»Π°ΡΡŒ 1-Π° ΠΌΠΈΠ½ΡƒΡ‚Π°, Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅ отобразятся сСкунды ΠΎΡ‚ 60 Π΄ΠΎ 00. По Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡŽ отсчСта, сигнал Π±ΡƒΠ΄Π΅Ρ‚ Π·Π²ΡƒΡ‡Π°Ρ‚ΡŒ ΠΎΠΊΠΎΠ»ΠΎ 20 сСкунд ΠΈ Π½Π° Ρ‚Π°Π±Π»ΠΎ появится ΡƒΠΆΠ΅ другая заставка. Пока Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΆΠ°Ρ‚Π° ΠΊΠ½ΠΎΠΏΠΊΠ°, Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΌΠΈΠ½ΡƒΡ‚Ρƒ ΠΏΠΎΠ΄Π°Π²Π°Ρ‚ΡŒ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ сигнал.

Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ (31,7 KiB, скачано: 787)

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π½Π° PIC16F628a Π΄ΠΎ 100 часов

Π‘Ρ…Π΅ΠΌΠ° Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠ³ΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π½Π° PIC16F628a, привСдСнная Π² Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅, позволяСт Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΏΠΎ Ρ€Π°ΡΠΏΠΈΡΠ°Π½ΠΈΡŽ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ (Π±Ρ‹Ρ‚ΠΎΠ²Ρ‹Π΅ ΠΏΡ€ΠΈΠ±ΠΎΡ€Ρ‹ ΠΈ элСктронныС устройства). Нагрузка управляСтся посрСдством элСктромагнитного Ρ€Π΅Π»Π΅.

Π‘ этим ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹ΠΌ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ врСмя Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Ρ‚Π°ΠΊ ΠΈ врСмя Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ врСмя, ΠΊΠΎΠ³Π΄Π° Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΈ врСмя ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊ Π΄ΠΎΠ»Π³ΠΎ ΠΎΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΡ€ΠΎΠ±Ρ‹Ρ‚ΡŒ Π²ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΌ состоянии.

ΠŸΡ€Π΅Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈΒ β€” 99 часов ΠΈ 59 ΠΌΠΈΠ½ΡƒΡ‚. Для удобства Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ снабТСн Π–Πš-дисплСм 16Γ—2 ΠΈ 4-мя ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Π°Ρ схСма Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠ³ΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½Π° рисункС Π½ΠΈΠΆΠ΅.

Π Π΅Π»Π΅ с Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌ напряТСниСм 5Π’ коммутируСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ NPN транзистора BC337, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ самим ΠΆΠ΅ транзистором происходит сигналом с Π²Ρ‹Π²ΠΎΠ΄Π° 9 (RB3) ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° PIC16F628A.

Π¦ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ сигналы ΠΎΡ‚ 4-Ρ… ΠΊΠ½ΠΎΠΏΠΎΠΊ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· Π²Ρ…ΠΎΠ΄Ρ‹ 1, 2, 3 ΠΈ 6. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ LCD ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ 16Γ—2 Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² 4-Π±ΠΈΡ‚Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅, поэтому задСйствованы Ρ‚ΠΎΠ»ΡŒΠΊΠΎ 6 ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. Π—ΡƒΠΌΠΌΠ΅Ρ€ обСспСчиваСт Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнал Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚, ΠΊΠΎΠ³Π΄Π° Ρ‚Π°ΠΉΠΌΠ΅Ρ€ запускаСтся ΠΈ останавливаСтся. Он Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ·Π΄Π°Π΅Ρ‚ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнал, ΠΊΠΎΠ³Π΄Π° Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° ΠΈΠ»ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½Π°.

Π Π°Π±ΠΎΡ‚Π° Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° просимулирована Π² Proteus:

Π Π°Π±ΠΎΡ‚Π° Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°

ВсС ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ осущСствляСтся Ρ‡Π΅Ρ‚Ρ‹Ρ€ΡŒΠΌΡ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ:

  • Кнопка SA1 (on/off) β€” позволяСт ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ врСмя Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Ρ‚Π°ΠΊ ΠΈ врСмя Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. ΠŸΡ€ΠΈ ΠΏΠΎΠ΄Π°Ρ‡Π΅ питания Π½Π° Ρ‚Π°ΠΉΠΌΠ΅Ρ€, Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° находится Π² Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΌ состоянии, ΠΈ ΠΎΠ±Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ) Ρ€Π°Π²Π½Ρ‹ 0. ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ SA1, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π΅ΠΆΠΈΠΌΠ°ΠΌΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.
  • Кнопка SA2 (select) β€” позволяСт Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ Π²ΠΎ врСмя установки Ρ†ΠΈΡ„Ρ€Ρ‹ часов ΠΈ ΠΌΠΈΠ½ΡƒΡ‚ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Выбранная Ρ†ΠΈΡ„Ρ€Π° увСличиваСтся Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ SA1.
  • Кнопка SA3 (enter) β€” позволяСт Π²Ρ‹ΠΉΡ‚ΠΈ ΠΈΠ· Ρ€Π΅ΠΆΠΈΠΌΠ° установки Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°.
  • Кнопка SA4 (start/stop) β€” запускаСт ΠΈ останавливаСт Ρ€Π°Π±ΠΎΡ‚Ρƒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, ΠΊΠ°ΠΊ это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Ρ‡Π΅Ρ€Π΅Π· 2 ΠΌΠΈΠ½ΡƒΡ‚Ρ‹ ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΅Π΅ послС 20 ΠΌΠΈΠ½ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π’ этом случаС врСмя Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ (ON) Π±ΡƒΠ΄Π΅Ρ‚ 00:02, Π° врСмя Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ (OFF) 00:20, Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Ρ‡Ρ‡: ΠΌΠΌ. ПослС наТатия Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ SA4 Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒΡΡ Ρ‚Π°ΠΉΠΌΠ΅Ρ€, ΠΈ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· 2 ΠΌΠΈΠ½ΡƒΡ‚Ρ‹, ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ Ρ‡Π΅Ρ€Π΅Π· 20 ΠΌΠΈΠ½ΡƒΡ‚.

Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ + proteus (20,7 KiB, скачано: 1 251)

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ для управлСния внСшними устройствами Π½Π° PIC16F628AΠ’Π°ΠΉΠΌΠ΅Ρ€Π°ΠΌΠΈ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ довольно ΡˆΠΈΡ€ΠΎΠΊΠΈΠΉ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… тСхничСских устройств Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… ΡƒΠ·Π»ΠΎΠ² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ². Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС Ρ‚Π°ΠΉΠΌΠ΅Ρ€ — это Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠ΅ устройство, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ΅ для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ внСшнСго устройства ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, устройство автоматичСского ΠΏΠΎΠ»ΠΈΠ²Π° растСний ΠΈΠ»ΠΈ устройство автоматичСского кормлСния Π°ΠΊΠ²Π°Ρ€ΠΈΡƒΠΌΠ½Ρ‹Ρ… Ρ€Ρ‹Π±ΠΎΠΊ.. ВсС зависит ΠΎΡ‚ вашСй Ρ„Π°Π½Ρ‚Π°Π·ΠΈΠΈ. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, я ΠΊΠΎΠ³Π΄Π°-Ρ‚ΠΎ Π΄ΠΎΠ»Π³ΠΎΠ΅ врСмя использовал ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ устройство для пСриодичСского Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ / Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ…ΠΎΠ»ΠΎΠ΄ΠΈΠ»ΡŒΠ½ΠΈΠΊΠ°, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ сломалось мСханичСскоС Ρ‚Π΅Ρ€ΠΌΠΎΡ€Π΅Π»Π΅.

Π’Π°ΠΉΠΌΠ΅Ρ€ собран Π½Π° ΠΎΡ‡Π΅Π½ΡŒ распространСнном ΠΈ дСшСвом ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π΅ ΠΎΡ‚

Microchip, 8-разрядный PIC16F628A. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» ΠΌΠ΅ΠΆΠ΄Ρƒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΠΌΠΈ внСшнСго устройства ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹. максимальноС врСмя ΠΏΠ°ΡƒΠ·Ρ‹ ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ составляСт 99 часов 59 ΠΌΠΈΠ½ΡƒΡ‚, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, фактичСски 100 часов.

Для управлСния Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ, Π° для отобраТСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ стандартный Π–Πš ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π½Π° 2 строки ΠΈΠ· 16 символов, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ Π½Π° основС ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° HD44780U ΠΎΡ‚ Ρ„ΠΈΡ€ΠΌΡ‹

Hitachi.
Β Β 
Β Β  Β Β Β 
Для управлСния внСшним устройством использовано элСктромагнитноС Ρ€Π΅Π»Π΅. ΠžΠ±ΠΌΠΎΡ‚ΠΊΠ° Ρ€Π΅Π»Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ рассчитана Π½Π° напрядСниС 5V. ΠœΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ управляСт Ρ€Π΅Π»Π΅ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠ»ΡŽΡ‡ Π½Π° транзисторС PN2222. ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ Ρ€Π΅Π»Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ рассчитаны Π½Π° Ρ‚ΠΎΠΊ, потрСбляСмый управляСмым устройством. Кнопки управлСния ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ ΠΊ ΠΏΠΎΡ€Ρ‚Π°ΠΌ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° RB0, RA2, RA3 ΠΈ RA4.

ДисплСй Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ…Π±ΠΈΡ‚Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΈ для Π΅Π³ΠΎ управлСния трСбуСтся 6 ΠΏΠΎΡ€Ρ‚ΠΎΠ² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. Для Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнализации Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ использован ΠΏΡŒΠ΅Π·ΠΎΠΊΠ΅Ρ€Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΈΠΉ Π·Π²ΠΎΠ½ΠΎΠΊ. Π—Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнал Ρ‚Π°ΠΊΠΆΠ΅ подаСтся ΠΈ ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ питания Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°.

Π‘Π»ΠΎΠΊ питания Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° содСрТит стабилизатор напряТСния +5V Π½Π° микросхСмС —Β  рСгуляторС LM7805. Для питания Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΎΡ‚ сСти 220 Π²ΠΎΠ»ΡŒΡ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ любой нСстабилизированный сСтСвой Π°Π΄Π°ΠΏΡ‚Π΅Ρ€, ΠΊΡƒΠΏΠ»Π΅Π½Π½Ρ‹ΠΉ Π½Π° китайском Ρ€Ρ‹Π½ΠΊΠ΅. Π’Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ΅ напряТСниС Π°Π΄Π°ΠΏΡ‚Π΅Ρ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π² ΠΏΠ΅Ρ€Π΅Π΄Π΅Π»Π°Ρ… 9 — 14 Π²ΠΎΠ»ΡŒΡ‚.
Β Β 

Β Β Β 
Если ΠΌΡ‹ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ посмотрим Π½Π° схСму устройства, Ρ‚ΠΎ Π·Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π²ΠΎΠ΄Ρ‹ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° с Π½ΠΎΠΌΠ΅Ρ€Π°ΠΌΠΈ 15 ΠΈ 16 Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ. ΠΎΠ½ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°Ρ… с Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΉ подсвСткой. Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€ с подсвСткой, Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π΅Π΅ ΠΊ +5B Ρ‡Π΅Ρ€Π΅Π· рСзистор сопротивлСниСм 39 Ом.
Β Β Β 

β€’

Кнопка Start/Stop. ΠŸΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° эту ΠΊΠ½ΠΎΠΏΠΊΡƒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ запускаСтся ΠΈΠ»ΠΈ останавливаСтся.Β  ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ начинаСтся отсчСт Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ состояния. ΠŸΠΎΡ‚ΠΎΠΌ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ внСшнСС устройство ΠΈ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ отсчСт Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π²ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΌ состоянии.

β€’

Кнопка On/Off TimeпозволяСт Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€, установив врСмя Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ состояний внСшнСго устройства.

β€’

Кнопка Select Π΄Π°Π΅Ρ‚Β  Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ устанавливаСмым ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ — часы — ΠΌΠΈΠ½ΡƒΡ‚Ρ‹ — врСмя Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ состояния — врСмя Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ³ΠΎ состояния.

β€’

Кнопка Enter слуТит для подтвСрТдСния установлСнного значСния.
Β Β 

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ для сборки Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅Π΄ΠΎΡ€ΠΎΠ³ΠΎ ΠΊΡƒΠΏΠΈΡ‚ΡŒ Π² ΠšΠΈΡ‚Π°Π΅ ΠΏΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ссылкам:
Β Β Β 

Π’Π°ΠΉΠΌΠ΅Ρ€ Π½Π° PIC16F628A — Устройства Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°Ρ… — Π‘Ρ…Π΅ΠΌΡ‹ устройств Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°Ρ…

Π­Ρ‚ΠΎ очСрСдная ΠΏΠΎΠ΄Π΅Π»ΠΊΠ° ΠΈΠ· Ρ…Π»Π°ΠΌΠ° — Ρ‚Π°ΠΉΠΌΠ΅Ρ€ для ΠΊΡƒΡ…Π½ΠΈ, хотя ΠΈ Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ для ΠΊΡƒΡ…Π½ΠΈ. Π’ Ρ…ΠΎΠ΄ пошли Π΄Π΅Ρ‚Π°Π»ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ валялись Π±Π΅Π· Π΄Π΅Π»Π°, Π² частности старыС ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ АЛБки, рСзисторы выпаянныС ΠΈΠ· старых ΠΏΠ»Π°Ρ‚ ΠΈ Ρ‚.Π΄. Основа устройства ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ PIC16F628A, ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых распространСнных ΠΈ Π΄Π΅ΡˆΠ΅Π²Ρ‹Ρ…. Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ осущСствляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²Π°Π»ΠΊΠΎΠ΄Π΅Ρ€Π° ΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ. Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π²Ρ‹Π΄Π΅Ρ€ΠΆΠΊΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΎΡ‚ 1 Π΄ΠΎ 99 ΠΌΠΈΠ½ΡƒΡ‚. По ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΡŽ Ρ†ΠΈΠΊΠ»Π° отсчСта Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ подаСтся прСрывистый Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнал. А Π°Ρ€Ρ…ΠΈΠ²Π΅ Π»Π΅ΠΆΠΈΡ‚ Π΄Π²Π΅ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, пСрвая просто Ρ‚Π°ΠΉΠΌΠ΅Ρ€, Π° вторая с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π½Π°Π²ΠΎΡ€ΠΎΡ‚Π°ΠΌΠΈ, ΠΎΠ± этом Π½ΠΈΠΆΠ΅.

ПослС Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ питания Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°Ρ… высвСчиваСтся Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ врСмя, свСтодиод Π½Π΅ Π³ΠΎΡ€ΠΈΡ‚. Вращая Π²Π°Π»ΠΊΠΎΠ΄Π΅Ρ€ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ установку Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΎΡ‚ 1 Π΄ΠΎ 99 ΠΌΠΈΠ½ΡƒΡ‚. Когда врСмя установлСно, Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ — раздаСтся ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнал ΠΈ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ отсчСт Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, свСтодиод ΠΌΠΈΠ³Π°Π΅Ρ‚, Π° врСмя Π½Π° ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π΅ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ°Π΅Ρ‚ΡΡ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΌΠΈΠ½ΡƒΡ‚Ρƒ. Когда врСмя дошло Π΄ΠΎ нуля, Ρ‚Π°ΠΉΠΌΠ΅Ρ€ ΠΈΠ·Π΄Π°Π΅Ρ‚ прСрывистыС Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ сигналы, свСтодиод ΡΠ²Π΅Ρ‚ΠΈΡ‚ΡŒΡΡ постоянно. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ снимаСтся Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнал ΠΈ дСвайс возвращаСтся Π² исходноС состояниС — Ρ€Π΅ΠΆΠΈΠΌ установки Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π’Π°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ пСрвая вСрсия ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ.

Вторая вСрсия ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ΠΈ пСрвая, Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ нСсколько Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΉ. Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ установки Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ссли ΠΊ Π²Π°Π»ΠΊΠΎΠ΄Π΅Ρ€Ρƒ Π½Π΅ ΠΏΡ€ΠΈΠΊΠ°ΡΠ°Ρ‚ΡŒΡΡ нСсколько сСкунд, Π½Π° дисплСС Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Π±Π΅Π³Π°Ρ‚ΡŒ анимационная заставка. Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΈΠ»ΠΈ Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ Π²Π°Π»ΠΊΠΎΠ΄Π΅Ρ€Π° ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ ΠΈ вновь ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ Ρ€Π΅ΠΆΠΈΠΌ установки Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π’ΠΎ врСмя отсчСта Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Ссли ΠΎΡΡ‚Π°Π»Π°ΡΡŒ ΠΎΠ΄Π½Π° ΠΌΠΈΠ½ΡƒΡ‚Π°, Π½Π° дисплСС ΠΈΠ½Π΄ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‚ΡΡ сСкунды ΠΎΡ‚ 60 Π΄ΠΎ 00. Когда сработал Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнал, Π·Π²ΡƒΡ‡Π°Ρ‚ΡŒ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ бСсконСчно, Π° ΠΎΠΊΠΎΠ»ΠΎ 20 сСкунд. Π”Π°Π»Π΅Π΅ дисплСй Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ΠΈΠ½Π΄ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ заставку (ΠΎΡ‚Π»ΠΈΡ‡Π½ΡƒΡŽ ΠΎΡ‚ Ρ‚ΠΎΠΉ, которая Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ установки). А Ρ‚Π°ΠΊΠΆΠ΅, Ρ‡Π΅Ρ€Π΅Π· ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΌΠΈΠ½ΡƒΡ‚Ρƒ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Ρ‚ΡŒ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΌ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹ΠΌ сигналом. НаТатиСм ΠΊΠ½ΠΎΠΏΠΊΠΈ Ρ‚Π°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ сбрасуСтся Π² Ρ€Π΅ΠΆΠΈΠΌ установки Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Когда Π΄ΠΎ срабатывания Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° остаСтся 3 сСкунды, Ρ‚Π°ΠΉΠΌΠ΅Ρ€ ΠΈΠ·Π΄Π°Π΅Ρ‚ Π½Π° ΠΊΠ°ΠΆΠ΄ΡƒΡŽ сСкунду ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΉ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнал, Ρ‚.Π΅. 3…2…1 ΠΈ Π΄Π°Π»Π΅Π΅ срабатываСт ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ. ОбС ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ доступны ΠΈ Π»Π΅ΠΆΠ°Ρ‚ Π² Π°Ρ€Ρ…ΠΈΠ²Π΅ вмСстС с рисунком ΠΏΠ΅Ρ‡Π°Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹.

Π—Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнал Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π°ΠΏΠΏΠ°Ρ€Ρ‚Π°Π½ΠΎΠ³ΠΎ ШИМ встроСнного Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€. ДинамичСская Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ сопротивлСниС порядка 50 ΠΎΠΌ. МоТно ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈ Π½ΠΈΠ·ΠΊΠΎΠΎΠΌΠ½Ρ‹Π΅ динамичСскиС Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ (4 ΠΈΠ»ΠΈ 8 ΠΎΠΌ), Π½ΠΎ Π² Π΄Π°Π½Π½ΠΎΠΌ случаС Π»ΡƒΡ‡ΡˆΠ΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΌΠ°Π»ΠΎΠ³Π°Π±Π°Ρ€ΠΈΡ‚Π½Ρ‹ΠΉ Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ трансформатор, Ρ‚.ΠΊ. Ρ‡Π΅Ρ€Π΅Π· 4 ΠΎΠΌΠ½ΡƒΡŽ Π³ΠΎΠ»ΠΎΠ²ΠΊΡƒ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ‚Π΅ΠΊΠ°Ρ‚ΡŒ большой Ρ‚ΠΎΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΡƒ Π±Π»ΠΎΠΊΠ° питания ΠΈ ΡΠΏΡ€ΠΎΠ²ΠΎΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ сброс ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°.




Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒΒ — рисунки ΠΏΠ΅Ρ‡Π°Ρ‚Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚ ΠΈ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°Β 

PIC Π£Ρ€ΠΎΠΊ 5. Π’Π°ΠΉΠΌΠ΅Ρ€Ρ‹ |

&nbsp

&nbsp

&nbsp

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒΒ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΠΌΡΡ с Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠ΅ΠΉ ΠΊΠ°ΠΊ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹. Π’Π°ΠΉΠΌΠ΅Ρ€Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ отсчёт Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° запуска, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΅Ρ‰Ρ‘ нСсколько ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… Π²Π΅Ρ‰Π΅ΠΉ, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΡ‹ ΠΏΠΎΠ·ΠΆΠ΅ познакомимся. Но самоС Π³Π»Π°Π²Π½ΠΎΠ΅ ΠΈΡ… свойство – это Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ отсчёт происходит нСзависимо ΠΎΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ основного ΠΊΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’Π΅ΠΌ самым обСспСчиваСтся ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½Π°Ρ Ρ€Π°Π±ΠΎΡ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ экономия рСсурсов ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°. Π’ΠΎ Π΅ΡΡ‚ΡŒ Π² Ρ‚ΠΎΡ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚, ΠΊΠΎΠ³Π΄Π° ΠΈΠ΄Ρ‘Ρ‚ отсчёт, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π΅ останавливаСтся, ΠΊΠ°ΠΊ ΠΏΡ€ΠΈ использовании ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ. Когда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°, ΠΌΡ‹ висим это врСмя Π² ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠΈ ΠΈ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π½Π΅ выполняСтся.

Начнём ΠΌΡ‹ с самого простого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Π”Π° ΠΈ ΠΏΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΌΡƒ ΠΌΡ‹ ΠΏΠΎΠΊΠ° ΠΈ Π½Π΅ смоТСм, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρƒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° PIC16F64A ΠΎΠ½ СдинствСнный – это Ρ‚Π°ΠΉΠΌΠ΅Ρ€ 0.

Π’Π°ΠΉΠΌΠ΅Ρ€ 0 ΠΈΠ»ΠΈ TMR0, ΠΊΠ°ΠΊ ΠΎΠ½ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ Π² тСхничСской Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, – это 8-разрядный Ρ‚Π°ΠΉΠΌΠ΅Ρ€/счётчик, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠΌΠ΅Π΅Ρ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚ 0 Π΄ΠΎ 255, ΠΈ ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ достигаСт Π΄Π°Π½Π½ΠΎΠΉ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρ‹, происходит ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅, Ссли ΠΎΠ½ΠΎ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ задСйствовано. ΠŸΡ€Π°Π²Π΄Π° ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π² Ρ…ΠΎΠ΄Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΡƒΠ·Π½Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ счётчика, Π½ΠΎ, ΠΏΡ€Π°Π²Π΄Π°, Π½Π΅ знаю, Π½ΡƒΠΆΠ½ΠΎ Π»ΠΈ Π½Π°ΠΌ это. Π’Π°ΠΊΠΆΠ΅ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ счёта посрСдством использования прСддСлитСля, ΠΌΠΎΠΆΠ΅ΠΌ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΠΈΠ»ΠΈ внСшний источник тактирования Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, ΠΈ Π΅Ρ‰Ρ‘ ΠΌΠΎΠΆΠ΅ΠΌ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ Ρ„Ρ€ΠΎΠ½Ρ‚ – ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ значСния счётчика ΠΏΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΈΠ»ΠΈ ΠΏΠΎ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌΡƒ Ρ„Ρ€ΠΎΠ½Ρ‚Ρƒ (спаду), Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ условии, Ρ‡Ρ‚ΠΎ источник Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠ³ΠΎ сигнала внСшний. Π’ΠΎΡ‚ Ρ‚Π°ΠΊΠΈΠ΅ Π²ΠΎΡ‚ ΠΌΡ‹ возмоТности ΠΈΠΌΠ΅Π΅ΠΌ с Π΄Π°Π½Π½Ρ‹ΠΌ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ. НС густо, Π½ΠΎ ΠΈ Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΠΏΠΎΠ»ΡŒΠ·Ρƒ ΠΎΡ‚ этого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΌΡ‹ ΠΈΠ·Π²Π»Π΅Ρ‡Ρ‘ΠΌ. И Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Ρƒ ΠΏΠΎΠ»ΡŒΠ·Ρƒ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ознакомимся с Π΄Π°Π½Π½Ρ‹ΠΌ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ ΠΈ это Π½Π°ΠΌ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΡ‰Π΅ Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ структуру ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π±ΠΎΠ»Π΅Π΅ слоТных Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ² Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ² PIC, Π½ΠΎ ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎ ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΡŽ занятия ΠΌΡ‹ наглядно ΡƒΠ²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ использованиС Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ для Π±Π΅Π³ΡƒΡ‰ΠΈΡ… ΠΎΠ³Π½Π΅ΠΉ вмСсто бСсконСчного Ρ†ΠΈΠΊΠ»Π° Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ влияСт Π½Π° Ρ…ΠΎΠ΄ основной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π’ΠΎΡ‚ Π±Π»ΠΎΠΊ-схСма Π΄Π°Π½Π½ΠΎΠ³ΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°

Β 

Β 

Π’ Π΄Π°Π½Π½ΠΎΠΉ схСмС ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ всС Π±Π»ΠΎΠΊΠΈ нашСго Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π±ΠΈΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ. Π‘ΠΈΡ‚Ρ‹ T0CS, T0SE, PSA, PS2:PS0 располоТСны Π² рСгистрС OPTION_REG

Β 

Β 

Π”Π°Π½Π½Ρ‹ΠΉ рСгистр слуТит для управлСния Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Но нас ΠΏΠΎΠΊΠ° ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π±ΠΈΡ‚Ρ‹, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π½ΠΎ для Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°.

TOCS (TMR0 Clock Source Select) – Π²Ρ‹Π±ΠΎΡ€ сингала для Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°: 0 – Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹ΠΉ сигнал, 1 – внСшний.

T0SE (TMR0 Source Edge Select) – Π²Ρ‹Π±ΠΎΡ€ Ρ„Ρ€ΠΎΠ½Ρ‚Π° приращСния ΠΏΡ€ΠΈ внСшнСм Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠΌ сигналС: 0 – ΠΏΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π½Π΅ΠΌΡƒ Ρ„Ρ€ΠΎΠ½Ρ‚Ρƒ, 1 – ΠΏΠΎ Π·Π°Π΄Π½Π΅ΠΌΡƒ.

PSA (Prescaler Assignment) – Π²Ρ‹Π±ΠΎΡ€ способа Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ прСддСлитСля: 0 – ΠΏΡ€Π΅Π΄Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ Ρ‡Π΅Ρ€Π΅Π· TMR0, 1 – Ρ‡Π΅Ρ€Π΅Π· WDT.

PS2:PS0 (Prescaler Rate Select) – коэффициСнт дСлСния прСддСлитСля

Как ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚Π°ΠΉΠΌΠ΅Ρ€, ΠΌΡ‹ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ здСсь ΠΎΠ±ΡΡƒΠΆΠ΄Π°Ρ‚ΡŒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ это всё ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ расписано Π² тСхничСской Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ. Π›ΠΈΡˆΡŒ ΠΏΠΎΠ΄Ρ‡Π΅Ρ€ΠΊΠ½Ρƒ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΠ½ΡƒΡŽ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ – это Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Ρ‚Π°ΠΊΠΆΠ΅ свободно ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ счёта Π² рСгистрС, Π½ΠΎ любоС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² Π½Ρ‘ΠΌ Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½ΠΈΠ΅ наращивания счёта Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π²ΡƒΡ… ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Ρ… Ρ†ΠΈΠΊΠ»ΠΎΠ². Π’ΠΎ Π΅ΡΡ‚ΡŒ Ссли ΠΌΡ‹ Ρ€Π΅ΡˆΠΈΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ ΠΌΠ΅Π½ΡΡ‚ΡŒ Π΄Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ‚ΠΎ эту ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΌΡ‹ обязаны ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ.

Π’Π°ΠΊΠΆΠ΅ Π΄Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π΄Ρ€ΡƒΠ³ΠΈΠ΅ рСгистры, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ΡΡ нашим Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ.

Π­Ρ‚ΠΎ рСгистр INTCON, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΉ для управлСния прСрываниями

Β 

Β 

Π’ Π΄Π°Π½Π½ΠΎΠΌ рСгистрС Π½Π°ΠΌ ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ сСгодня Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Ρ€ΠΈ Π±ΠΈΡ‚Π°:

GIE (Global Interrupt Enable) – Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ: 0 – всС прСрывания Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½Ρ‹, 1 – всС нСмаскированныС прСрывания Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½Ρ‹.

T0IE (TMR0 Overflow Interrupt Enable) – Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ прСрывания ΠΏΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° 0: 0 – ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½ΠΎ, 1 – ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ.

T0IF (TMR0 Overflow Interrupt Flag) – Ρ„Π»Π°Π³ прСрывания ΠΏΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° 0: 0 – внСшнСго прСрывания Π½Π΅Ρ‚, 1 – ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ счётчика Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° 0 (сбрасываСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎ).

Ну ΠΈ соотвСтствСнно рСгистр значСния счёта нашСго Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°

Β 

Β 

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΡ‚ΠΈΡ…ΠΎΠ½ΡŒΠΊΡƒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ ΠΊΠΎΠ΄Ρƒ.

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Π±Ρ‹Π» создан ΠΈΠ· ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ занятия ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΊΠ°ΠΊ ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅ ΠΌΡ‹ создавали ΠΈΠ· ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π±Π΅Π³ΡƒΡ‰ΠΈΡ… ΠΎΠ³Π½Π΅ΠΉ. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ TIMER01.

ΠžΡ‚ΠΊΡ€ΠΎΠ΅ΠΌ наш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² MPLAB X ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π΅Π³ΠΎ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ. Если всё Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ, Ρ‚ΠΎ ΠΎΡ‚ΠΊΡ€ΠΎΠ΅ΠΌ Π΅Ρ‰Ρ‘ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ для прСтСуса ΠΈ Π²Ρ‹Π±Π΅Ρ€Π΅ΠΌ Ρ„Π°ΠΉΠ» ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, которая Ρƒ нас Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Π»Π°ΡΡŒ ΠΏΡ€ΠΈ сборкС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π² срСдС программирования.

Π’ Ρ„Π°ΠΉΠ»Π΅ main.c (Π° Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ-Ρ‚ΠΎ Ρƒ нас ΠΏΠΎΠΊΠ° ΠΈ Π½Π΅Ρ‚) Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main сначала Π²ΠΊΠ»ΡŽΡ‡ΠΈΠΌ Π½ΡƒΠΆΠ½Ρ‹Π΅ Π½Π°ΠΌ Π±ΠΈΡ‚Ρ‹ Π² рСгистрС OPTION_REG

Β 

TRISA |= 0x04;

OPTION_REG=0x07;

Β 

ΠœΡ‹ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΈ Π±ΠΈΡ‚Ρ‹ 0,1 ΠΈΒ  2 – это Π±ΠΈΡ‚Ρ‹ прСддСлитСля, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Π΄Π΅Π»Π΅Π½ΠΈΠ΅ частоты максимальноС – Π½Π° 256. Π’ΠΎ Π΅ΡΡ‚ΡŒ частота приращСния счёта Π±ΡƒΠ΄Π΅Ρ‚ 1000000/256 ΠΈΠ»ΠΈ ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ 3,9 ΠΊΠ“Ρ†. Но Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΡ‚ 0 Π΄ΠΎ 255, Ρ‚ΠΎ ΠΌΡ‹ Π΅Ρ‰Ρ‘ Ρ€Π°Π· Π΄Π΅Π»ΠΈΠΌ Π½Π° 256 ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ 15,3 Π“Ρ†. Π­Ρ‚ΠΎ ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ происходит ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎ ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΡŽ счёта Π½Ρƒ ΠΈΠ»ΠΈ ΠΏΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ счётчика ΠΈ получаСтся, Ρ‡Ρ‚ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° прСрывания Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ с Ρ‚Π°ΠΊΠΎΠΉ частотой. Π’ΠΎ Π΅ΡΡ‚ΡŒ свСтодиоды Π±ΡƒΠ΄ΡƒΡ‚ Ρƒ нас Π±Π΅ΠΆΠ°Ρ‚ΡŒ с ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ΠΎΠΌ ΠΎΠΊΠΎΠ»ΠΎ 65 милисСкунд. ΠΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ.

Π”Π°Π»Π΅Π΅ Π²ΠΊΠ»ΡŽΡ‡ΠΈΠΌ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ прСрывания ΠΈ прСрывания ΠΎΡ‚ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, установив Π² 1 Π±ΠΈΡ‚Ρ‹ 7 ΠΈ 5 рСгистра INTCON

Β 

OPTION_REG=0x07;

INTCON=0xA0;

Β 

И Π·Π°Ρ‚Π΅ΠΌ занСсём 0 Π² рСгистр счёта Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, Ρ‚Π΅ΠΌ самым запустим Ρ‚Π°ΠΉΠΌΠ΅Ρ€

Β 

INTCON=0xA0;

TMR0=0;

Β 

Π”ΠΎΠ±Π°Π²ΠΈΠΌ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ для счёта Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΉ Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ прСрывания

Β 

#pragma config CP = OFF // Code Protection bit (Code protection disabled)

//--------------------------------------------

unsigned int TIM0_count=0;

//--------------------------------------------

Β 

Π”ΠΎΠ±Π°Π²ΠΈΠΌ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ-ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ прСрывания ΠΎΡ‚ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° 0 Π²Ρ‹ΡˆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ main()

Β 

//--------------------------------------------

void interrupt timer0()

{

}

//--------------------------------------------

Β 

Π’ Π΄Π°Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΌΡ‹ ΠΏΠΎΠΏΠ°Π΄Π°Π΅ΠΌ, ΠΊΠΎΠ³Π΄Π° происходит ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ счёта, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠΎΠ³Π΄Π° счёт Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° достигнСт числа 255.

ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π½Π°ΡˆΡƒ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠΎΠΏΠ°Π΄Π°Ρ‚ΡŒ Π² Π΄Π°Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ.

Π’Π°ΠΊ ΠΊΠ°ΠΊ Ρƒ нас 10 свСтодиодов, Ρ‚ΠΎ ΠΌΡ‹ ΠΈΡ… Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠΎ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ Π·Π°ΠΆΠΈΠ³Π°Ρ‚ΡŒ, Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ Ρ‚ΡƒΡˆΠΈΡ‚ΡŒ, Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅. Π§Ρ‚ΠΎΠ±Ρ‹ это ΠΏΡ€ΠΎΡ‰Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‚ΠΎ ΠΌΡ‹ ΠΏΠΎΠ΄Π΅Π»ΠΈΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ нашСй глобальной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π° 10 ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ ΠΈ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚ 0 Π΄ΠΎ 9 ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ. И Π² зависимости ΠΎΡ‚ Ρ†ΠΈΡ„Ρ€Ρ‹ Π±ΡƒΠ΄Π΅ΠΌ Π·Π°ΠΆΠΈΠ³Π°Ρ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ свСтодиод. Для этого, я Π΄ΡƒΠΌΠ°ΡŽ, Π»ΡƒΡ‡ΡˆΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ switch

Β 

void interrupt timer0()

{

Β  switch(TIM0_count%10)

Β  {

Β  case 0:

Β  PORTAbits.RA1 = 0;

Β  PORTBbits.RB0 = 1;

Β  break;

Β  case 1:

Β Β Β  PORTBbits.RB0 = 0;

Β  Β  PORTBbits.RB1 = 1;

Β Β Β  break;

Β  case 2:

Β  Β  PORTBbits.RB1 = 0;

Β Β Β  PORTBbits.RB2 = 1;

Β  Β  break;

Β  case 3:

Β  Β  PORTBbits.RB2 = 0;

Β Β Β  PORTBbits.RB3 = 1;

Β  Β  break;

Β  case 4:

Β  Β  PORTBbits.RB3 = 0;

Β Β Β  PORTBbits.RB4 = 1;

Β  Β  break;

Β  case 5:

Β  Β  PORTBbits.RB4 = 0;

Β Β Β  PORTBbits.RB5 = 1;

Β  Β  break;

Β  case 6:

Β  Β  PORTBbits.RB5 = 0;

Β Β Β  PORTBbits.RB6 = 1;

Β  Β  break;

Β  case 7:

Β Β Β  PORTBbits.RB6 = 0;

Β  Β  PORTBbits.RB7 = 1;

Β Β Β  break;

Β  case 8:

Β  Β  PORTBbits.RB7 = 0;

Β Β Β  PORTAbits.RA0 = 1;

Β  Β  break;

Β  case 9:

Β  Β  PORTAbits.RA0 = 0;

Β Β Β  PORTAbits.RA1 = 1;

Β  Β  break;

Β  }

}

Β 

Π’ΠΎ ΠΆΠ΅ самоС ΠΌΡ‹ Π΄Π΅Π»Π°Π»ΠΈ ΠΈ Π² бСсконСчном Ρ†ΠΈΠΊΠ»Π΅, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ использовали Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ.

Π”Π°Π»Π΅Π΅ ΠΌΡ‹ ΠΈΠ½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ счёта

Β 

Β Β Β  break;

Β  }

Β  TIM0_count++;

}

Β 

Π’Π°ΠΊ ΠΊΠ°ΠΊ Ρƒ нас пСрСмСнная для счёта 16-битная бСззнаковая, Ρ‚ΠΎ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄ΠΎ 65535 ΠΈ получится Ρ‡Ρ‚ΠΎ Π² самом ΠΊΠΎΠ½Ρ†Π΅ ΠΎΠ½Π° досчитаСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΎ 5 Π² состоянии Ρ€Π°Π·Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠΌ ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ Π½Π° 10. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΡ‹ ΠΎΠ±Π½ΡƒΠ»ΠΈΠΌ Π΅Ρ‘ Ρ€Π°Π½ΡŒΡˆΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС Ρ†ΠΈΠΊΠ»Ρ‹ Ρƒ нас Π΄ΠΎΡ…ΠΎΠ΄ΠΈΠ»ΠΈ Π΄ΠΎ 9 ΠΏΡ€ΠΈ Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠΈ Π½Π° 10 ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ

Β 

TIM0_count++;

if(TIM0_count>3999)

{

Β  TIM0_count=0;

}

Β 

Ну ΠΈ, ΠΊΠ°ΠΊ ΠΌΡ‹ ΡƒΠΆΠ΅ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρ„Π»Π°Π³ прСрывания сам ΡΠ±Ρ€Π°ΡΡ‹Π²Π°Ρ‚ΡŒΡΡ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚, Π΅Π³ΠΎ Π½Π°Π΄ΠΎ ΡΠ±Ρ€ΠΎΡΠΈΡ‚ΡŒ

Β 

Β Β Β  TIM0_count=0;

Β  }

Β  T0IF=0;

}

Β 

Π’ΠΎΡ‚ Π² ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅ ΠΈ вСсь ΠΊΠΎΠ΄. Π‘ΠΎΠ±Π΅Ρ€Ρ‘ΠΌ Π΅Π³ΠΎ ΠΈ посмотрим Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ сначала Π² протСусС

Β 

Β 

Всё ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚.

ΠŸΡ€ΠΎΡˆΡŒΡ‘ΠΌ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ настоящий ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ΠΈ посмотрим всё, ΠΊΠ°ΠΊ говорится, наяву

Β 

Β 

ΠœΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ всё Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, Π° Π·Π°Π΄Π²ΠΎΠ΅Π½ΠΈΠ΅ происходит, Ρ‡Ρ‚ΠΎ пСриод горСния свСтодиода скорСС всСго мСньшС Ρ‡Π΅ΠΌ Π²Ρ‹Π΄Π΅Ρ€ΠΆΠΊΠ° ΠΊΠ°ΠΌΠ΅Ρ€Ρ‹ ΠΈ поэтому ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π² ΠΊΠ°Π΄Ρ€Β Π΅Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ свСтящийся Π΄ΠΈΠΎΠ΄.

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ самоС интСрСсноС. ΠœΡ‹ ΠΆΠ΅ Π½Π΅ Ρ‚Ρ€ΠΎΠ³Π°Π»ΠΈ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ запускаСт Π±Π΅Π³ΡƒΡ‰ΠΈΠ΅ ΠΎΠ³Π½ΠΈ ΠΏΠΎ Π½Π°ΠΆΠ°Ρ‚ΠΈΡŽ ΠΊΠ½ΠΎΠΏΠΊΠΈ. НаТмём Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΈ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ Π²ΠΎΡ‚ Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρƒ

Β 

Β 

Π—Π° Π±Π΅Π³ΡƒΡ‰ΠΈΠΌΠΈ огнями, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΌΠΈ ΠΏΠΎ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΡŽ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°ΠΌΠΈ устрСмится Π΅Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ Π±Π΅Π³ΡƒΡ‰ΠΈΠΉ огонь, Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹ΠΉ ΠΏΠΎ ΠΊΠ½ΠΎΠΏΠΊΠ΅. ΠŸΡ€Π°Π²Π΄Π° ΠΎΠ½ Π΅Π³ΠΎ Π½Π΅ Π΄ΠΎΠ³ΠΎΠ½ΠΈΡ‚, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Ρƒ нас 100 милисСкунд, Ρ‡Ρ‚ΠΎ большС Ρ‡Π΅ΠΌ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ ΠΌΠ΅ΠΆΠ΄Ρƒ прСрываниями. Но Ссли ΠΌΡ‹ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚ Π½Π°ΠΆΠΌΡ‘ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ Ρ€Π°Π½ΡŒΡˆΠ΅, Ρ‡Π΅ΠΌ запустится ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ Ρ†ΠΈΠΊΠ» ΠΎΡ‚ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, Ρ‚ΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π½Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» ΡƒΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠ½ΠΎΠΏΠΎΡ‡Π½Ρ‹ΠΉ Π΄ΠΎΠ³ΠΎΠ½ΠΈΡ‚.

Но всё Π΄Π΅Π»ΠΎ Π½Π΅ Π² этом, Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ ΡƒΠ²ΠΈΠ΄Π΅Π»ΠΈ, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ пСриодичСскиС дСйствия, Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Π΅ ΠΎΡ‚ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π½Π΅ Π²Π»ΠΈΡΡŽΡ‚ Π½Π° Ρ…ΠΎΠ΄ основной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. А это Π²Π΅Π»ΠΈΠΊΠΎΠ΅ Π΄Π΅Π»ΠΎ!

ВсСм спасибо Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!

Π–Π΄ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… интСрСсных ΡƒΡ€ΠΎΠΊΠΎΠ².

Β 

Β 

ΠŸΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ ΡƒΡ€ΠΎΠΊΒ ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ МК PICΒ Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΡƒΡ€ΠΎΠΊ

Β 

Π˜ΡΡ…ΠΎΠ΄Π½Ρ‹ΠΉ ΠΊΠΎΠ΄

Β 

Β 

ΠšΡƒΠΏΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ (Π½Π΅ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ) ΠΌΠΎΠΆΠ½ΠΎ здСсь: PICKit3

ΠšΡƒΠΏΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΎΡ€ (ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ) ΠΌΠΎΠΆΠ½ΠΎ здСсь: PICKit3 original

Β 

Β 

Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π’Π˜Π”Π•ΠžΠ£Π ΠžΠš (Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ)

Β 

PIC Π’Π°ΠΉΠΌΠ΅Ρ€Ρ‹

Post Views: 14Β 624

Ρ‚Π°ΠΉΠΌΠ΅Ρ€ 0 ΠΈ PIC16F628A

Π”ΠΆΠΎΠ½ Π£Π°ΠΉΠ»Π΄Π΅Ρ€

Π’Π°ΠΉΠΌΠ΅Ρ€, установлСнный Π½Π° микросхСмС Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… PIC, сбиваСт с Ρ‚ΠΎΠ»ΠΊΡƒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ…. Но, Π½Π΅ Π²ΠΎΠ»Π½ΡƒΠΉΡ‚Π΅ΡΡŒβ€¦ это, вСроятно, ΠΎΠ΄Π½Π° ΠΈΠ· самых простых встроСнных ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠΉΠ½Ρ‹Ρ… устройств для использования Π½Π° PIC. Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ PIC16F628A ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΎΠ³ΠΎ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ это Ρ‚Π°ΠΊ.

Π’Π°ΠΉΠΌΠ΅Ρ€

(TMR0) — это ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ‚Ρ€Π΅Ρ… доступных Π½Π° 16F628A Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ постоянно Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ — ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. Π­Ρ‚ΠΎ Π² основном 8-Π±ΠΈΡ‚Π½Ρ‹ΠΉ рСгистр Π² SFR, ΠΈ источник синхронизации ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊΠΎΠΌ синхронизации для TMR0 ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΠΈΠ±ΠΎ внСшний строб-сигнал, ΠΏΠΎΠ΄Π°Π²Π°Π΅ΠΌΡ‹ΠΉ Π½Π° Π²Ρ‹Π²ΠΎΠ΄ RA4 / T0CKI (T0CKI = Ρ‚Π°ΠΉΠΌΠ΅Ρ€ 0, Π²Ρ…ΠΎΠ΄ Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠ³ΠΎ сигнала), Π»ΠΈΠ±ΠΎ это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹ΠΉ Ρ†ΠΈΠΊΠ» ΠΊΠΎΠΌΠ°Π½Π΄. ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с внСшним стробоскопом это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ счСтчик, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ «считаСт» ΠΈΠΌΠΏΡƒΠ»ΡŒΡΡ‹ строба внСшнСго источника строба. ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с часами Ρ†ΠΈΠΊΠ»Π° инструкций ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΊΠ°ΠΊ Ρ‚Π°ΠΉΠΌΠ΅Ρ€. По этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ Π²Ρ‹ ΠΈΠ½ΠΎΠ³Π΄Π° Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΡΠ»Ρ‹ΡˆΠ°Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€Ρ‹ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ TMR0 Β«Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ / счСтчиком».

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, находящССся Π² рСгистрС TMR0, начинаСтся с 0x00, Π° Π·Π°Ρ‚Π΅ΠΌ увСличиваСтся с коэффициСнтом ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ ΠΎΡ‚ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ ΠΊ высокому Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠ³ΠΎ источника.Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π΅Π³ΠΎ для увСличСния ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ ΠΎΡ‚ высокого ΠΊ Π½ΠΈΠ·ΠΊΠΎΠΌΡƒ ΠΈΠ»ΠΈ ΠΊ Π½ΠΈΠ·ΠΊΠΎΠΌΡƒ ΡƒΡ€ΠΎΠ²Π½ΡŽ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ внСшнСго источника синхронизации. По сути, это просто рСгистр, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ считаСт ΠΈΠΌΠΏΡƒΠ»ΡŒΡΡ‹ ΠΎΡ‚ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· Π΄Π²ΡƒΡ… Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… источников Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹Ρ… ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠ² Π΄ΠΎ 0xFF (дСсятичноС 255). Для этого ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ часы ΠΊΠΎΠΌΠ°Π½Π΄, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ ΠΊΠ°ΠΊ Ρ‚Π°ΠΉΠΌΠ΅Ρ€.

Часы ΠΊΠΎΠΌΠ°Π½Π΄ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π½Π° 1/4 частоты Fosc. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ, Ссли Fosc = 4 ΠœΠ“Ρ†, наши Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹Π΅ ΠΈΠΌΠΏΡƒΠ»ΡŒΡΡ‹ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π° частотС 1 ΠœΠ“Ρ†, ΠΈΠ»ΠΈ ΠΎΠ΄Π½Π° инструкция Π² микросСкунду. Π’ этом сцСнарии — ΠΏΡ€ΠΈ условии, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π½Π΅ Π½Π°Π·Π½Π°Ρ‡Π°Π΅ΠΌ прСскалСр TM — Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ TMR0 увСличиваСтся ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠ΅ Ρ‚Π°ΠΊΡ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠΉ частотС ΠΊΠΎΠΌΠ°Π½Π΄ 1 ΠœΠ“Ρ† это ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² рСгистрС TMR0 ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· Π² ΠΊΠ°ΠΆΠ΄ΡƒΡŽ микросСкунду (1 / ΞΌ).

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ рСгистр TMR0 ΠΈΠΌΠ΅Π΅Ρ‚ ΡˆΠΈΡ€ΠΈΠ½Ρƒ всСго 8 Π±ΠΈΡ‚, максимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ TMR0 ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½, Ρ€Π°Π²Π½ΠΎ 0xFF ΠΈΠ»ΠΈ дСсятичному Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ 255. Π’ этот ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΎΠ½ возвращаСтся ΠΊ Π½ΡƒΠ»ΡŽ ΠΏΡ€ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠΌ ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠ΅. Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ происходит это ΠΎΠΏΡ€ΠΎΠΊΠΈΠ΄Ρ‹Π²Π°Π½ΠΈΠ΅, Π² рСгистрС INTCON устанавливаСтся Ρ„Π»Π°Π³ прСрывания ΠΎΡ‚ Π’Π°ΠΉΠΌΠ΅Ρ€Π° 0 (T0IF). Π­Ρ‚ΠΎΡ‚ Ρ„Π»Π°Π³ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΡΠ±Ρ€ΠΎΡˆΠ΅Π½ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ обСспСчСнии.

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ TMR0 Π² настоящСС врСмя выполняСтся с ΠΎΠ΄Π½ΠΈΠΌ ΠΏΡ€ΠΈΡ€Π°Ρ‰Π΅Π½ΠΈΠ΅ΠΌ Π½Π° Β΅, это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ происходит ΠΎΠΏΡ€ΠΎΠΊΠΈΠ΄Ρ‹Π²Π°Π½ΠΈΠ΅, ΠΈ Ρ„Π»Π°Π³ T0IF устанавливаСтся ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 256ΞΌ (0x00 — 0xFF ΠΈΠ»ΠΈ 0-255 для 256 ΠΏΡ€ΠΈΡ€Π°Ρ‰Π΅Π½ΠΈΠΉ).Если ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΡˆΠ΅Π» ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ 256 ΠΌΠΊΠΌ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ TMR0, ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ Ρ„Π»Π°Π³ T0IF, Π·Π°Ρ‚Π΅ΠΌ ΠΎΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ Ρ„Π»Π°Π³ прСрывания T0IF, ΠΏΠΎΠΊΠ° T0IF Π½Π΅ достигнСт высокого уровня (ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΎ ΠΎΠΏΡ€ΠΎΠΊΠΈΠ΄Ρ‹Π²Π°Π½ΠΈΠ΅), ΠΈ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Π½Π°ΡˆΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ.

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π±Ρ‹Π» Π±Ρ‹ бСсполСзСн Π±Π΅Π· ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ способа Π·Π°ΠΌΠ΅Π΄Π»ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π΄ΠΎ Ρ€Π°Π·Π½Ρ‹Ρ… скоростСй приращСния. Π­Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π° «прСскалСра». ΠŸΡ€Π΅ΡΠΊΠ°Π»Π΅Ρ€ позволяСт Π½Π°ΠΌ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ вмСсто увСличСния Π΅Π³ΠΎ Π½Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΈΠΌΠΏΡƒΠ»ΡŒΡ ΠΌΡ‹ ΠΌΠΎΠ³Π»ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ Π΄Π²Π° Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹Ρ… ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠ°, ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅, ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ восСмь ΠΈ Ρ‚. Π”. Π’ΠΏΠ»ΠΎΡ‚ΡŒ Π΄ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹Ρ… 256 Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹Ρ… ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠ².Если Π±Ρ‹ ΠΌΡ‹ установили прСскалСр Π½Π° 1: 256 с Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠΉ частотой 1 ΠœΠ“Ρ†, Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 256 ΠΌΠΊΠΌ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ наш рСгистр TMR0 ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄ΠΎ 256, ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, сколько Ρ€Π°Π· ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ 256ΞΌ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Π΄ΠΎ 256 Ρ€Π°Π·. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ T0IF Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 65,5 мсСк (миллисСкунды … 256 мкс Ρ… 256 = 65,5 мсСк).

Π§Π΅Ρ‚Ρ‹Ρ€Π΅ рСгистра TMR0
Π‘ TMR0 связаны Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ рСгистра: TMR0, OPTION_REG, INTCON ΠΈ TRISA. Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° это ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ.

TMRo
РСгистр TMR0 содСрТит Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ увСличиваСтся источником Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹Ρ… ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠ².Π›ΡŽΠ±Ρ‹Π΅ записи Π² этот рСгистр (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, clrf TMR0, movwf TMR0, bsf TMR0, X) Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‡ΠΈΡ‰Π°ΡŽΡ‚ прСскалСр ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π΄ΠΎ 1: 2. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Π°ΠΌ придСтся ΡΠ±Ρ€Π°ΡΡ‹Π²Π°Ρ‚ΡŒ прСскалСр ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Ρ‚ΡƒΠ΄Π°, Π³Π΄Π΅ ΠΎΠ½ Π±Ρ‹Π» Ρƒ вас ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ для рСгистрации TMR0, Ссли ΠΎΠ½ Π±Ρ‹Π» установлСн Π³Π΄Π΅-Ρ‚ΠΎ, ΠΊΡ€ΠΎΠΌΠ΅ 1: 2.

OPTION_REG
____
| Π Π‘ΠŸΠ£ | INTEDG | T0CS | T0SE | PSA | PS2 | PS1 | PS0 |

РСгистр OPTION содСрТит ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ Π±ΠΈΡ‚Ρ‹ для ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ:

  • Π’Π°ΠΉΠΌΠ΅Ρ€ 0 Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ синхронизации (T0CS)
  • Π‘ΠΈΡ‚ Π²Ρ‹Π±ΠΎΡ€Π° края Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° 0 (TOSE)
  • ΠŸΡ€Π΅Π΄Π½Π°Π±ΠΎΡ€Π½Ρ‹ΠΉ Π±ΠΈΡ‚ назначСния (PSA)
  • Π‘ΠΈΡ‚Ρ‹ Π²Ρ‹Π±ΠΎΡ€Π° скорости прСдскалСра (PS2-PS0)

T0CS — Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ источник синхронизации для TMR0.По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 1 / T0CKI. ΠžΡ‡ΠΈΡΡ‚ΠΊΠ° этого Π±ΠΈΡ‚Π° Π²Ρ‹Π±Π΅Ρ€Π΅Ρ‚ Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π² качСствС источника Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠΉ частоты TMR0.

T0SE — опрСдСляСт, Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΈ TMR0 ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠΎ Π½Π°Ρ€Π°ΡΡ‚Π°ΡŽΡ‰Π΅ΠΌΡƒ ΠΈΠ»ΠΈ ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅ΠΌΡƒ Ρ„Ρ€ΠΎΠ½Ρ‚Ρƒ T0CKI. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 1 / ΠŸΡ€ΠΈΡ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΏΠ°Π΄Π°ΡŽΡ‰Π΅ΠΌΡƒ Ρ„Ρ€ΠΎΠ½Ρ‚Ρƒ. ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° T0CKI являСтся источником синхронизации.

PSA — устанавливаСт, Π½Π°Π·Π½Π°Ρ‡Π΅Π½ Π»ΠΈ прСскалСр TMR0 ΠΈΠ»ΠΈ стороТСвому Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρƒ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 1 / Prescaler Π½Π°Π·Π½Π°Ρ‡Π΅Π½ Π½Π° WDT. ΠŸΡ€ΠΈ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ Π½Π° WDT TMR0 Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² ΠΌΠ°ΡΡˆΡ‚Π°Π±Π΅ 1: 1 (увСличиваСтся с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠΌ Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠ³ΠΎ источника).

PS2-PS0 — устанавливаСт ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ 1: 2 Π΄ΠΎ 1: 256 Π² значСниях, ΠΊΡ€Π°Ρ‚Π½Ρ‹Ρ… Π±ΠΈΡ‚Π°ΠΌ. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 111/1: 256 (1: 128, Ссли Π½Π°Π·Π½Π°Ρ‡Π΅Π½ WDT).

Code text pix 1
Настройка TMR0 с Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹ΠΌΠΈ часами ΠΊΠΎΠΌΠ°Π½Π΄ Π² качСствС источника Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹Ρ… ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠ² ΠΈ прСскалСром 1: 4

INTCON
РСгистр управлСния прСрываниями INTCON содСрТит ΠΊΠ°ΠΊ Π±ΠΈΡ‚ управлСния прСрываниями TMR0 (T0IE), Ρ‚Π°ΠΊ ΠΈ Π±ΠΈΡ‚ Ρ„Π»Π°Π³Π° прСрывания TMR0 (T0IF). Если ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ TMR0 Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ (ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ T0IE = 1… ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ), счСтчик ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅Ρ‚ ΠΊ ΠΊΠΎΠ΄Ρƒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° прСрывания ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ TMR0, ΠΊΠΎΠ³Π΄Π° Π±ΡƒΠ΄Π΅Ρ‚ установлСно Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ T0IF (T0IF Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ обСспСчСнии Π΄ΠΎ Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΈΠ· прСрывания).Однако, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ T0IF ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ ΠΈΠ»ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ TMR0, ΠΎΠ½ΠΎ всСгда доступно для опроса, Ссли Π²Ρ‹ Π½Π΅ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ TMR0 ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Π» ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅.

code text 2
Настройка прСрывания TMR0

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ нСсколько ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ, Π²Π°ΠΌ придСтся ΠΎΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ всС свои Ρ„Π»Π°Π³ΠΈ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ Π²Ρ‹Π·Π²Π°Π»ΠΎ условиС прСрывания, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΠΊΠΎΠ΄Ρƒ.

TRISA
РСгистр TRISA содСрТит Π±ΠΈΡ‚ направлСния ΠΏΠΎΡ€Ρ‚Π° для RA4 / T0CKI.Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ RA4 Π² качСствС Π²Ρ…ΠΎΠ΄Π° источника синхронизации TMR0, Π±ΠΈΡ‚ TRISA 4 Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ установлСн для настройки Π΅Π³ΠΎ Π² качСствС Π²Ρ…ΠΎΠ΄Π°.

code text 3
Полная настройка TMR0 с ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ΠΌ, Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹ΠΌ сигналом Π² качСствС источника Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠ³ΠΎ сигнала ΠΈ прСскалСром 1: 4

Если ΠΌΡ‹ опускаСм Π΄Π²Π΅ Π½ΠΈΠΆΠ½ΠΈΠ΅ строки ΠΊΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ΠΌ TMR0, ΠΌΡ‹ всС Ρ€Π°Π²Π½ΠΎ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ Ρ„Π»Π°Π³ прСрывания TMR0, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° происходит ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅:

code text 4

ИспользованиС TMR0 Π² качСствС счСтчика
Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ TMR0 Π² качСствС счСтчика ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠ².Для этого Π²Ρ‹ настраиваСтС T0CKI ΠΊΠ°ΠΊ источник синхронизации, устанавливая Π±ΠΈΡ‚ T0CS Π² OPTION_REG. Π‘ΠΈΡ‚ T0SE Π² OPTION_REG Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡ‚ΡŒ, увСличиваСтся Π»ΠΈ рСгистр TMR0 ΠΏΠΎ Π·Π°Π΄Π½Π΅ΠΌΡƒ Ρ„Ρ€ΠΎΠ½Ρ‚Ρƒ источника ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠ² (1) ΠΈΠ»ΠΈ ΠΏΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π½Π΅ΠΌΡƒ Ρ„Ρ€ΠΎΠ½Ρ‚Ρƒ источника ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠ² (0).

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π΄Π²ΡƒΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ… Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ² для настройки ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ, ΠΈΠ»ΠΈ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ обСспСчСнии с Ρ†ΠΈΠΊΠ»Π°ΠΌΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ. НастройтС ΠΊΠΎΠ΄, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ½ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ†ΠΈΠΊΠ» Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ, послС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ производится Π²Ρ‹Π±ΠΎΡ€ΠΊΠ° TMR0, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, сколько ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠΎΠ² Π±Ρ‹Π»ΠΎ подсчитано Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ установлСнного ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ.

И это всС, Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ ΠΎ TMR0. ΠŸΡ€ΠΎΡΡ‚ΠΎ Π²Π΅Ρ€Π½ΠΎ?


jon wilder avatar smallest
Об Π°Π²Ρ‚ΠΎΡ€Π΅
Π”ΠΆΠΎΠ½ Π£Π°ΠΉΠ»Π΄Π΅Ρ€ являСтся нСзависимым ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠΌ-элСктронщиком ΠΈ энтузиастом элСктроники Π±ΠΎΠ»Π΅Π΅ 20 Π»Π΅Ρ‚. Он ΠΏΡ€ΠΎΠ²Π΅Π» Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ Π³ΠΎΠ΄Π° Π² Π’ΠœΠ‘ БША Π² качСствС спСциалиста ΠΏΠΎ Π°Π²ΠΈΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ элСктроникС. Π”ΠΆΠΎΠ½ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ³Ρ€Π°Π΅Ρ‚ Π½Π° Π³ΠΈΡ‚Π°Ρ€Π΅ с 13 Π»Π΅Ρ‚ ΠΈ Π½Π°Ρ‡Π°Π» ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ элСктронику ΠΈ ΠΌΡƒΠ·Ρ‹ΠΊΡƒ с 15 Π»Π΅Ρ‚. Π”ΠΆΠΎΠ½ создал свой ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π»Π°ΠΌΠΏΠΎΠ²Ρ‹ΠΉ ΡƒΡΠΈΠ»ΠΈΡ‚Π΅Π»ΡŒ Π² 17 Π»Π΅Ρ‚. Β«ΠœΡƒΠ·Ρ‹ΠΊΠ°Π»ΡŒΠ½Π°Ρ элСктроника», Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ Π”ΠΆΠΎΠ½, это Π΅Π³ΠΎ любовь ΠΈ ΡΡ‚Ρ€Π°ΡΡ‚ΡŒ.

Π”ΠΆΠΎΠ½ Ρ‚Π°ΠΊΠΆΠ΅ являСтся частым участником ΠΈ страстным Ρ‡Π»Π΅Π½ΠΎΠΌ Electro-Tech-Online, сообщСства Ρ‡Π»Π΅Π½ΠΎΠ² элСктротСхники. На сайтС Electro-Tech-Online Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ вопросы ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚Ρ‹ ΠΎΡ‚ ΠΊΠΎΠ»Π»Π΅Π³-ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΎΠ² ΠΏΠΎ всСм вопросам — ΠΎΡ‚ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠ², возобновляСмых источников энСргии ΠΈ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½ΠΎΠΉ элСктроники Π΄ΠΎ модСлирования ΠΈ проСктирования схСм. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ спСциализированныС Ρ„ΠΎΡ€ΡƒΠΌΡ‹ MCU для 8051/8951, AVR, ARM, Arduino, Oshonsoft Project, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ ΠΊΠΎΠ΄Π°, Π³Π΄Π΅ участники дСлятся Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΊΠΎΠ΄Π°.

Π‘Π»Π΅Π΄ΡƒΠΉΡ‚Π΅ Π·Π° Π”ΠΆΠΎΠ½ΠΎΠΌ Π² Π’Π²ΠΈΡ‚Ρ‚Π΅Ρ€Π΅ Π½Π° @PICmcuguy.

,Π’Π°ΠΉΠΌΠ΅Ρ€ ΠΎΡ‚
Π΄ΠΎ 99 ΠΌΠΈΠ½ΡƒΡ‚ с использованиСм ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° PIC16F628A

На ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΉ Π½Π΅Π΄Π΅Π»Π΅ я просматривал свой старый Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρ‹ΠΉ ТСсткий диск ΠΈ нашСл исходный ΠΊΠΎΠ΄ для ΠΎΡ‡Π΅Π½ΡŒ простого Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠ³ΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π½Π° основС PIC, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ я сдСлал ΠΏΠ°Ρ€Ρƒ Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄. ЀактичСскоС ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° большС Π½Π΅ со ΠΌΠ½ΠΎΠΉ. Π― ΠΌΠΎΠ³ ΠΏΠΎΡ‚Π΅Ρ€ΡΡ‚ΡŒ Π΅Π³ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΏΠ΅Ρ€Π΅Π΅Ρ…Π°Π» ΠΈΠ· своСй старой ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€Ρ‹ Π² свой Π½ΠΎΠ²Ρ‹ΠΉ Π΄ΠΎΠΌ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, я ΠΏΠΎΠ΄ΡƒΠΌΠ°Π», Ρ‡Ρ‚ΠΎ это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠΌ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…, ΠΈ поэтому я дСлюсь ΠΈΠΌ здСсь. Π― Π½Π΅ ΡΠΎΠ±ΠΈΡ€Π°ΡŽΡΡŒ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π΅Π³ΠΎ с нуля снова; Π― скорСС ΠΏΡ€ΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽ это, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΌΠΎΠΉ ΠΌΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ PIC16F628A DIY ΠΈ ΠΏΠ»Π°Ρ‚Ρƒ Π²Π²ΠΎΠ΄Π° / Π²Ρ‹Π²ΠΎΠ΄Π°.Полная ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Π°Ρ схСма вмСстС с ΠΌΠΈΠΊΡ€ΠΎΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠΉ с использованиСм mikroC Pro для PIC-компилятора, прСдставлСна ​​в ΡΡ‚Π°Ρ‚ΡŒΠ΅.

Π’Π°ΠΉΠΌΠ΅Ρ€ 0-99 ΠΌΠΈΠ½ΡƒΡ‚

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Π°Ρ схСма

Как я ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π» Ρ€Π°Π½Π΅Π΅, ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Π² этом ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅, прСдставляСт собой PIC16F628A, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ Π½Π° Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠΉ частотС 4,0 ΠœΠ“Ρ† с использованиСм внСшнСго кристалла. 16Ρ…2-ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Π–Πš-дисплСй Π½Π° основС HD44780 являСтся основным Π±Π»ΠΎΠΊΠΎΠΌ дисплСя ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π³Π΄Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒ ΠΈ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²Ρ…ΠΎΠ΄ΠΎΠ² Ρ‚Π°ΠΊΡ‚ΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ. К ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Π°ΠΌ RB0 (пуск / стоп), RB1 (ΡŽΠ½ΠΈΡ‚) ΠΈ RB2 (Π΄Π΅ΡΡΡ‚ΡŒ) ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Ρ‚Ρ€ΠΈ Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ.Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΎΡ‚ 0 Π΄ΠΎ 99 ΠΌΠΈΠ½ΡƒΡ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Π΅ΠΉ Unit ΠΈ Ten ΠΌΠΈΠ½ΡƒΡ‚. ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ Π‘Ρ‚Π°Ρ€Ρ‚ / Π‘Ρ‚ΠΎΠΏ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Когда Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ, Π½Π° Π²Ρ‹Π²ΠΎΠ΄Π΅ RA3 появляСтся сигнал высокого логичСского уровня, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ€Π΅Π»Π΅. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Π°Ρ схСма этого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° описана Π½ΠΈΠΆΠ΅.

0-99 минутная схСма Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°

Π― ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ свой ΡΠ°ΠΌΠΎΠ΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ°ΠΊΠ΅Ρ‚ для PIC16F628A ΠΈ ΠΏΠ»Π°Ρ‚Ρƒ Π²Π²ΠΎΠ΄Π° / Π²Ρ‹Π²ΠΎΠ΄Π° экспСримСнтатора здСсь, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот ΠΏΡ€ΠΎΠ΅ΠΊΡ‚. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π½Π° ΠΏΠ»Π°Ρ‚Π΅ Π²Π²ΠΎΠ΄Π° / Π²Ρ‹Π²ΠΎΠ΄Π° Π½Π΅Ρ‚ Ρ€Π΅Π»Π΅, я ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°ΡŽ Π²Ρ‹Ρ…ΠΎΠ΄ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° (Π²Ρ‹Π²ΠΎΠ΄ RA3) ΠΊ свСтодиоду.Когда Ρ‚Π°ΠΉΠΌΠ΅Ρ€ запускаСтся, свСтодиод Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ. По истСчСнии Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° свСтодиод Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ.

Настройка схСмы

Π Π°Π±ΠΎΡ‚Π° Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°

Когда устройство Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ, ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Π–Πš-дисплСй ΠΈ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ сообщСниС. Π’Π°ΠΉΠΌΠ΅Ρ€ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½, ΠΊΠ°ΠΊ ΠΈ свСтодиод ΠΈΠ»ΠΈ Ρ€Π΅Π»Π΅, Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ· Π½ΠΈΡ… ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΊ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρƒ RA3.

Π‘ΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ отобраТаСтся ΠΏΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ питания

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ 00 Π΄ΠΎ 99 ΠΌΠΈΠ½ΡƒΡ‚ (с шагом 1 ΠΌΠΈΠ½ΡƒΡ‚Π°), ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ Unit ΠΈ Ten.КаТдоС Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»Ρ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ Ρ†ΠΈΡ„Ρ€Ρƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Установка Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΌΠΈΠ½ΡƒΡ‚Π°

Когда ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠ΅ врСмя установлСно, Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ Π‘Ρ‚Π°Ρ€Ρ‚ / Π‘Ρ‚ΠΎΠΏ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π’Ρ‹Π²ΠΎΠ΄ RA3 становится высоким (свСтодиод свСтится), ΠΈ начинаСтся ΠΎΠ±Ρ€Π°Ρ‚Π½Ρ‹ΠΉ отсчСт. Когда Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½, ΠΎΡΡ‚Π°Π²ΡˆΠ΅Π΅ΡΡ врСмя Ρ‚Π°ΠΊΠΆΠ΅ отобраТаСтся Π½Π° экранС Π–ΠšΠ”. По истСчСнии Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ останавливаСтся ΠΈ свСтодиод гаснСт. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€Π΅Ρ€Π²Π°Ρ‚ΡŒ ΠΈ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π² любоС врСмя, Π΅Ρ‰Π΅ Ρ€Π°Π· Π½Π°ΠΆΠ°Π² ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ Π‘Ρ‚Π°Ρ€Ρ‚ / Π‘Ρ‚ΠΎΠΏ.

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡΡ‚Π°Π²ΡˆΠ΅Π³ΠΎΡΡ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° Π–Πš-дисплСС

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС

ΠŸΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° для PIC Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° с использованиСм mikroC Pro для PIC-компилятора.ИспользованиС Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ² ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ для простоты. Π’Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Delay_ms () mikroC, которая, ΠΏΠΎ-Π²ΠΈΠ΄ΠΈΠΌΠΎΠΌΡƒ, Π΄Π°Π΅Ρ‚ достаточно Ρ‚ΠΎΡ‡Π½Ρ‹Π΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ.

Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ исходный ΠΊΠΎΠ΄ mikroC ΠΈ HEX-Ρ„Π°ΠΉΠ»

Для Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΎΠ΄Π²ΠΈΠ½ΡƒΡ‚ΠΎΠ³ΠΎ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠ³ΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΌΠΎΠΉ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚: ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€.

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ сообщСния

,
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ с использованиСм ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° PIC

Π¦ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для управлСния Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ элСктричСских устройств Π½Π° основС Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ расписания. Π’ этом ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ описан ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π½Π° основС ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° PIC16F628A, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ для планирования Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ элСктроприборов. ΠŸΡ€ΠΈΠ±ΠΎΡ€ управляСтся Ρ‡Π΅Ρ€Π΅Π· Ρ€Π΅Π»Π΅ΠΉΠ½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŒ. Π­Ρ‚ΠΎΡ‚ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ позволяСт ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ врСмя Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ устройство ΠΈ ΠΊΠ°ΠΊ Π΄ΠΎΠ»Π³ΠΎ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΎ ΠΎΡΡ‚Π°Π²Π°Π»ΠΎΡΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌ.ΠœΠ°ΠΊΡΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, составляСт 99 часов 59 ΠΌΠΈΠ½ΡƒΡ‚. Π’ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ прСдусмотрСн ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ интСрфСйс с использованиСм 16-символьного Π–Πš-дисплСя ΠΈ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… ΠΊΠ½ΠΎΠΏΠΎΠΊ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: (30 июня 2016 Π³.) ΠŸΠ΅Ρ€Π΅ΡΠΌΠΎΡ‚Ρ€Π΅Π½Π½Π°Ρ вСрсия этого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° с Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹ΠΌΠΈ Π½ΠΎΠ²Ρ‹ΠΌΠΈ функциями Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Π° здСсь .

Π‘Ρ…Π΅ΠΌΠΎΡ‚Π΅Ρ…Π½ΠΈΠΊΠ°

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Π°Ρ схСма этого ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½ΠΈΠΆΠ΅.Π Π΅Π»Π΅ 5 Π’ управляСтся транзистором PN2222, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ управляСтся ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠΌ RB3 PIC16F628A. Π¦ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ Π²Ρ…ΠΎΠ΄Ρ‹ ΠΎΡ‚ 4 ΠΊΠ½ΠΎΠΏΠΎΠΊ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· Π²Ρ‹Π²ΠΎΠ΄Ρ‹ ΠΏΠΎΡ€Ρ‚ΠΎΠ² RA2, RA3, RA4 ΠΈ RB0. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ этих ΠΊΠ½ΠΎΠΏΠΎΠΊ ΠΎΠ±ΡΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½ΠΈΠΆΠ΅. Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ 16 Γ— 2-ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ Π–Πš-дисплСй ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ для отобраТСния состояния устройства, мСню ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π–Πš-дисплСй Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² 4-Π±ΠΈΡ‚Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅, поэтому для Π΅Π³ΠΎ управлСния трСбуСтся всСго 6 Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ² Π²Π²ΠΎΠ΄Π° / Π²Ρ‹Π²ΠΎΠ΄Π° PIC16F628A. ΠŸΡŒΠ΅Π·ΠΎΡΠ»Π΅ΠΊΡ‚Ρ€ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ Π·ΡƒΠΌΠΌΠ΅Ρ€ ΠΏΠΎΠ΄Π°Π΅Ρ‚ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнал ΠΏΡ€ΠΈ запускС ΠΈ остановкС Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°.Он Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠ·Π΄Π°Π΅Ρ‚ Π·Π²ΡƒΠΊΠΎΠ²Ρ‹Π΅ сигналы, ΠΊΠΎΠ³Π΄Π° устройство Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ ΠΈΠ»ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ. Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ питания + 5 Π’ для схСмы ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ ΠΎΡ‚ ИБ рСгулятора LM7805. Π’Ρ…ΠΎΠ΄ Π² рСгулятор подаСтся ΠΎΡ‚ настСнного Π°Π΄Π°ΠΏΡ‚Π΅Ρ€Π° постоянного Ρ‚ΠΎΠΊΠ° 9 Π’.

На ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ схСмС ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ 15 ΠΈ 16 Π–Πš-дисплСя ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΌΠΈ. Π­Ρ‚ΠΈ ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ доступны Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚Π΅Ρ… Π–Πš-дисплСях, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ подсвСтку подсвСтки. ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ 15 ΠΈ 16 ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π°Π½ΠΎΠ΄ΠΎΠΌ ΠΈ ΠΊΠ°Ρ‚ΠΎΠ΄ΠΎΠΌ свСтодиода. Если ваш Π–Πš-дисплСй оснащСн свСтодиодом Π·Π°Π΄Π½Π΅ΠΉ подсвСтки, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ эти ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ ΠΊ ΠΊΠ»Π΅ΠΌΠΌΠ°ΠΌ источника питания с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ рСзистора 39 Ом ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ.Π‘Π²Π΅Ρ‚ΠΎΠ΄ΠΈΠΎΠ΄ подсвСтки ΡƒΠ»ΡƒΡ‡ΡˆΠ°Π΅Ρ‚ Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΡΡ‚ΡŒ Π–Πš-дисплСя Π² условиях Π½ΠΈΠ·ΠΊΠΎΠΉ освСщСнности.

Полная схСма, припаянная Π½Π° ΠΏΠ΅Ρ‡Π°Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Π΅ ΠΎΠ±Ρ‰Π΅Π³ΠΎ назначСния, ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½ΠΈΠΆΠ΅.

Π Π°Π±ΠΎΡ‚Π° Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°

Π’Π°ΠΉΠΌΠ΅Ρ€ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ 4 ΠΊΠ½ΠΎΠΏΠΎΠΊ. Π˜Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ описаны ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

  • Π’Π Π•ΠœΠ― Π’ΠšΠ› / Π’Π«ΠšΠ›: Π­Ρ‚ΠΎ устройство Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° позволяСт Π²Π°ΠΌ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ врСмя Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. Когда Ρ‚Π°ΠΉΠΌΠ΅Ρ€ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½, устройство находится Π² Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠΌ состоянии, ΠΈ врСмя Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ρ€Π°Π²Π½ΠΎ 0.НаТав эту ΠΊΠ½ΠΎΠΏΠΊΡƒ, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π½Π° дисплСС.
  • Π’Π«Π‘ΠžΠ : ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ настройками Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Π° Ρ‚Π°ΠΊΠΆΠ΅ часами ΠΈ ΠΌΠΈΠ½ΡƒΡ‚Π°ΠΌΠΈ. Выбранная Ρ†ΠΈΡ„Ρ€Π° увСличиваСтся Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π’Π Π•ΠœΠ― Π’ΠšΠ› / Π’Π«ΠšΠ›.
  • ENTER: Когда Π²Ρ‹Π±Ρ€Π°Π½Ρ‹ подходящий час ΠΈ ΠΌΠΈΠ½ΡƒΡ‚Ρ‹, Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ENTER, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ врСмя Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈΠ»ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.
  • START / STOP — запуск ΠΈΠ»ΠΈ остановка Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Если Ρ‚Π°ΠΉΠΌΠ΅Ρ€ ΡƒΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² любой ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²ΠΎ врСмя Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρ‹, Π½Π°ΠΆΠ°Π² эту ΠΊΠ½ΠΎΠΏΠΊΡƒ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ посмотрим, ΠΊΠ°ΠΊ это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ устройство, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½ΠΎΠ΅ ΠΊ Ρ€Π΅Π»Π΅ΠΉΠ½ΠΎΠΌΡƒ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΡŽ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· 2 ΠΌΠΈΠ½ΡƒΡ‚Ρ‹. Π”Π°Π»Π΅Π΅, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ½ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… 20 ΠΌΠΈΠ½ΡƒΡ‚. Π’ этом случаС врСмя Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ составляСт 00:02, Π° врСмя Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ — 00:20 Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Ρ‡Ρ‡: ΠΌΠΌ. ПослС запуска Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° устройство Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Ρ‡Π΅Ρ€Π΅Π· 2 ΠΌΠΈΠ½ΡƒΡ‚Ρ‹ ΠΈ остаСтся Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌ Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ 20 ΠΌΠΈΠ½ΡƒΡ‚. ПослС этого ΠΎΠ½ снова Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π²ΠΈΠ΄Π΅ΠΎ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, ΠΊΠ°ΠΊ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС

ΠŸΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° с использованиСм MikroC Pro для PIC-компилятора.
Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ исходный ΠΊΠΎΠ΄

Π‘ΠΊΠ°Ρ‡Π°Ρ‚ΡŒ HEX Ρ„Π°ΠΉΠ»

Π¦ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€

ОбновлСниС (04/12/2013)
ΠœΠ°Ρ€ΠΊ Π’Π΅ΠΉΡ€ ΠΈΠ· Австралии прислал Π½Π°ΠΌ свой пСрСсмотрСнный Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ нашСго ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠ³ΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° . Он ΠΈΠ·ΠΌΠ΅Π½ΠΈΠ» исходный ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» написан для PIC16F628A, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ PIC18F4620, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ ΠΈ ΠΎΠ±Ρ‰ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ возмоТности ΠΎΡΡ‚Π°Π»ΠΈΡΡŒ ΠΏΡ€Π΅ΠΆΠ½ΠΈΠΌΠΈ.

Π¦ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ с использованиСм PIC18F4620

Π’ΠΎΡ‚ ссылка Π½Π° скачиваниС Π΅Π³ΠΎ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ вСрсии ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ, написанной Π² компиляторС MikroC.

Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ сообщСния

,
ПониманиС Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ² Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π΅ PIC со свСтодиодной ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ мигания

Π­Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ пятый ΡƒΡ€ΠΎΠΊ ΠΈΠ· нашСй сСрии PIC Tutorial , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΠΈΠ·ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ Π² PIC16F877A . Π’ Π½Π°ΡˆΠΈΡ… ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… ΡƒΡ€ΠΎΠΊΠ°Ρ… ΠΌΡ‹ Π½Π°Ρ‡Π°Π»ΠΈ с ввСдСния Π² PIC ΠΈ MPLABX IDE, Π·Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ написали Π½Π°ΡˆΡƒ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ PIC, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΈΠ³Π°Ρ‚ΡŒ свСтодиод с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ PIC, Π° Π·Π°Ρ‚Π΅ΠΌ создали ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ мигания свСтодиода с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Π² ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π΅ PIC. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ‚Ρƒ ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ мигания свСтодиодов, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ использовали Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ ΡƒΡ‡Π΅Π±Π½ΠΎΠΌ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠΈ, ΠΈ вмСстС с этим ΠΌΡ‹ ΡƒΠ·Π½Π°Π΅ΠΌ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ Π² нашСй PIC MCU .ΠœΡ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π΅Ρ‰Π΅ ΠΎΠ΄Π½Ρƒ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π² ΡΠ²Π΅Ρ‚ΠΎΠ΄ΠΈΠΎΠ΄Π½ΡƒΡŽ панСль для этого ΡƒΡ€ΠΎΠΊΠ°. ΠŸΡ€ΠΎΠΉΠ΄ΠΈΡ‚Π΅ ΡƒΡ‡Π΅Π±Π½ΠΈΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ большС.

Π’Π°ΠΉΠΌΠ΅Ρ€Ρ‹ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π²Π°ΠΆΠ½Ρ‹Ρ… Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… лошадок для встроСнного программиста. КаТдоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌ, Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠ°ΠΊΠΈΠΌ-Ρ‚ΠΎ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ синхронизации, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Π»ΠΈΠ±ΠΎ послС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π₯ΠΎΡ€ΠΎΡˆΠΎ, Π½ΠΎ Π·Π°Ρ‡Π΅ΠΌ Π½Π°ΠΌ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹, ΠΊΠΎΠ³Π΄Π° Ρƒ нас ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ макросы Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ (__delay_ms ()), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄Π΅Π»Π°ΡŽΡ‚ Ρ‚ΠΎ ΠΆΠ΅ самоС !!

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€, ΠΊΠΎΠ³Π΄Π° Ρƒ нас Π΅ΡΡ‚ΡŒ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° ()?

ΠœΠ°ΠΊΡ€ΠΎΡ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ называСтся Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ «сброса».ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π²ΠΎ врСмя выполнСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ MCU выполняСт Π΄Π°ΠΌΠΏ, просто создав Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ . Π’ΠΎ врСмя этого процСсса MCU Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Ρ‚ΡŒ свои значСния АЦП ΠΈΠ»ΠΈ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Π»ΠΈΠ±ΠΎ ΠΈΠ· своих рСгистров. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π½Π΅ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΠΌΠΈΠ³Π°Π½ΠΈΠ΅ свСтодиода, Π³Π΄Π΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ.

ΠœΠ°ΠΊΡ€ΠΎΡΡ‹ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅ΡŽΡ‚ послС ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΡ… поступлСний ,

  1. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ постоянным для макроса Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ; Π΅Π³ΠΎ нСльзя ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²ΠΎ врСмя выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ это остаСтся ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ программистом.
  2. Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с использованиСм Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ².
  3. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ΅ значСния Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ созданы с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ макросов, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π½Π° полчаса Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ создана с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ макросов Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ. Максимальная Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, основана Π½Π° использовании ΠΊΠ²Π°Ρ€Ρ†Π΅Π²ΠΎΠ³ΠΎ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°.

PIC ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Π’Π°ΠΉΠΌΠ΅Ρ€Ρ‹:

ЀизичСски, Ρ‚Π°ΠΉΠΌΠ΅Ρ€ — это рСгистр, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ постоянно увСличиваСтся Π΄ΠΎ 255, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΎΠ½ начинаСтся Π·Π°Π½ΠΎΠ²ΠΎ: 0, 1, 2, 3, 4…255 …. 0, 1, 2, 3 …… ΠΈ Ρ‚. Π”.

PIC MCU PIC16F877A ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Ρ€ΠΈ модуля Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° . Они Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Timer0, Timer1 ΠΈ Timer2. Π’Π°ΠΉΠΌΠ΅Ρ€ 0 ΠΈ Π’Π°ΠΉΠΌΠ΅Ρ€ 2 — это 8-Π±ΠΈΡ‚Π½Ρ‹Π΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹, Π° Π’Π°ΠΉΠΌΠ΅Ρ€ 1 — это 16-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π’ этом ΡƒΡ€ΠΎΠΊΠ΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ 0 для нашСго прилоТСния. Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΡ‹ ΠΏΠΎΠΉΠΌΠ΅ΠΌ Π’Π°ΠΉΠΌΠ΅Ρ€ 0, Π±ΡƒΠ΄Π΅Ρ‚ Π»Π΅Π³ΠΊΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π’Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ 1 ΠΈ Π’Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ 2.

Π’Π°ΠΉΠΌΠ΅Ρ€ / счСтчик модуля Timer0 ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ особСнности:

  • 8-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ / счСтчик
  • для чтСния ΠΈ записи
  • 8-Π±ΠΈΡ‚Π½Ρ‹ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ прСскалСр
  • Π’Ρ‹Π±ΠΎΡ€ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΡ… ΠΈΠ»ΠΈ Π²Π½Π΅ΡˆΠ½ΠΈΡ… часов
  • ΠŸΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ с FFh Π½Π° 00h
  • Edge select для Π²Π½Π΅ΡˆΠ½ΠΈΡ… часов

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Ρ‚Π°ΠΊΠΈΡ… ΠΏΡ€ΠΈΡ‡ΡƒΠ΄Π»ΠΈΠ²Ρ‹Ρ… Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ², ΠΊΠ°ΠΊ 8-Π±ΠΈΡ‚Π½Ρ‹ΠΉ / 16-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€, прСскалСр, прСрывания ΠΎΡ‚ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΈ фокусы. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, Ρ‡Ρ‚ΠΎ Π½Π° самом Π΄Π΅Π»Π΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ…. Как Π±Ρ‹Π»ΠΎ сказано Ρ€Π°Π½Π΅Π΅, Π² нашСм ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π΅ PIC ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ 8-Π±ΠΈΡ‚Π½Ρ‹Π΅, Ρ‚Π°ΠΊ ΠΈ 16-Π±ΠΈΡ‚Π½Ρ‹Π΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹, основноС ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ 16-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ ΠΈΠΌΠ΅Π΅Ρ‚ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Π»ΡƒΡ‡ΡˆΠ΅Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, Ρ‡Π΅ΠΌ 8-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€.

Prescaler — это Π½Π°Π·Π²Π°Π½ΠΈΠ΅ части ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄Π΅Π»ΠΈΡ‚ Ρ‚Π°ΠΊΡ‚ΠΎΠ²Ρ‹Π΅ ΠΈΠΌΠΏΡƒΠ»ΡŒΡΡ‹ Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π°, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΎΠ½ достигнСт Π»ΠΎΠ³ΠΈΠΊΠΈ, которая ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ состояниС Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ ID прСскалСра составляСт ΠΎΡ‚ 1 Π΄ΠΎ 256, ΠΈ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Prescaler ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ рСгистра OPTION (Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ использовали для ΠΏΠΎΠ΄Ρ‚ΡΠ³ΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… рСзисторов).НапримСр, Ссли Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ prescaler Ρ€Π°Π²Π½ΠΎ 64, Ρ‚ΠΎ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ 64 -Π³ΠΎ ΠΈΠΌΠΏΡƒΠ»ΡŒΡΠ° Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π° 1.

Когда Ρ‚Π°ΠΉΠΌΠ΅Ρ€ увСличиваСтся ΠΈ достигаСт максимального значСния 255, ΠΎΠ½ запускаСт ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΈ снова инициализируСтся 0. Π­Ρ‚ΠΎ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ называСтся ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ΠΌ ΠΏΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρƒ. Π­Ρ‚ΠΎ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ MCU ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ это ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ врСмя истСкло.

Fosc ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Частота Π“Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€Π° , это частота ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ ΠšΡ€ΠΈΡΡ‚Π°Π»Π»Π°.ВрСмя, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ для рСгистра Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, зависит ΠΎΡ‚ значСния Prescaler ΠΈ значСния Fosc.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ Ρ€Π°Π±ΠΎΡ‡Π΅Π΅ объяснСниС:

Π’ этом ΡƒΡ€ΠΎΠΊΠ΅ ΠΌΡ‹ установим Π΄Π²Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ ΠΊΠ°ΠΊ Π΄Π²Π° Π²Ρ…ΠΎΠ΄Π° ΠΈ 8 свСтодиодов ΠΊΠ°ΠΊ 8 Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠ². ΠŸΠ΅Ρ€Π²Π°Ρ ΠΊΠ½ΠΎΠΏΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для установки Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ (500 мс для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ наТатия), Π° вторая ΠΊΠ½ΠΎΠΏΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Π½Π°Ρ‡Π°Π»Π° мигания ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. НапримСр, Ссли пСрвая ΠΊΠ½ΠΎΠΏΠΊΠ° Π½Π°ΠΆΠ°Ρ‚Π° Ρ‚Ρ€ΠΈΠΆΠ΄Ρ‹ (500 * 3 = 1500 мс), Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ установлСна ​​на 1.5 сСкунд ΠΈ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π΄Π²Π° ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ свСтодиод Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ с Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π²Ρ‹Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ дСмонстрационноС Π²ΠΈΠ΄Π΅ΠΎ Π² ΠΊΠΎΠ½Ρ†Π΅ этого ΡƒΡ€ΠΎΠΊΠ°.

Timers-in-PIC-microcontroller-with-LED-blinking-sequence-1

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ этих основ, Π΄Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° Π½Π°ΡˆΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΡƒΡŽ Π² ΠΊΠΎΠ½Ρ†Π΅ Ρ€Π°Π·Π΄Π΅Π»Π° Код .

Π­Ρ‚ΠΎ Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ, Ссли Π²Ρ‹ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π½ΠΎ Ссли Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ !! Π”Π°ΠΉΡ‚Π΅ сСбС cookie ΠΈ ΡΠ±Ρ€ΠΎΡΡŒΡ‚Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΡΠ»Π°Π΄ΠΈΡ‚ΡŒΡΡ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌΠΈ. Для Π΄Ρ€ΡƒΠ³ΠΈΡ… я Ρ€Π°Π·Π±ΡŒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° Π·Π½Π°Ρ‡ΠΈΠΌΡ‹Π΅ части ΠΈ объясню Π²Π°ΠΌ, Ρ‡Ρ‚ΠΎ происходит Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π±Π»ΠΎΠΊΠ΅.

Как всСгда, ΠΏΠ΅Ρ€Π²Ρ‹Π΅ нСсколько строк ΠΊΠΎΠ΄Π° — это настройки ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ ΠΈ Ρ„Π°ΠΉΠ»Ρ‹ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ², я Π½Π΅ Π±ΡƒΠ΄Ρƒ ΠΎΠ±ΡŠΡΡΠ½ΡΡ‚ΡŒ это, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ я ΡƒΠΆΠ΅ Π΄Π΅Π»Π°Π» это Π² ΠΌΠΎΠΈΡ… ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΡ… ΡƒΡ€ΠΎΠΊΠ°Ρ….

Π”Π°Π»Π΅Π΅, Π΄Π°Π²Π°ΠΉΡ‚Π΅ пропустим всС строки ΠΈ сразу ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ основной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ void, Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρƒ нас Π΅ΡΡ‚ΡŒ конфигурация PORT для Timer0.

пустая функция()
{
/ ***** ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ ΠΏΠΎΡ€Ρ‚Π° для Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ****** /
    OPTION_REG = 0b00000101; // Timer0 с внСшним freq ΠΈ 64 Π² качСствС прСскалярного // Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ подтягивания
    TMR0 = 100; // Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ для 0.0019968s; delayValue ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ 0-256
    TMR0IE = 1; // Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π±ΠΈΡ‚ прСрывания Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π² рСгистрС PIE1
    Π­Π”Π” = 1; // Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ глобальноС ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅
    PEIE = 1; // Π’ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠΉΠ½ΠΎΠ΅ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅
    / *********** ______ *********** / 

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ это, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° OPTION Register Π² нашСй Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π΄Π°Π½Π½Ρ‹Ρ… PIC.

option_reg_register_in_PIC_microcontroller

Как ΠΎΠ±ΡΡƒΠΆΠ΄Π°Π»ΠΎΡΡŒ Π² ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ руководствС, Π±ΠΈΡ‚ 7 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ рСзистора со слабым подтягиваниСм для PORTB.ΠŸΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Π½Π° рисунок Π²Ρ‹ΡˆΠ΅, Π±ΠΈΡ‚ 3 установлСн Π² 0 для указания MCU, Ρ‡Ρ‚ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ прСскалСр, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ устанавливаСтся, Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, Π° Π½Π΅ для WatchDogTimer (WDT). Π Π΅ΠΆΠΈΠΌ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° выбираСтся сбросом Π±ΠΈΡ‚Π° 5 T0CS

(OPTION_REG <5>)

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, Π±ΠΈΡ‚ΠΎΠ² 2-0 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для установки значСния ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ для Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Как ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π²Ρ‹ΡˆΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ 64, Π±ΠΈΡ‚Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ установлСны ΠΊΠ°ΠΊ 101.

Π”Π°Π»Π΅Π΅, Π΄Π°Π²Π°ΠΉΡ‚Π΅ посмотрим Π½Π° рСгистры, связанныС с Timer0

Timer0_in_PIC_microcontroller

Π’Π°ΠΉΠΌΠ΅Ρ€ Π½Π°Ρ‡Π½Π΅Ρ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ послС установки ΠΈ пСрСполнится послС достиТСния значСния 256, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° Π²ΠΎ врСмя этой Ρ‚ΠΎΡ‡ΠΊΠΈ, рСгистр TMR0IE Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ установлСн Π½Π° высокий ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ.ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ сам Π’Π°ΠΉΠΌΠ΅Ρ€ 0 являСтся ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠΉΠ½Ρ‹ΠΌ устройством, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ ΠŸΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠΉΠ½ΠΎΠ΅ ΠŸΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅, сдСлав PEIE = 1 . НаконСц, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ глобальноС ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ MCU ΠΏΠΎΠ»ΡƒΡ‡Π°Π» ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ ΠΎ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΈ Π²ΠΎ врСмя любой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, для этого Π½ΡƒΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ GIE = ​​1.

Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ° = ((256-REG_val) * (Prescal * 4)) / Fosc

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Π°Ρ Π²Ρ‹ΡˆΠ΅ Ρ„ΠΎΡ€ΠΌΡƒΠ»Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для расчСта значСния Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ.

Π“Π΄Π΅

REG_val = 100;

Prescal = 64

Fosc = 20000000

это ΠΏΠΎ расчСту Π΄Π°Π΅Ρ‚,

Π—Π°Π΄Π΅Ρ€ΠΆΠΊΠ° = 0.0019968s

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π½Π°Π±ΠΎΡ€ строк Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠΎΡ€Ρ‚Ρ‹ Π²Π²ΠΎΠ΄Π° / Π²Ρ‹Π²ΠΎΠ΄Π°.

        / ***** ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ ΠΏΠΎΡ€Ρ‚Π° для Π²Π²ΠΎΠ΄Π° / Π²Ρ‹Π²ΠΎΠ΄Π° ****** /
    TRISB0 = 1; // Π‘ΠΎΠΎΠ±Ρ‰Π°Π΅ΠΌ MCU, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π²ΠΎΠ΄ 0 PORTB ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ Π²Ρ…ΠΎΠ΄ для ΠΊΠ½ΠΎΠΏΠΊΠΈ 1.
    TRISB1 = 1; // ΠŸΡ€ΠΎΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΈΡ€ΡƒΠ΅ΠΌ MCU, Ρ‡Ρ‚ΠΎ Π²Ρ‹Π²ΠΎΠ΄ 1 PORTB ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² качСствС Π²Ρ…ΠΎΠ΄Π° для ΠΊΠ½ΠΎΠΏΠΊΠΈ 1.
    TRISD = 0x00; // Π‘ΠΎΠΎΠ±Ρ‰Π°Π΅ΠΌ MCU, Ρ‡Ρ‚ΠΎ всС Π²Ρ‹Π²ΠΎΠ΄Ρ‹ Π½Π° ΠΏΠΎΡ€Ρ‚Π΅ D выводятся
    PORTD = 0x00; // Π˜Π½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ всС ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ Π½Π° 0
    / *********** ______ *********** / 

Π­Ρ‚ΠΎ Ρ‚ΠΎ ΠΆΠ΅ самоС, Ρ‡Ρ‚ΠΎ ΠΈ Π² нашСм ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ руководствС, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ Ρ‚ΠΎ ΠΆΠ΅ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅.Π—Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π΅Ρ‰Π΅ ΠΎΠ΄Π½Ρƒ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π² качСствС Π²Π²ΠΎΠ΄Π°. Π­Ρ‚ΠΎ дСлаСтся ΠΏΠΎ Π»ΠΈΠ½ΠΈΠΈ TRISB1 = 1.

Π”Π°Π»Π΅Π΅, Π²Π½ΡƒΡ‚Ρ€ΠΈ бСсконСчного Ρ†ΠΈΠΊΠ»Π° ΠΈ Ρ†ΠΈΠΊΠ»Π° Ρƒ нас Π΅ΡΡ‚ΡŒ Π΄Π²Π° Π±Π»ΠΎΠΊΠ° ΠΊΠΎΠ΄Π°. Один ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для получСния Π²Π²ΠΎΠ΄Π° Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ — для выполнСния ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Π½Π° свСтодиодах. Π― объяснил ΠΈΡ…, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строкС.

        Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ (1)
        {
        count = 0; // НС запускаСм Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π² основном Ρ†ΠΈΠΊΠ»Π΅
        // ******* ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ **** //////
        if (RB0 == 0 && flag == 0) // Когда задан ввод
        {
            get_scnds + = 1; // get_scnds = get_scnds + 1 // Π˜Π½ΠΊΡ€Π΅ΠΌΠ΅Π½Ρ‚Π½Π°Ρ пСрСмСнная
            Ρ„Π»Π°Π³ = 1;
        }
        if (RB0 == 1) // Для прСдотвращСния Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠ³ΠΎ увСличСния
            Ρ„Π»Π°Π³ = 0;
        / *********** ______ *********** / 

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ с ΠΈΠΌΠ΅Π½Π΅ΠΌ get_scnds увСличиваСтся ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ‚ ΠΊΠ½ΠΎΠΏΠΊΡƒ 1.ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ Ρ„Π»Π°Π³ (опрСдСляСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ обСспСчСниСм) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для удСрТания процСсса приращСния, ΠΏΠΎΠΊΠ° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ ΡƒΠ±Π΅Ρ€Π΅Ρ‚ ΠΏΠ°Π»Π΅Ρ† с ΠΊΠ½ΠΎΠΏΠΊΠΈ.

                // ******* Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ с Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ **** //////
        while (RB1 == 0)
        {
                PORTD = 0b00000001 << i; // Π›Π΅Π²Ρ‹ΠΉ Π΄Π΅Ρ€ΡŒΠΌΠΎΠ²Ρ‹ΠΉ свСтодиод
                if (hscnd == get_scnds) // Если достигнуто Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΠΎΠ΅ врСмя
                {
                    I + = 1; // ΠŸΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρƒ послС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ
                    hscnd = 0;
                }
                Ρ„Π»Π°Π³ = 2;
        }
        if (flag == 2 && RB1 == 1) // Бброс Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, Ссли ΠΊΠ½ΠΎΠΏΠΊΠ° снова находится Π² высоком ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ
        {
            get_scnds = 0; hscnd = 0; = 0;
            PORTD = 0; // Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌ всС свСтодиоды
        }
        / *********** ______ *********** / 

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π±Π»ΠΎΠΊ вступаСт Π² дСйствиС, Ссли Π½Π°ΠΆΠ°Ρ‚Π° ΠΊΠ½ΠΎΠΏΠΊΠ° 2.ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΡƒΠΆΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ» Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡƒΡŽ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠ½ΠΎΠΏΠΊΠΈ 1, ΠΎΠ½Π° Π±Ρ‹Π»Π° сохранСна Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ get_scnds. ΠœΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ с ΠΈΠΌΠ΅Π½Π΅ΠΌ hscnd , эта пСрСмСнная контролируСтся ISR (ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠΉ).

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° обслуТивания прСрывания - это ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Timer0 пСрСполняСтся. Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, ΠΊΠ°ΠΊ ΠΎΠ½ контролируСтся ISR Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Π±Π»ΠΎΠΊΠ΅, ΠΊΠ°ΠΊ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Π·Π°Π΄Π΅Ρ€ΠΆΠΊΡƒ Π½Π° полсСкунды (0.5s) ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ hscnd Π½Π° ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ полсСкунды. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π»ΠΈ наш Ρ‚Π°ΠΉΠΌΠ΅Ρ€ Π½Π° ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ для ΠΊΠ°ΠΆΠ΄Ρ‹Ρ… 0,0019968 с (~ 2 мс), Ρ‚ΠΎ для подсчСта полсСкунды пСрСмСнная отсчСта Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ 250, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ 250 * 2 мс = 0,5 сСкунды. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΊΠΎΠ³Π΄Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ count Ρ€Π°Π²Π½ΠΎ 250 (250 * 2 мс = 0,5 сСкунды), это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΡˆΠ»ΠΎ полсСкунды, поэтому ΠΌΡ‹ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅ΠΌ hscnd Π½Π° 1 ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅ΠΌ счСт Π² ноль.

void interrupt timer_isr ()
{
    if (TMR0IF == 1) // Π€Π»Π°Π³ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° сработал ΠΈΠ·-Π·Π° пСрСполнСния Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°
    {
        TMR0 = 100; // Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°
        TMR0IF = 0; // ΠžΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ Ρ„Π»Π°Π³ прСрывания ΠΏΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρƒ
        ΠΏΠΎΠ΄ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ++;
    }
    
    Ссли (ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ == 250)
    {
        hscnd + = 1; // hscnd Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π½Π° ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ полсСкунды
        ΠΊΠΎΠ» = 0;
    }
} 

Π˜Ρ‚Π°ΠΊ, ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ сравниваСм Π΅Π³ΠΎ с нашим hscnd ΠΈ смСщаСм наш свСтодиод Π² зависимости ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ.Π­Ρ‚ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° послСдний ΡƒΡ€ΠΎΠΊ.

Π’ΠΎΡ‚ Ρ‚Π°ΠΊ ΠΌΡ‹ ΠΈ поняли Π½Π°ΡˆΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ.

Π‘Ρ…Π΅ΠΌΠ° ΠΈ симуляция протСя:

Timers-in-PIC-microcontroller-with-LED-blinking-sequence-Circuit

Как ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ, позволяСт сначала ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Proteus , я ΠΏΡ€ΠΈΠ²Π΅Π» здСсь Ρ„Π°ΠΉΠ»Ρ‹ схСмы Proteus.

Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Π½Π° Π½Π°ΡˆΡƒ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΡƒΡŽ ΡΠ²Π΅Ρ‚ΠΎΠ΄ΠΈΠΎΠ΄Π½ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρƒ, ΠΈ нашС ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ Π³ΠΎΡ‚ΠΎΠ²ΠΎ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅. Π­Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ:

PIC-perf-board-for-LED-blinking-squence-with-timers LED-perf-board-for-understanding-timers-in-PIC-microcontroller

Timers-in-PIC-microcontroller-with-LED-blinking-sequence-2

ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ соСдинСниС установлСно, Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π²Ρ‹Π²ΠΎΠ΄.Если Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, поТалуйста, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ€Π°Π·Π΄Π΅Π» ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π². Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π’ΠΈΠ΄Π΅ΠΎ Π½ΠΈΠΆΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ вСсь процСсс.

,

alexxlab

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *