Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.
Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.
Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.
Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.
Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.
Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.
ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО НАУКЕ И ОБРАЗОВАНИЮ
РОССИЙСКОЙ ФЕДЕРАЦИИ
ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ
ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ
"БРАТСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ"
Кафедра
Управления в
технологических системах
Программно-аппаратное
обеспечение
цифровых систем
управления
ОТЧЁТ ПО ЛАБОРАТОРНЫМ РАБОТАМ № 1, 2
"Изучение функций конфигурации и тестирование платы"
"Установка номера канала АЦП
и аналого-цифровое преобразование"
Выполнили:
студенты группы АТП-01-2 Сопелева А. А.
Харлова А. С.
Проверил:
к.т.н., доцент кафедры УТС Дедюхин А. А.
Братск 2005
Лабораторная работа № 1.
Изучение функций конфигурации и тестирование платы.
Цель работы. Установка базового адреса в пространстве персонального компьютера для функций драйвера; сообщение драйверу о выбранном номере прерывания на плате и проверка наличия платы в компьютере.
Задание на лабораторную работу.
1. Написать и отладить программу для установки базового адреса и номера прерывания, а выходным будет сообщение о верном выборе параметров конфигурации и успешном тестировании.
2. Написать и отладить программу для определения базового адреса и номера прерывания, путём перебора всех базовых адресов и номеров прерывания. Результаты перебора оформить в виде таблицы 5. Сравнить полученные данные с установленными.
Листинг программ и
пояснение операторов, используемых в них.
1.
int main (void)
{
//IRQ4
//Base Address = 310h
SETBASEADDRESS(0x310); //установка нового базового адреса (по умолчанию 300h)
INTR_SETUP(1); //установка номера прерывания 1->IRQ4
if (!PLATA_TEST()) //проверка наличия платы в компьютере
printf ("Плата инициализирована\n"); //успешное тестирование если PLATA_TEST=0
else
printf ("Плата отсутствует в компьютере либо значение базового адреса платы не
соответствует установленному\n");
return 0;
}
2.
int main (void)
{
int i=0, j=0x0, flag=0;
printf ("\tBA\t\tIRQ\tTEST\n");
for (i=0;i<4;i++)
{
//IRQ
for (j=0x300; j<=0x340; j+=0x10)
{
//BA
printf("\t%x\t\tIRQ%d\t\t",j,i+3);
if (PLATA_TEST())
printf ("NO\n"); //неправильно определён базовый адрес и номер прерывания
else
printf ("YES\n"); //правильно определён базовый адрес и номер прерывания
}
}
return 0;
}
Результат определения базового адреса и номера прерывания
Таблица 1.1
Базовый адрес |
Номер прерывания |
Результат проверки |
0x300 |
IRQ3 |
NO |
0x310 |
IRQ3 |
NO |
0x330 |
IRQ3 |
NO |
0x340 |
IRQ3 |
NO |
0x300 |
IRQ4 |
NO |
0x310 |
IRQ4 |
YES |
0x330 |
IRQ4 |
NO |
0x340 |
IRQ4 |
NO |
0x300 |
IRQ5 |
NO |
0x310 |
IRQ5 |
NO |
0x330 |
IRQ5 |
NO |
0x340 |
IRQ5 |
NO |
0x300 |
IRQ6 |
NO |
0x310 |
IRQ6 |
NO |
0x330 |
IRQ6 |
NO |
0x340 |
IRQ6 |
NO |
Уважаемые коллеги! Предлагаем вам разработку программного обеспечения под ключ.
Опытные программисты сделают для вас мобильное приложение, нейронную сеть, систему искусственного интеллекта, SaaS-сервис, производственную систему, внедрят или разработают ERP/CRM, запустят стартап.
Сферы - промышленность, ритейл, производственные компании, стартапы, финансы и другие направления.
Языки программирования: Java, PHP, Ruby, C++, .NET, Python, Go, Kotlin, Swift, React Native, Flutter и многие другие.
Всегда на связи. Соблюдаем сроки. Предложим адекватную конкурентную цену.
Заходите к нам на сайт и пишите, с удовольствием вам во всем поможем.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.