Необходимо модифицировать код Lab5_1. Вместо показа четырех младших битов переменной "counter" как в Lab5_1, необходимо теперь показать «движение» светодиодов слева направо и наоборот:
Порядок выполнения
Модифицируйте программу и файл проекта.
1. Откройте исходную программу «Lab5_1.c» из проекта Lab5.pjt в C:\DSP2833x_V4\Labs\Lab5 и сохраните этот файл как «Lab5_2.c».
2. Исключите файл «Lab5_1.c» из build. Правый клик на Lab5_1.c и в окне проекта выбор
“Exclude File(s) from Build".
Добавьте новый файл исходной программы к вашему проекту.
3. Модифицируйте код в «Lab5_2.c» согласно новой цели. Переменная «counter» больше не нужна, её можно удалить.
4. Вновь скомпилируйте и протестируйте код как это Вы сделали в Lab5_1.
Лабораторная работа 5_3: Цифровой ввод.
Цель: Lab5_3 должна прочитать состояние шестнадцатеричного шифратора и отобразить его на светодиодах LD1 (GPIO9), LD2 (GPIO11), LD3 (GPIO34) и LD4 (GPIO49).
Теперь давайте добавим некоторую цифровую входную функцию к нашему коду. На Периферийной плате исследователя, цифровые линии с GPIO12 по GPIO15 - вводы с 4-битового шестнадцатеричного шифратора (SW2). Это устройство генерирует 4-битовое число между двоичным «0000» и «1111», в зависимости от своего переключателя.
|
|
Порядок выполнения
Модифицируйте программу и файл проекта
1. Откройте исходную программу «Lab5_1.c» из проекта «Lab5» в C:\DSP2833x_V4\Labs\Lab5 и сохраните этот файл как «Lab5_3.c».
2. Исключите файл «Lab5_2.c» из build. Правое нажатие кнопкой мыши на Lab5_2.c и в окне проекта выбор “Exclude File(s) from Build”.
3. Модифицируйте Lab5_3.c. Удалите переменную"counter". Добавьте функции вызова в «InitSystem()» и «Gpio_select()». Бесконечный while(1)-цикл модификации не требует. Просто текущая величина с ввода GPIO12 (бит 0 шифратора) копируется на вывод GPIO9 (LED1) и так далее.
4. Как насчет сторожевого таймера? Мы обслуживали сторожевой таймер в «delay_function()» - было бы неразумно удалить этот вызов функции из нашего управляющего цикла!
5. Скомпилируйте, загрузите и протестируйте программу как Вы сделали в предшествующих упражнениях.
Когда код работает, поворачивайте ключ шестнадцатеричного шифратора. Каждый поворот по часовой стрелке должен увеличивать двоичный код на четырех светодиодах, поворот против часовой стрелки должен уменьшать код.