Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ «ВстраиваСмыС систСмы. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π°Ρ… сСмСйства 68HC12/HCS12 с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ языка Π‘Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 29

Автор Π‘Ρ‚ΠΈΠ²Π΅Π½ Π‘Π°Ρ€Ρ€Π΅Ρ‚Ρ‚

Π’Π°Π±Π».3.8. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ интСрфСйса ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ° P&E


На рис. 3.7. прСдставлСн Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ процСсса ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π½Π°Π±ΠΎΡ€ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… срСдств. На рис. 3.8. ΠΏΠΎΠΊΠ°Π·Π°Π½ Π²ΠΈΠ΄ экрана ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° Π² процСссС использования ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ° ICD12Z. Как ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рис., ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΈΠΌΠ΅Π΅Ρ‚ доступ ΠΊ рСгистрам Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ процСссора (Π»Π΅Π²ΠΎΠ΅ Π²Π΅Ρ€Ρ…Π½Π΅Π΅ ΠΎΠΊΠ½ΠΎ), ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒ Π·Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… (срСднСС Π²Π΅Ρ€Ρ…Π½Π΅Π΅ ΠΎΠΊΠ½ΠΎ), ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ Π·Π° состояниСм ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΏΠΎ ТСланию ΠΊΠΎΠ΄Ρ‹ Π² ячСйках памяти (ΠΏΡ€Π°Π²ΠΎΠ΅ Π²Π΅Ρ€Ρ…Π½Π΅Π΅ ΠΎΠΊΠ½ΠΎ), исходный тСкст ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (Π΄Π²Π° срСдних ΠΎΠΊΠ½Π°), ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ Π²Π²ΠΎΠ΄ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΈ Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒ Π·Π° ΠΈΡ… исполнСниСм Π² ΠΎΠΊΠ½Π΅ состояния (Π½ΠΈΠΆΠ½Π΅Π΅ ΠΎΠΊΠ½ΠΎ).

Рис. 3.7. БистСма ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π½Π° основС интСрфСйса BDM ΠΈ ΠΏΠ»Π°Ρ‚Ρ‹ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ 68HC12B32


Рис. 3.8. Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊΠ° P&E ICD12Z ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ PEMICRO


Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ процСсс ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ срСдства, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π΄Π²Π΅ ΠΏΠ»Π°Ρ‚Ρ‹ MC68HC912B32EVB. На рис. 3.9. ΠΏΠΎΠΊΠ°Π·Π°Π½Π° инсталляция Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… срСдств для этого случая. Одна ΠΈΠ· ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π² качСствС ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΠΎΠ³ΠΎ интСрфСйса BDM ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠΌ ΠΈ ΠΏΠ»Π°Ρ‚ΠΎΠΉ, которая ΠΏΠΎΠ΄Π»Π΅ΠΆΠΈΡ‚ ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅. К ΠΏΠ»Π°Ρ‚Π΅ MC68HC912B32EVB прилагаСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС β€” Motorola D-Bug12 ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ использован для управлСния процСссом ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‚Π°ΠΊΠΈΠΌ Ρ€Π΅ΠΆΠΈΠΌΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΠ»Π°Ρ‚Ρ‹ MC68HC912B32EVB, слСдуСт ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚Π΅Π»ΠΈ W3 ΠΈ W4 ΠΏΠ»Π°Ρ‚Ρ‹ Π² состояниС 0 ΠΈ 1 соотвСтствСнно. Π”Π°Π»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ кабСль BDM ΠΎΡ‚ ΠΏΠ»Π°Ρ‚Ρ‹ интСрфСйса ΠΊ ΠΎΡΡ‚Π°Π²ΡˆΠ΅ΠΉΡΡ ΠΏΠ»Π°Ρ‚Π΅ MC68HC912B32EVB. Π­Ρ‚Π° вторая ΠΏΠ»Π°Ρ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ»Π°Ρ‚ΠΎΠΉ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ систСмы. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ источник питания ΠΊ Ρ†Π΅Π»Π΅Π²ΠΎΠΉ систСмС. ΠŸΡ€ΠΈ этом ΠΏΠ»Π°Ρ‚Π° интСрфСйса ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΈΡ‚Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ этого ΠΆΠ΅ источника, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ BDM кабСль. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€Π° ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Motorola D-Bug12 для управлСния исполнСниСм испытуСмой ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ.

Рис. 3.9. Π‘истСма ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π½Π° основС Π΄Π²ΡƒΡ… ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚ с ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ 68HC12B32

3.13.4. Эмуляторы

Π”Ρ€ΡƒΠ³ΠΎΠΉ способ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ β€” использованиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π° класса эмулятор, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Ρ…ΠΎΠ΄ исполнСния ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΏΡ€ΠΈ этом Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ всС Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Π΅ сигналы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±Ρ‹Π»ΠΈ Π±Ρ‹ Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ МК. Π’Π°ΠΊΠΈΠ΅ эмуляторы Π²Ρ‹ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Noral ΠΈ Hitex.

Эмуляторы ΠΏΠΎΠ»Π΅Π·Π½Ρ‹ для Ρ‚Π΅Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΊΡƒΠΏΠΈΡ‚ΡŒ настоящих Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… срСдств ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. ВмСстС с Ρ‚Π΅ΠΌ, эмуляторы Π½Π΅ слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰ΠΈΡ… этапов ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ работоспособности Ρ‚Π΅Ρ… систСм, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ТСстко привязаны ΠΊ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌΡƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Эмуляторы, исходя ΠΈΠ· своСго ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ° дСйствия, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ частота тактирования ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° отличаСтся ΠΎΡ‚ частоты тактирования МК HC12, Ρ‚ΠΎ ΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΡƒΡŽ ΠΈΠΌΠΈΡ‚Π°Ρ†ΠΈΡŽ исполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ нСльзя. Однако слСдуСт Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ эмуляторы с ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈΠΌΠΈΡ‚Π°Ρ†ΠΈΠ΅ΠΉ всСх Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… характСристик МК.

3.13.5. ЛогичСскиС Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Ρ‹

ЛогичСский Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ β€” это ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ элСктронный ΠΈΠ·ΠΌΠ΅Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΈΠ±ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для запоминания, отобраТСния Π½Π° экранС ΠΈ измСрСния Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ логичСских сигналов. Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ логичСского Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Π° ΠΏΠΎ исслСдованию ΠΈ Π½Π°Π»Π°Π΄ΠΊΠ΅ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Ρ… систСм Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ функциям осциллографа для Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²Ρ‹Ρ… систСм. На рис. 3.10 прСдставлСна фотография логичСского Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Π° ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Hewlett Packard, Π² настоящСС врСмя Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΈΠ±ΠΎΡ€Ρ‹ Π²Ρ‹ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ ΠΏΠΎΠ΄ ΠΌΠ°Ρ€ΠΊΠΎΠΉ Agilent.

Рис. 3.10. ЛогичСский Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ Ρ„ΠΈΡ€ΠΌΡ‹ Agilent Technologies


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

ЛогичСский Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ ΠΏΠΎΠ»Π΅Π·Π΅Π½ ΠΏΡ€ΠΈ поискС нСисправностСй Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ управлСния ΠΏΡ€ΠΈ взаимодСйствии ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠ΅Ρ€ΠΈΡ„Π΅Ρ€ΠΈΠΉΠ½Ρ‹ΠΌΠΈ ИБ систСмы. Π’ этом случаС логичСский Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€ позволяСт Π½Π°Π±Π»ΡŽΠ΄Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ΅ состояниС всСх Π»ΠΈΠ½ΠΈΠΉ связи МК с ИБ ΠΈ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ сигналы Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ МК Π½Π΅Π²Π΅Ρ€Π½ΠΎ, вслСдствиС Ρ‡Π΅Π³ΠΎ Π½Π΅Π²Π΅Ρ€Π½ΠΎ рСализуСтся ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ МК ΠΈ ИБ.

3.14. ΠžΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΠΈ компилятора ΠΈ ассСмблСра

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΏΠ°Ρ€Π°Π³Ρ€Π°Ρ„Π΅ ΠΌΡ‹ рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ прСобразования исходного Ρ„Π°ΠΉΠ»Π° с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ Π½Π° Π‘ΠΈ компилятором ICC12 ΠΊ Ρ„Π°ΠΉΠ»Ρƒ с исполняСмым ΠΊΠΎΠ΄ΠΎΠΌ. Π­Ρ‚ΠΎΡ‚ процСсс Π±Ρ‹Π» описан Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ 3.13.1. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ дСмонстрируСт ΠΎΡ‚Π½ΡŽΠ΄ΡŒ Π½Π΅ всС особСнности ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° дСйствия компилятора. Для получСния Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π½Ρ‹Ρ… свСдСний слСдуСт ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ тСхничСскому описанию компилятора. ΠœΡ‹ ΠΆΠ΅ постараСмся ΡΠΊΠΎΠ½Ρ†Π΅Π½Ρ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ читатСля Π½Π° ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°Ρ… прСобразования ΠΊΠΎΠ΄ΠΎΠ². Π­Ρ‚ΠΈ знания Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ Π’Π°ΠΌ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ с 68HC12, программируя ΠΈΡ… Π½Π° Π‘ΠΈ.

Π’ прСдставлСнном ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ прикладная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° управляСт свСтодиодами, ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΊ Π²Ρ‹Ρ…ΠΎΠ΄Π°ΠΌ ΠΏΠΎΡ€Ρ‚Π° PORTA ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° 68HC12B32. ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈ, ΠΏΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ сигналу пСрСполнСния Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° свСтодиоды Π·Π°ΠΆΠΈΠ³Π°ΡŽΡ‚ΡΡ, Π° ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ сигналу пСрСполнСния Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° эти свСтодиоды гасятся. АппаратныС срСдства, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ этой Π·Π°Π΄Π°Ρ‡ΠΈ, прСдставлСны Π½Π° рис. 3.11.

Рис. 3.11. Π‘Ρ…Π΅ΠΌΠ° ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ свСтодиодов ΠΊ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Ρƒ 68HC912B32


/************************************************************/

/* НазваниС: Sample.c                                       */

/* ОписаниС: Π­Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅             */

/* ΠΈ Π²Ρ‹ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ свСтодиодов с ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»ΠΎΠΌ                    */

/* Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ 1 с. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ МК 68НБ12Π’Π—2                   */

/* Π€Π°ΠΉΠ» Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° header содСрТит адрСса всСх               */

/* ΠΏΠΎΡ€Ρ‚ΠΎΠ² ΠΈ рСгистров ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ                   */

/* ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ сконфигурирован                   */

/* для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² ΠΎΠ΄Π½ΠΎΠΊΡ€ΠΈΡΡ‚Π°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅                      */

/* Π”Π°Ρ‚Π° создания: May 15, 2004                              */

/* Авторы: Daniel Pack and Steve Barrett                    */

/************************************************************/

1 #include <68НБ12Π’Π—2.h>

2 /*****************************************************/

3 void TOIISR(void);

4 /*****************************************************/

5 #pragma interrupt_handler TOIISR() /* ОбъявлСниС ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

6  прСрывания ΠΏΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°*/

7 #pragma abs_address:0x0B1E /*Π·Π°Π΄Π°Ρ‚ΡŒ адрСс ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ прСрывания ISR */

8 void (* Timer_Overflow_interrupt_vector[])()={TOIISR}

9 #pragma end_abs_address

10 unsigned char second = 0x00;

11 void main (void)

12 {

13  TSCR=0x80; /*Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€*/

14  TMSK2=0x80; /*Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ прСрывания ΠΏΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρƒ*/

15  TFLG2=0x80; /*ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ Ρ„Π»Π°Π³ TOIF*/

16  DDRA=0xFF; /* Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΠΎΡ€Ρ‚ Port A Π½Π° Π²Ρ‹Π²ΠΎΠ΄*/

17  CLI(); /*Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ прСрывания*/

19  EXIT()

20 }

21

22 void TOIISR(void) /*ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° прСрывания*/

23 {

24  TFLG2=0x80; /*ΠΎΡ‡ΠΈΡΡ‚ΠΈΡ‚ΡŒ Ρ„Π»Π°Π³ TOIF*/

25  second += 1; /*ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Π½Π° 1 ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ счСтчик с ΠΈΠΌΠ΅Π½Π΅ΠΌ second*/

26  if (second == 122)

27  {

28   PORTA = !PORTA; /*ΠΈΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΡ€Ρ‚ PORT A*/

29   second = 0x00; /*ΠΎΠ±Π½ΡƒΠ»ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ счСтчик*/

30  }

31 }

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! КаТдая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ прописаны: Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, Π°Π²Ρ‚ΠΎΡ€Ρ‹ ΠΈ Π΄Π°Ρ‚Π° создания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π€Π°ΠΉΠ» Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° 68HC12B32.h содСрТит опрСдСлСния рСгистров ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ МК B32 ΠΈ макроопрСдСлСния для прСпроцСссора компилятора. НомСра строк Π² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ тСкстС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΡ€ΠΈ Π²Π²ΠΎΠ΄Π΅ исходного тСкста Π² Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ срСды ICC12 Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ. Π­Ρ‚ΠΎ нашС Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ для удобства восприятия ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π°.

Π Π°Π·Π±Π΅Ρ€Π΅ΠΌ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… элСмСнтов ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС записана Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° прСпроцСссора компилятора #include, которая прСдписываСт ΠΏΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» с ΠΈΠΌΠ΅Π½Π΅ΠΌ 68НБ12Π’Π—2.h. Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ этого Ρ„Π°ΠΉΠ»Π° ΠΌΡ‹ рассмотрим Π½ΠΈΠΆΠ΅. Π‘Ρ‚Ρ€ΠΎΠΊΠ° 3 содСрТит объявлСниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ TOIISR ΠΊΠ°ΠΊ ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ прСрывания ΠΏΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Π‘Ρ‚Ρ€ΠΎΠΊΠΈ с пятой ΠΏΠΎ Π΄Π΅Π²ΡΡ‚ΡƒΡŽ содСрТат Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Π·Π½Π°Ρ‡Π°ΡŽΡ‚ ячСйку памяти с адрСсом 0x0B1E для размСщСния Π² Π½Π΅ΠΉ адрСса Π½Π°Ρ‡Π°Π»Π° ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ прСрывания TOIISR. Π’ строкС 10 осущСствляСтся ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΈ инициализация глобальной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ с ΠΈΠΌΠ΅Π½Π΅ΠΌ second, которая Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² качСствС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ счСтчика. Π‘Ρ‚Ρ€ΠΎΠΊΠΈ с ΠΎΠ΄ΠΈΠ½Π½Π°Π΄Ρ†Π°Ρ‚ΠΎΠΉ ΠΏΠΎ Π΄Π²Π°Π΄Ρ†Π°Ρ‚ΡƒΡŽ содСрТат тСкст основной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ происходит инициализация подсистСмы Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Π’Π°ΠΉΠΌΠ΅Ρ€ запускаСтся Π½Π° счСт, Ρ€Π°Π·Ρ€Π΅ΡˆΠ°ΡŽΡ‚ΡΡ прСрывания ΠΏΠΎ Π΅Π³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Π² строкС 17 вызываСтся макрос Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ прСрывания, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅. Π‘Ρ‚Ρ€ΠΎΠΊΠ° 18 содСрТит ΠΊΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ бСсконСчного Ρ†ΠΈΠΊΠ»Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ обСспСчиваСт Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ пустых ΠΊΠΎΠΌΠ°Π½Π΄ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€ΠΎΠΌ, ΠΏΠΎΠΊΠ° Π½Π΅ поступит запрос Π½Π° ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΎΡ‚ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Π’ строкС 19 записан макрос ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ прСрывания EXIT(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½ΠΎΠΉ Ρ„Π°ΠΉΠ»Π΅. Π’ строкС 22 начинаСтся ΠΏΠΎΠ΄ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° прСрывания ΠΏΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρƒ. Π’ Π½Π΅ΠΉ сбрасываСтся Ρ„Π»Π°Π³ пСрСполнСния Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° (строка 24), Π° Π·Π°Ρ‚Π΅ΠΌ инкрСмСнтируСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ счСтчик second (строка 25). Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ счСта 16 разрядного счСтчика Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π° ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π»Π΅Ρ€Π° 68HC12 ΠΏΡ€ΠΈ частотС ΡˆΠΈΠ½Ρ‹ 8 ΠœΠ“Ρ† составляСт 8,19 мс. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ для отсчСта 1 с трСбуСтся 122 ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° пСрСполнСния этого Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°. Π’ строкС 26 записана конструкция условия if. ВыраТСния строк 28 ΠΈ 29 Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли счСтчик second достиг значСния 122. Π’ΠΎΠ³Π΄Π° ΠΊΠΎΠ΄ Π½Π° линиях PORTA Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½, Π° содСрТимоС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ счСтчика ΠΎΠ±Π½ΡƒΠ»Π΅Π½ΠΎ.