тора поставлений діод VD1.
Вихід внутрішнього генератора МК51 BQ2 заведений на вхід C дільника частоти, зібраного на двох лічильниках в одному корпусі (DD2). Дільник використовується для формування тактової частоти для роботи АЦП і для роботи таймера. Для АЦП формується частота 1,3824 МГц (сигнал T1), а для таймера - 43,2КГц (сигнал C8). Остання зводиться на вхід T1 мікроконтролера. Наприклад, для отримання переривань з частотою 1Гц в таймер завантажується число 65536-43200=22336. При цьому переривання буде відбуватися раз на секунду. Але насамперед, перед виконанням програми обробки переривання необхідно поставити команди перезавантаження таймера. Це необхідно тому, що переривання відбувається, коли лічильник переповнюється, тобто в нього записується 0. Якщо не виробляти переустановлення таймера, то чергове переривання відбудеться не через одну секунду, а приблизно через 1,5 секунди. При роботі таймер повинен працювати в режимі 1.
Під час роботи мікроконтролер при зверненні до зовнішньої пам'яті формує адресу через порти P0 і P2 (на схемі вони позначені як AD0-AD7 і A8-A15 відповідно). Старший байт адреси утримується протягом усього циклу звернення до зовнішньої пам'яті, а молодший байт з'являється тільки на короткий проміжок часу, так як порт P0 ще використовується як канал даних. По цьому, для утримування молодшого байта адреси протягом усього циклу обміну встановлений регістр DD4, запис в який відбувається по сигналу ALE.
У схемі присутній ПЗУ ємністю 32Кбайт, призначене для зберігання програми, і ОЗУ ємністю 32Кбайт, призначене для зберігання даних, лічених з датчиків. Вибір ПЗУ виробляється сигналом, формованим мікроконтролером при зверненні до програмної пам'яті.
Пам'ять даних умовно розбита на два банки. Розбиття показано на малюнку 2. Як видно з малюнка, звернення до зовнішнього ОЗУ відбувається за адресами, що знаходяться нижче адреси 8000h, тобто коли старший біт адресного слова A15 дорівнює нулю. Цей адресний біт заведений на вхід мікросхеми ОЗУ DD8. Коли ми звертаємося до комірки пам'яті даних за адресою, що знаходиться між 0000h і 7FFFh, то сигнал A15 встановлюється в 0, тим самим, вибираючи мікросхему пам'яті. На вхід мікросхеми заводиться сигнал, що знімається з виходу (17 ніжка корпусу) мікроконтролера. Вхід з'єднаний з виходом (16 ніжка). При читанні даних з ОЗП на вході формується логічний нуль, і якщо адреса знаходиться в інтервалі 0000h - 7FFFh, то дозволяється видача байта на шину даних мікроконтролера, і виходи DD8 переводяться з високоімпедансним стану в стан, обумовлений вмістом елементу пам'яті. При записі в ОЗУ мікроконтролер встановлює сигнал в логічний нуль. За цим сигналом із шини даних байт інформації переписуються в мікросхему. При цьому вихідні каскади ОЗУ знаходяться в високоомному стані, так як на вході тримається логічна одиниця. Це дозволяє уникнути ефекту короткого замикання, коли, наприклад, ОЗУ на виході D0 формує логічну одиницю, а мікроконтролер на цьому ж виводі формує логічний нуль. У такій ситуації відбувається замикання джерела живлення через вихідні каскади мікросхем. Це не страшно для джерела живлення, так як струм протікає невеликий, але може виявитися небажаним для мікросхем, якщо у них вихідні каскади малопотужні.
При читанні сигналів з датчиків використовується верхня половина адресується пам'яті даних - банк датчиків (див. рис. 2). Банк датчиків розбивається на групи (див. Рис. 6). Для фіксування звертання до банку датчиків, так само як і при зверненні до ОЗУ, використовується сигнал A15=1.
При читанні за адресами вище 7FFFh відбувається вибір дешифратора DD3. На адресний вхід дешифратора подаються A4 і A5. Виходи дешифратора заведені на дешифратори регістрів DD5, DD6 і на вхід аналого-цифрових перетворювачів DD33, DD34. Як бачимо, тут застосована схема збільшення розрядності дешифраторів. При цьому, коли A5A4=00, вибирається ЦД0 (див. Рис. 3), якщо A5A4=11, то вибирається АД1.
Як видно з рис. 6, аналогові датчики дублюються в своїй групі. Це пояснюється наступним. Так як цифрові й дискретні датчики об'єднані, кількість адресованих байтів для них стало рівним 24. Розбили їх на дві групи: 16 і 8 датчиків, при цьому елементи першої групи адресуються за допомогою 16-розрядного (по виходах) дешифратора К1533ІД3, а елементи другої групи- за допомогою 8-розрядного дешифратора К1533ІД7. У мікросхеми К1533ІД7 є три входу дозволу дешифрации,,, які об'єднані по І (вибір відбувається, коли). На заводиться сигнал вибору з дешифратора DD3, а на - сигнал A3. Через останній вдається уникнути дублювання адрес датчиків в групі без додаткових мікросхем.
Рис. 2. Розподіл адрес пам'яті даних.
Рис. 3. Структура банку датчиків
Для аналогових датчиків така ...