Безкоштовна технічна бібліотека ЕНЦИКЛОПЕДІЯ РАДІОЕЛЕКТРОНІКИ ТА ЕЛЕКТРОТЕХНІКИ Програмування послідовних мікросхем пам'яті. Енциклопедія радіоелектроніки та електротехніки Енциклопедія радіоелектроніки та електротехніки / Мікроконтролери Мікросхеми енергонезалежної пам'яті з послідовним введенням та виведенням даних сьогодні широко застосовують для запам'ятовування встановлених режимів та фіксованих налаштувань у телевізорах, магнітолах та іншій побутовій техніці. При її ремонті нерідко виникає необхідність прочитати вміст таких мікросхем або записати нові дані. Зазвичай це роблять за допомогою спеціальних пристроїв – програматорів. Але для того, щоб запрограмувати одну-дві мікросхеми в аматорських умовах, придбати досить дорогий програматор невигідно. З цим цілком упорається звичайний персональний комп'ютер. Одна з найпоширеніших мікросхем енергонезалежної пам'яті – АТ93С46 фірми ATMEL. Для зв'язку з мікроконтролером вона має послідовний інтерфейс, що складається всього з трьох однорозрядних шин SK (синхронізація), D1 (вхід даних) і DO (вихід даних). До цих шин підключають паралельно всі вузли з таким інтерфейсом. Дані передають побитно. супроводжуючи кожен біт синхроімпульсом SK. У мікросхемі АТ93С46 передбачені також входи CS (вибір кристала) для переведення її в активний стан та ORG (організація). Якщо останній з'єднаний із джерелом живлення, у мікросхемі утворюються 64 шістнадцятирозрядні осередки пам'яті, якщо із загальним дротом - 128 восьмирозрядних осередків. Для читання вмісту або програмування за допомогою комп'ютера мікросхему АТ93С46 слід підключити до розетки LPT1 або LPT2, як показано на малюнку. Так як вхід ORG мікросхеми з'єднаний із загальним дротом, організація пам'яті - восьмирозрядна. Напруга +5 В рекомендується подати від зовнішнього джерела, але можна скористатися будь-якою вільною вихідною лінією порту, програмно встановивши на ній високий логічний рівень. Обслуговуюча програма, наведена в таблиці, написана на БЕЙСІК (компілятор Power Basic версії 2.10f). Програма починає роботу із запиту номера порту, до якого підключено мікросхему. Залежно від відповіді оператора змінної port при спайується значення базової адреси вибраного порту: 888 (шістнадцяткове 378Н) для LPT1 або 632 (шістнадцяткове 278Н) для LPT2. Командою out port.0 всіх висновках шини даних порту встановлюється напруга низького логічного рівня. Далі оператору пропонується вибрати режим читання даних із мікросхеми або запису до неї та ввести ім'я файлу, в якому буде збережено лічену або перебуває підготовлена до запису інформація. Тим, хто користується іншими версіями Бейсіка, слід мати на увазі, що синтаксис операторів для роботи з файлами може бути іншим. Прочитані з мікросхеми чи записувані у ній дані програма як зберігає у файлі чи читає з нього, а й виводить на екран монітора як шістнадцяткового дампа. Процедури читання та запису даних дещо різняться, але використовують для "спілкування" з мікросхемою ті самі операції, оформлені в програмі у вигляді функцій:
Внутрішній пристрій керування мікросхеми АТ93С46 приймає та виконує команди, що надходять по лінії DI. Кожна команда починається стартовим бітом, рівним логічної 1, за яким йдуть два біти коду операції і необхідне число бітів адреси осередку пам'яті та даних. Перед подачею кожної команди на вході CS необхідно встановити високий логічний рівень, після завершення - низький. Команда читання даних (READ) має код операції 10, за яким слідує адреса комірки. У відповідь мікросхема видасть на вихід DO байт даних, що зберігається за вказаною адресою, який можна прочитати за допомогою функції shiftin. Після включення живлення мікросхема АТ93С46 автоматично переходить у режим, в якому стирання та запис даних заборонені, ніж запобігає їх випадковому псуванню. Тому перед тим. як записувати дані, необхідно дозволити цю операцію, подавши команду EWEN - Erase/Write Enable (дозволити стирання/запис). Її код операції - 00 за яким слідує адреса 11 ххххх. Значення останніх п'яти біт адреси команда EWEN не аналізує, і вони можуть бути будь-якими. Якось подана команда EWEN діє до її скасування спеціальною командою або до вимкнення живлення мікросхеми. Команда запису (WRITE) має код операції 01, за яким слідують адресу комірки і байт даних, що записується. Отримавши таку команду, пристрій управління починає виконувати внутрішній цикл запису, тривалість якого трохи більше 10 мс. До закінчення мікросхема не реагує на нові команди. Якщо в цей час подати на вхід CS короткий імпульс низького рівня, на виході DO встановиться і буде зберігатися до завершення циклу низький рівень. Як тільки він зміниться високим, необхідно встановити низький рівень входу CS. після цього мікросхема готова до прийому нових команд. Якщо згаданий імпульс на вхід CS не подавати або подати його після завершення циклу запису, стан виходу DO залишиться високоімпедансним. Крім розглянутих команд є й інші: заборонити стирання/запис (EWDS), записати константу у всі осередки пам'яті (WRAL), стерти всі осередки пам'яті (ERAL). Насправді їх застосовують порівняно рідко. Опис всіх команд, як і інші подробиці пристрою та роботи мікросхеми АТ93С46, можна знайти в [1, 2]. Описану програму з невеликими доопрацюваннями можна застосувати для програмування будь-якої мікросхеми пам'яті сімейства АТ9ЗСхх, поставивши відповідний інтервал адрес. Наприклад, мікросхема АТ93С56 містить 256. а АТ93С66 - 512 восьмирозрядних осередків пам'яті. 93X16.EXE - Варіант програми, призначений для роботи з мікросхемою АТ93С46 в шістнадцятирозрядному режимі (вхід ORG з'єднаний з джерелом живлення). література
Автор: А.Гончаренко, м.Одеса, Україна Дивіться інші статті розділу Мікроконтролери. Читайте та пишіть корисні коментарі до цієї статті. Останні новини науки та техніки, новинки електроніки: Запрацювала найвища у світі астрономічна обсерваторія
04.05.2024 Управління об'єктами за допомогою повітряних потоків
04.05.2024 Породисті собаки хворіють не частіше, ніж безпородні
03.05.2024
Інші цікаві новини: ▪ Карти пам'яті Adata ISC3E CFast специфікацій CFast 2.0 та SATA 3.1 ▪ Гусениці можуть поїдати поліетиленові відходи ▪ Гібридні смарт-картки замість закордонних паспортів ▪ FMS6407 - відеодрайвер-фільтр ▪ Дистанційне блокування запалювання кредитного автомобіля Стрічка новин науки та техніки, новинок електроніки
Цікаві матеріали Безкоштовної технічної бібліотеки: ▪ розділ сайту Шпигунські штучки. Добірка статей ▪ стаття Міщанин у дворянстві. Крилатий вислів ▪ стаття Як довго триває Фауст Ґете? Детальна відповідь ▪ стаття З історії географічних карт. Поради туристу ▪ Консервування дерева. Прості рецепти та поради ▪ стаття Каракалпакські прислів'я та приказки. Велика добірка
Залишіть свій коментар до цієї статті: All languages of this page Головна сторінка | Бібліотека | Статті | Карта сайту | Відгуки про сайт www.diagram.com.ua |