Мікроконтролери у вбудованих системах
Цей курс охоплює такі теми:

Час прочитання статті.
Автор
Стаття
Опубліковано 1 січня 2011В - Оновлено 30 березня 2014В
Соціальні зв’язки
I. Вступ ▲
Я-А. Структура курсу ▲
I-B. Галузь застосування мікроконтролерів
Найдешевші 32-розрядні процесори коштують близько долара.
I-D. Мови програмування
I-D-1. C ▲
I-D-2. C ++ ▲
I-D-3. Монтажник
I-D-4. Java ▲
- Тренажер.
- ROM-монітор.
- Фоновий режим налагодження.
- Емулятор.
- Програмування та безпосереднє тестування на ПЗУ/Flash.
I-E-1. Симулятор ▲
I-E-2. Монітор ПЗУ
I-E-3. Інтерфейс JTAG
I-E-4. Г емулятор ▲
I-E-5. Програмування ПЗУ/Flash та пряме тестування
- "Програмна система, яка повністю інкапсульована."
- "В ... обчислювальна система існує всередині більшої системи для досягнення своєї загальної відповідальності"
- «Система реального часу - це система, яка повинна задовольняти явні (обмежені) обмеження часу відгуку або ризикувати серйозними наслідками, включаючи збої. Невдала система - це система, яка не може задовольнити одну або кілька вимог, викладених у офіційній специфікації системи.
II-C. Технічний процес
Цей термін в основному зустрічається в контексті промислової автоматизації. Ось короткий зміст:
Приклади датчиків:
II-D. Системи промислового зв'язку
II-D-1. Структури промислових виробничих систем
Рівень команди:
Рівень контролю:
- рівень корпоративного контролю;
- рівень обробки В;
- рівень установкиВ;
- клітинний рівеньВ;
- польовий рівеньВ;
- рівень процесу.
II-D-2. Критерії спілкування
III-D. Держава-подія
III-D-1. Вступ ▲
III-D-2. Дизайн ▲
III-D-3-b. Столи ▲
IV-A. Вступ ▲
IV-A-1. Апаратне забезпечення ▲
IV-A-2. Програмне забезпечення ▲
IV-B. Мова програмування C.
IV-B-1. MISRA-C ▲
IV-B-2. Аналіз статичного коду
IV-C. Мерфі та мова програмування C.
Ці показання не є вичерпними. Однак вони ілюструють деякі основні проблеми цієї мови.
IV-C-3. Вказівник NULL
IV-C-4. Перебої
Ви повинні подбати про це самостійно в C і C++.
IV-C-6. Умови перегонів ▲
Умови змагань часто є джерелом помилок програмного забезпечення, які дуже важко знайти (приклад таймера вище) В !
У цьому контексті важливим правилом, якого слід дотримуватися, є наступне:
"Поділіться кодом, а не даними" !
IV-C-9. стверджувати ()
Прикладами застосування макросу assert () є покажчик (ненульовий покажчик) або діапазон значень тестів параметрів тощо.
IV-C-10. Оптимізація коду С
IV-D-1. Дизайн
- IEEE 829, Стандарт для тестової документації програмного забезпеченняВ;
- IEEE 1008, стандарт для модульного тестування програмного забезпеченняВ;
- IEEE 1012, Стандарт для перевірки та перевірки програмного забезпечення.
IV-D-3. Документація ▲
Хороша документація допомагає гарантувати, що:
IV-D-4. Відгуки ▲
IV-E. Сторожовий пес
IV-E-1. Вступ ▲
IV-E-2. Зовнішній сторожовий пес
- Моніторинг живлення системи.
- Моніторинг системного годинника.
IV-E-3. Внутрішній сторожовий пес
За даними сімейства мікроконтролерів, існують внутрішні сторожові органи, які мають власну базу часу.
IV-E-4. Робота сторожового пса ▲
Наступна фігура ілюструє основну структуру сторожового собакиВ:
IV-E-6. Сторожове оновлення ▲
Доступ до портів порівняно простий у CВ:
V-C. RS232 ▲
Інтерфейси RS232 можна отримати за допомогою регістрів.
V-D. SPI ▲
Наступний малюнок ілюструє принцип роботи SPIВ:
V-E. I2C ▲
V-E-1. Огляд ▲
Наступний малюнок ілюструє типове застосування з шиною I2CВ:
ДжерелоВ: Philips, Специфікація шини I2C, V2.1, січень 2000 р
V-E-2. Протокол ▲
ДжерелоВ: Philips, Специфікація шини I2C, V2.1, січень 2000 р
Рівень перерви В:
- Рівень паузи високий .
Умова зупинки:
- Не підтверджено вказує на помилку передачі або кінець розпорядження для отримання.
Приклад коду для функції I2C_Start ():
V-F. Таймер ▲
V-F-1. Вступ ▲
Програми таймера/лічильника такі: