3.3 Вибір мікроконтролера
Для виконання поставлених до системи автоматизації вимог вибираємо комплекс побудований на базі мікроконтролера PIC16F877 та засобів вимірювання та індикації стану системи автоматизації.
PIC16F877 однокристальний 8-розрядний FLASH CMOS мікроконтролер компанії Microchip Technology Incorporated. [5,22]
3.3.1 Характеристика мікроконтролера:
Високошвидкісна RISC архітектура 35 інструкцій усі команди виконуються за один цикл, крім інструкцій переходів, виконуваних за два цикли. Основні характеристики мікроконтролера PIC16F877 приведені в таблиці 3.7.
Таблиця 3.7.
Основні характеристики
Параметр | Опис, характеристика |
Тактова частота | DC - 20МГц |
Скидання (затримка скидання) | POR, BOR (PWRT, OST) |
FLASH пам'ять програм (14-розрядних слів) | 8K |
Пам'ять даних (байт) | 368 |
EEPROM пам'ять даних (байт) | 256 |
Переривань | 14 |
Порти вводу/виводу | Порти A,B,C,D,E |
Таймери | 3 |
Модуль захвату/порівняння/ШІМ | 2 |
Модулі послідовного інтерфейсу | MSSP, USART |
Модулі паралельного інтерфейсу | PSP |
Модуль 10-розрядного АЦП | 8 каналів |
Інструкцій | 35 |
- Прямий, непрямий і відносний режим адресації
- Скидання по включенню живлення (POR)
- Таймер скидання (PWRT) і таймер чекання запуску генератора (OST) після включення живлення Сторожовий таймер WDT із власним RC генератором
- Програмований захист пам'яті програм
- Режим енергозбереження SLEEP
- Вибір параметрів тактового генератора
- Високошвидкісна, енергозберігаюча CMOS FLASH/EEPROM технологія
- Цілком статична архітектура
- Програмування в готовому пристрої (використовується два виводи мікроконтролера) Низьковольтний режим програмування
- Режим внутріньосхемного налагодження (використовується два виводи мікроконтролера)
- Широкий діапазон напруг живлення від 2.0В до 5.5В
- Підвищена навантажувальна здатність портів введення/виводу (25ма)
- Мале енергоспоживання:
- < 0.6 мA @ 3.0V, 4.0 Мгц
- 20мкA @ 3.0V, 32 Kгц
- < 1 мкA в режимі енергозбереження.
Характеристика периферійних модулів:
Таймер 0: 8-розрядний таймер/лічильник з 8-розрядним програмованим передподільником Таймер 1: 16-розрядний таймер/лічильник з можливістю підключення зовнішнього резонатора.
Таймер 2: 8-розрядний таймер/лічильник з 8-розрядним програмованим передподільником і вихідним дільником.
Два модулі порівняння/захвату/ШІМ (РСР):
- 16-розрядний захват (максимальна роздільна здатність 12.5нс)
- 16-розрядний порівняння (максимальна роздільна здатність 200нс)
- 10-розрядний ШІМ
Багатоканальне 10-розрядне АЦП
Послідовний синхронний порт MSSP
- ведучий/ведомий режим SPI
- ведучий/ведомий режим I2C
Послідовний cинхронно-асинхронний прийомопередатчик USART з підтримкою детектувания адреси.
Ведучий 8-розрядний паралельний порт PSP з підтримкою зовнішніх сигналів –RD, -WR, -CS
Детектор пониженої напруги (BOD) для скидання по зниженню напруги живлення (BOR) [8,93]
Електро-технічні характеристики
Гранична робоча температура від -55°С до +125°С
Температура зберіганняння від-65°С до +150°С
Напруга Vdd відносно Vss від -0.3В до +7.5В
Напруга -MCLR відносно Vss від 0В до +14В
Напруга RA4 відносно Vss від 0В до +8.5В
Напруга на інших вивожах відносно Vss від -0.3В до Vo+0.ЗВ
Максимальний струм Vss З00мА
Максимальний струм Vdd 250ма
Вхідний замикаючий струм Iik (Vi < 0 або Vi> Vdd) ±20ма
Вихідний замикаючий струм Iok (Vo < 0 або Vo > Vdd) ±20ма
Максимальний вихідний струм стоку каналу вводу/виводу 25ма
Максимальний вихідний струм джерела каналу вводу/виводу 25ма
Максимальний вихідний струм стоку портів вводу /виводу PORTA, PORTB і PORTE 200ма
Максимальний вихідний струм джерела портів вводу /виводу PORTA, PORTB і PORTE 200ма
Максимальний вихідний струм стоку портів вводу /виводу PORTC і PORTD 200ма
Максимальний вихідний струм джерела портів вводу /виводу PORTC і
PORTD 200ма
Мікроконтролер PIC16F874/877 випускаються в 40-вивідному корпусі
Тип корпуса: PDIP40 - 600т
Рис 3.12. Технологічні розміри мікроконтролера PIC16F874/877.
Таблиця 3.7.
Технологічні розміри
Одиниці виміру | Міліметри | |||
Межі розмірів | Мин. | Ном. | Макс. | |
Число виводів | n | 40 | ||
Відстань між виводами | Р | 2.54 | ||
Висота корпуса | А | 4.06 | 4.45 | 4.83 |
Товщина корпуса | А2 | 3.56 | 3.81 | 4.06 |
Відстань між корпусом і платою | А1 | 0.38 | ||
Ширина корпуса з виводами | Е | 15.11 | 15.24 | 15.88 |
Ширина корпуса | Е1 | 13.46 | 13.84 | 14.22 |
Довжина корпуса | D | 51.94 | 52.26 | 52.45 |
Довжина нижньої частини виводу | L | 3.05 | 3.30 | 3.43 |
Товщина виводу | с | 0.20 | 0.29 | 0.38 |
Ширина верхньої частини виводу | B1 | 0.76 | 1.27 | 1.78 |
Ширина нижньої частини виводу | B | 0.36 | 0.46 | 0.56 |
Повна ширина корпуса з виводами | еВ | 15.75 | 16.51 | 17.27 |
Кут фаски верхньої частини корпуса | a | 5 | 10 | 15 |
Кут фаски нижньої частини корпуса | b | 5 | 10 | 15 |
Детальний опис виводів мікроконтролера PIC16F877 приведений в таблиці 3.9.
Таблиця 3.9.
Призначення виводів мікроконтролера PIC16F877
Позначення виводу | № | Тип І/О/Р | Тип буфера | Опис |
OSC1/CLKIN | 13 | І | ST/CMOS(3) | Вхід генератора / вхід зовнішнього тактового сигналу |
OSC2/CLKOUT | 14 | О | - | Вихід генератора. Підключається кварцовий або керамічний резонатор. У RC режимі тактового генератора на виході OSC2 є тактовий сигнал CLKOUT, рівний Fosc/4. |
-MCLR/VPP | 1 | І/Р | ST | Вхід скидання мікроконтролера або вхід напруги програмування. Скидання мікроконтролера відбувається при низькому логічному рівні сигналу на вході. |
RAO/ANO RA1/AN1 RA2/AN2/VREF-RA3/AN3/VREF+ RA4/TOCKI RA5/-SS/AN4 | 2 3 4 5 6 7 | I/O I/O I/O I/O I/O I/O | TTL TTL TTL TTL ST TTL | Двунаправлений порт вводу/виводу PORTA. RAO може бути налаштований як аналоговий канал 0 RA1 може бути налаштований як аналоговий канал 1 RA2 може бути налаштований як аналоговий канал 2 або вхід негативної опорної напруги RA3 може бути налаштований як аналоговий канал 3 або вхід позитивної опорної напруги RA4 може використовуватися як вхід зовнішнього тактового сигналу для TMRO. Вихід з відкритим стоком. RA1 може бути налаштований як аналоговий канал 1 або вхід вибору мікросхеми в режимі відомого SPI |
RBO/INT RB1 RB2 RB3/PGM RB4 RB5 RB6/PGC RB7/PGD | 33 34 35 36 37 38 39 40 | I/O I/O I/O I/O I/O I/O I/O I/O | TTL/ST(1) TTL TTL TTL TTL TTL TTL/ST(2) TTL/ST(2) | Двунаправлений порт вводу/виводу PORTB. PORTB має програмно підключаємі підтягуючі резистори на входах. RBO може використовуватися як вхід зовнішніх переривань. RB3 може використовуватися як вхід для режиму низьковольтного рограмування. Переривання по зміні рівня вхідного сигналу. Переривання по зміні рівня вхідного сигналу. Переривання по зміні рівня вхідного сигналу або вивід для режиму внутрішньосхемного налагодження ICD. Тактовий вхід у режимі програмування. Переривання по зміні рівня вхідного сигналу або вивід для режиму внутрішньосхемного налагодження ICD. Вивід даних у режимі програмування. |
RCO/T1OSO /T1CKI | 15 | I/O | ST | Двунаправлений порт вводу/виводу PORTC. RCO може використовуватися як вихід генератора TMR1 або входу зовнішнього тактового сигналу для TMR1 . |
RC1/T1OSI /CCP2 | 16 | I/O | ST | RC1 може використовуватися як вхід генератора для TMR1 або виводу модуля РСР2. |
RC2/CCP1 | 17 | I/O | ST | RC2 може використовуватися як вивід модуля РСР1. |
RC3/SCK/SCL | 18 | I/O | ST | RC3 може використовуватися як вхід/виходу тактового сигналу в режимі SPI і I2C. |
RC4/SDI/SDA RC5/SDO RC6/TX/CK RC7/RX/DT | 23 24 25 26 | I/O I/O I/O I/O | ST ST ST ST | RC4 може використовуватися як вхід даних у режимі SPI або вхід/вихід даних у режимі I2C. RC5 може використовуватися як вихід даних у режимі SPI. RC6 може використовуватися як вивід передавача USART в асинхронному режимі або виводу синхронізації USART у синхронному режимі. RC6 може використовуватися як вивід приймача USART в асинхронному режимі або виводу даних USART у синхронному режимі. |
RDO/PSPO RD1/PSP1 RD2/PSP2 RD3/PSP3 RD4/PSP4 RD5/PSP5 RD6/PSP6 RD7/PSP7 | 19 20 21 22 27 28 29 30 | I/O I/O I/O I/O I/O I/O I/O I/O | ST/TTL(3) ST/TTL(3) ST/TTL(3) ST/TTL(3) ST/TTL(3) ST/TTL(3) ST/TTL(3) ST/TTL(3) | Двунаправлений порт вводу/виводу PORTD або ведучий паралельний порт для підключення до шини мікропроцесора |
RE0/D/AN5 RE1/WR/AN6 RE2/CS/AN7 | 8 9 10 | I/O I/O I/O | ST/TTL(3) ST/TTL(3) ST/TTL(3) | Двунаправлений порт вводу/виводу PORTE. RE0 може використовуватися як керуючого входу читання PSP або аналогового каналу 5 |
RE1 може використовуватися для керуючого входу запису PSP або аналогового каналу 6 RE2 може використовуватися як керуючого входу вибору PSP або аналогового каналу 7 | ||||
Vss | 12,31 | P | - | Загальний вивід для внутрішньої логіки і портів вводу/виводу |
vdd | 11,32 | P | - | Позитивна напруга живлення для внутрішньої логіки і портів вводу/виводу |
NC | - | - | - | Ці виводи в середині мікросхеми не підключені. |
Позначення: I = вхід, О = вихід, I/O = вхід/вихід, Р = живлення, - = не використовується, TTL = вхідний буфер ТТЛ, ST = вхід із тригером Шмідта.
EEPROM пам'ять даних і FLASH пам'ять програм
Дані з EEPROM пам'яті і FLASH пам'яті програм можуть бути прочитані/перезаписані в нормальному режимі роботи мікроконтролера у всьому діапазоні напруги живлення Vdd. Операції виконуються з одним байтом для EEPROM пам'яті даних і одним словом для FLASH пам'яті програм. Запис виконується за принципом "стирання - запис" для кожного байта або слова. Сформована кодом програми операція стирання не може виконана при включеному захисті запису.
Доступ до пам'яті програм дозволяє виконати обчислення контрольної суми. Дані, записані в пам'яті програм, можуть використовуватися у виді: 14-розрядних чисел, каліброваної інформації, серійних номерів, упакованих 7-розрядних символів ASCII і т.д. У випадку виявлення недійсної команди в пам'яті програм, виконується порожній цикл NOP.
Число циклів стирання/запису для FLASH пам'яті програм значно нижче в порівнянні з EEPROM пам'яттю даних, тому EEPROM пам'ять даних повинна використовуватися для збереження часто змінюваних даних. Час запису даних керується внутрішнім таймером, він залежить від напруги живлення, температури і має невеликий технологічний "розкид". [8,276]
При записі байта або слова автоматично стирається відповідний осередок, а потім виконується запис. Запис у EEPROM пам'ять програм не впливає на виконання програми, а при записі в FLASH пам'ять програм виконання програми зупиняється на час запису. Не можна звернутися до пам'яті програм під час циклу запису. Протягом операції запису тактовий генератор продовжує працювати, периферійні модулі включені і генерують переривання, що "ставляться в чергу" до завершення циклу запису. Після завершення запису виконується завантажена команда (через конвеєрну обробку) і відбувається перехід по вектору переривань, якщо переривання дозволене й умова переривання відбувалася під час запису.
Доступ до функцій запису/читання EEPROM пам'яті даних і FLASH пам'яті програм виконується через шість регістрів спеціального призначення:
EEDATA;
EEDATH;
EEADR;
EEADRH;
EECON1;
EECON2.
Операції читання/запису EEPROM пам'яті даних не припиняють виконання програми. У регістрі EEADR зберігається адреса осередку EEPROM пам'яті даних. Дані зберігаються/читаються з регістра EEDATA. Старший біт адреси в регістрі EEADR завжди повинний дорівнювати нулеві, тому що не підтримується циклічна адресація (тобто осередок з адресою 0x80 не відображається на 0x00). У PIC16F877 обсяг EEPROM пам'яті даних 256 байт (використовуються усі 8-розрядів регістра EEADR).
Читання FLASH пам'яті програм не впливає на виконання програми, а під час операції запису виконання програми припинене. У спарених регістрах EEADRH:EEADR зберігається 13-розрядна адреса комірки пам'яті програм, до якого необхідно зробити звертання. Спарені регістри EEADRH:EEADR містять 14-розрядні дані для запису або відображають значення з пам'яті програм при читанні.
... окремих деталей і вузлів на підприємствах, розташованих в районах видобування деревини, дозволяє більш ефективно використовувати відходи деревообробки для виробництва деревностружкових і деревноволокнистих плит. 2. Виробництво конструкцій із деревини В малоповерховому, сільському (склади мінеральних добрив тощо), цивільному (спортивні і концертні зали) будівництві знайшли застосування дерев ...
... і тирси розміром 1.5. 5 мм. 2. Виробництво виробів і конструкцій на неорганічних речовинах При виробництві блоків стін підвалів з бетонів класом по міцності при стиску В7,5 і В10 на підприємствах бетонних і залізобетонних конструкцій застосовують вторинні сировинні ресурси, які отримують внаслідок переробки некондиційних залізобетонних конструкцій і демонтованих з будинків і споруд з значним ...
... речовини, викиди поживних елементів, подібних до стоку добрив; осідання кислотних опадів, хвороботворні організми. Все це призводить до погіршення якості води і деградації водних ресурсів. Комплексна екологічна оцінка стану річок басейнів Дніпра за методикою, яка розроблена Українським НДІ водогосподарсько-екологічних проблем, показала, що немає жодного басейну, стан котрого можна було б класифі ...
0 комментариев