Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти і науки України
Національний університет «Львівська політехніка»
Інститут телекомунікацій, радіоелектроніки та електронної техніки
кафедра «Теоретична радіотехніка та радіовимірювання»
Звіт з лабораторних робіт
на тему:
«Формування та керування сигналами»
з дисципліни «Програмування програмно-апаратних засобів»
Підготував:
ст. групи РТ-21
Лоїк.В.А.
Прийняв:
асист. каф. ТРР
Мащак А.В.
Львів 2016р.
Лабораторна робота №4
Тема: Керуючі сигнали з байтовою конфігурацією. Світлодіодна лінійка.
Мета: навчитися формувати керуючий сигнал з байтовою конфігурацією, виводити його на світлодіодну лінійку, визначати відповідність програмно-виконуваних дій та реакцій на них.
Постановка задачі: в інтегрованому середовищі PSoC® Creator™ написати програму мовою С для проекту, який реалізовує дозволяє відповідно до свого варіанту сформувати керуючий сигнал та вивести його на світлодіодну лінійку за допомогою системи-на-чіпі CY8CKIT-042 PSoC® 4 Pioneer Kit.
Завдання: за допомогою вбудованих функцій реалізувати процес виведення на світлодіодну лінійку керуючого сигналу з циклічним зміщенням вліво або вправо.
Варіанти виконання роботи: Номер варіанту виконання роботи визначається номером робочого місця студента:
Робочі місця 1, 5, 9 – варіант 1;
Робочі місця 2, 6, 10 – варіант 2;
Робочі місця 3, 7, 11 – варіант 3;
Робочі місця 4, 8, 12 – варіант 4.
Варіант – 2.
Варіант
Операція
Напрямок зміщення
Варіант
Операція
Напрямок зміщення
1
Порозрядне доповнення
вправо
2
Порозрядне логічне множення (І)
вліво
3
Порозрядна сума за модулем два
вправо
4
Порозрядне логічне додавання (АБО)
вліво
Індивідуальне завдання:
Операція: Порозрядне логічне множення (І).
Напрямок зміщення: вліво.
Короткі відомості для виконання роботи.
Для реалізації поставленої задачі можна використати вбудовані функції:
CyDelay() – функція затримки, аргументом якої є період в мілісекундах;
LED_Write() – функція, яка задає світіння світлодіодів.
Завдання 1. Відлагодити код програми для виведення на світлодіодну лінійку почергово 2 байт:
Першу літеру прізвища латиницею за її номером у таблиці ASCII;
Число, що складається з 2 останніх цифр номера студентського квитка.
Код програми:
#include "project.h" int main(void) { CyGlobalIntEnable; /* Enable global interrupts. */ uint8 byte; uint8 a; uint8 b; a=108; b=52; byte= a & b;
for(;;) { LED_Write(a); CyDelay(1000); //// Part 1 LED_Write(b); CyDelay(1000); }
}
Завдання 2. Написати і відлагодити код програми для виконання порозрядного логічного множення із цими байтами. Забезпечити циклічне зміщення результуючого байту вліво.
Код програми:
#include "project.h" int main(void) { CyGlobalIntEnable; /* Enable global interrupts. */ uint8 byte; uint8 a; uint8 b; a=108; b=52; byte= a & b; for(;;) { CyDelay(300); if(byte&1) byte |=128; ////Part 2 LED_Write(byte); byte =byte »1; } }
Висновок: На цій лабораторній роботі я вивів на світлодіодну лінійку два байти почергово. Перший байт – це перша літера прізвища латиницею за її номером у таблиці ASCII; другий байт – це число, що складається з 2 останніх цифр номера студентського квитка. Значення першого байту – 108, значення другого – 52. Потім я написав програму для порозрядного множення цих байтів і циклічного зсуву їх вліво. Все це вивів на світлодіодну лінійку.
Ви не можете залишити коментар. Для цього, будь ласка, увійдіть
або зареєструйтесь.
Ділись своїми роботами та отримуй миттєві бонуси!
Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!