46071 (665366), страница 5

Файл №665366 46071 (Контроллеры) 5 страница46071 (665366) страница 52016-07-31СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 5)

Программа контроллера УСВИЦ-250 должна выполнять следующие основные функции:

Осуществлять считывание с масок кодов скоростей;

Осуществлять перевод этих кодов в двоичный код;

Осуществлять формирование 32х-разрядного слова по ARING-427;

Осуществлять вывод в магистраль выходного слова;

Осуществлять вывод аналогового сигнала о приборной скорости.

Результатом анализа и осмысления, поставленных при разработке данной подсистемы требований явилась следующая структура подпрограмм в основной программе, обеспечивающей выполнения поставленных требований:

1. Подпрограмма, взаимодействующая масок с МК должна выполнять следующие возложенные на нее функции:

- принимать коды грея;

2. Подрограмма, осуществляющая перевод кодов по формуле:

Код_Двоичный4=Код_Грея4;

Код_Двоичный3=Код_Грея3 Код_Двоичный4;

Код_Двоичный2=Код_Грея2 Код_Двоичный3;

Код_Двоичный1=Код_Грея1 Код_Двоичный2;

Код_Двоичный0=Код_Грея0 Код_Двоичный1;

3. Подрограмма, формирование 32х-разрядного слова по ARING-427 должна выполнять следующие функции:

- привести значение скорости к цене младшего разряда;

занести по адресам 8-9 в слове индификатор от УСВИЦ-250;

занести по адресам 30-29 в слове о достоверности слова;

подсчитать четность слова и занести по адресу 31 в слове.

Занести по адресам 0-8 в слове адрес слова;

4. Подпрограмма, осуществляющая выдачу слова в магистраль с частотой 12.5КГц, должна выполнять следующие возложенные на нее функции:

- обеспечивать частоту вывода 12.5КГц;

обеспечивать выдачу последовательно 206, 207 и 271 слова;

Подпрограмма, осуществляющая выдачу приборной скорости в аналоговом виде и должна выполнять следующие возложенные на нее функции:

записи в регистр ЦАП приборной скорости;

сделать паузу для записи в регистр;

установить флаг в ЦАП о записи в регистр.

Файловая структура подсистемы представляет собой совокупность шести файлов, один из которых содержит основной текст программы SPEED.C , со всеми вышеперечисленными основными и вспомогательными подпрограммами. Другие файлы - содержат подпрограммы написаны на ассемблере используемых в основной программе. При помощи интегрированной среды Project-51 программа компилируется и, в случае, успешного результата обработки, создает файл SPEED.HEX, содержащий исходный код программы в шестнадцатиричном виде. Полученный исполняемый программный код при помощи программатора, подключенного к компьютеру, заносится в микроконтроллер для последующего выполнения и тестирования, обнаружения возможных допущенных при программировании ошибок.

Для отладки созданного программного кода, внутрисхемный эмулятор устанавливался на опытный образец печатной платы с напаянными на ней всеми необходимыми для корректной работы микросхемами и навесными элементами (резисторы, конденсаторы). Все микросхемы, установленные на плате, в совокупности с микроконтроллером и его программным обеспечением, составляют разрабатываемый контроллер. Подобная отладка, с применением осциллографа, контрольного пульта ПК-10, дает вполне ясную картину программно генерируемых сигналов с микроконтроллера. Осциллограф позволяет в удобной форме проследить периодичность генерации сигналов и длительность процессов, которые они вызывают в схеме, а ПК-10 достоверность выходного слова. Также довольно легко наблюдать принимаемые микроконтроллером на обработку сигналы, поступающие с других микросхем. Применение осциллографа и ПК-10, при отладке программы на реальной аппаратуре, необходимо, и безусловно, значительно облегчает отладку и доработку исходного текста программы.

Описание структуры полей программы

Переменные для временных обработак и константы с их адресами

const int speed=172 - служит для добавления при наземном контролле контроллера;

const int test_speed=2 - служит для добавления при проверки масок приборной и максимальной скорости;

static int a @ 0x18 - временная преременная;

static int flag @ 0x18 - временная преременная;

static int flag1 @ 0x1a - временная преременная;

Переменные для выходного слова адрес 206 по РТМ с их адресами

static unsigned long SlVmd @ 0x10;

static unsigned char SlVmd_1 @ 0x10;

static unsigned char SlVmd_2 @ 0x11;

static unsigned char SlVmd_3 @ 0x12;

static unsigned char SlVmd_4 @ 0x13;

Переменные для выходного слова адрес 207 по РТМ с их адресами

static unsigned long SlVpr @ 0x3c;

static unsigned char SlVpr_1 @ 0x3c;

static unsigned char SlVpr_2 @ 0x3d;

static unsigned char SlVpr_3 @ 0x3e;

static unsigned char SlVpr_4 @ 0x3f;

Переменные для выходного слова адрес 271 по РТМ с их адресами

static unsigned long SlDs @ 0x38;

static unsigned char SlDs_1 @ 0x38;

static unsigned char SlDs_2 @ 0x39;

static unsigned char SlDs_3 @ 0x3a;

static unsigned char SlDs_4 @ 0x3b;

Переменная для выдачи на ЦАП с его адресом

static unsigned int CapSlowo @ 0x14;

Переменные для рабочих областей стеков с их адресами

static unsigned long Stec @ 0x28;

static unsigned int Stec1 @ 0x28;

static unsigned int Stec2 @ 0x2a;

Переменные для сохранение переведенных скоростей с их адресами

static unsigned int StecVprd @ 0x30;

static unsigned int StecVmdd @ 0x32;

Переменные вводимых скорости с приборной скорости маски с их адресами

static unsigned int Vprg @ 0x20;

static unsigned int Vmdg @ 0x24;

Переменные вводимых скорости с максимальной скорости маски с их адресами

static unsigned int Vprd @ 0x22;

static unsigned int Vmdd @ 0x26;

Переменные рабочее слово SlRab расписаны в битовой резидентной памяти по битам и словам с их адресами

static unsigned long SlRab @ 0x2c;

static unsigned char SlRab_4 @ 0x2c;

static unsigned char SlRab_3 @ 0x2d;

static unsigned char SlRab_2 @ 0x2e;

static unsigned char SlRab_1 @ 0x2f;

static unsigned char Adress @ 0x2f - по этому адресу находится адрес выходного слова;

static bit unsigned char SlRab_bit31 @ 0x67;

static bit unsigned char SlRab_bit30 @ 0x66;

static bit unsigned char SlRab_bit29 @ 0x65;

static bit unsigned char SlRab_bit28 @ 0x64;

static bit unsigned char SlRab_bit27 @ 0x63;

static bit unsigned char SlRab_bit26 @ 0x62;

static bit unsigned char SlRab_bit25 @ 0x61;

static bit unsigned char SlRab_bit24 @ 0x60;

static bit unsigned char SlRab_bit23 @ 0x6f;

static bit unsigned char SlRab_bit22 @ 0x6e;

static bit unsigned char SlRab_bit21 @ 0x6d;

static bit unsigned char SlRab_bit20 @ 0x6c;

static bit unsigned char SlRab_bit19 @ 0x6b;

static bit unsigned char SlRab_bit18 @ 0x6a;

static bit unsigned char SlRab_bit17 @ 0x69;

static bit unsigned char SlRab_bit16 @ 0x68;

static bit unsigned char SlRab_bit15 @ 0x77;

static bit unsigned char SlRab_bit14 @ 0x76;

static bit unsigned char SlRab_bit13 @ 0x75;

static bit unsigned char SlRab_bit12 @ 0x74;

static bit unsigned char SlRab_bit11 @ 0x73;

static bit unsigned char SlRab_bit10 @ 0x72;

static bit unsigned char SlRab_bit9 @ 0x71;

static bit unsigned char SlRab_bit8 @ 0x70;

static bit unsigned char SlRab_bit7 @ 0x7f;

static bit unsigned char SlRab_bit6 @ 0x7e;

static bit unsigned char SlRab_bit5 @ 0x7d;

static bit unsigned char SlRab_bit4 @ 0x7c;

static bit unsigned char SlRab_bit3 @ 0x7b;

static bit unsigned char SlRab_bit2 @ 0x7a;

static bit unsigned char SlRab_bit1 @ 0x79;

static bit unsigned char SlRab_bit0 @ 0x78;

Переменные приборной скорости в коде Грея расписаны в битовой резидентной памяти по битам с их адресами

static bit unsigned char Vprg_bit9 @ 0x01;

static bit unsigned char Vprg_bit8 @ 0x00;

static bit unsigned char Vprg_bit7 @ 0x0f;

static bit unsigned char Vprg_bit6 @ 0x0e;

static bit unsigned char Vprg_bit5 @ 0x0d;

static bit unsigned char Vprg_bit4 @ 0x0c;

static bit unsigned char Vprg_bit3 @ 0x0b;

static bit unsigned char Vprg_bit2 @ 0x0a;

static bit unsigned char Vprg_bit1 @ 0x09;

static bit unsigned char Vprg_bit0 @ 0x08;

Переменные приборной скорости в двоичном коде расписаны в битовой резидентной памяти по битам с их адресами

static bit unsigned char Vprd_bit9 @ 0x11;

static bit unsigned char Vprd_bit8 @ 0x10;

static bit unsigned char Vprd_bit7 @ 0x1f;

static bit unsigned char Vprd_bit6 @ 0x1e;

static bit unsigned char Vprd_bit5 @ 0x1d;

static bit unsigned char Vprd_bit4 @ 0x1c;

static bit unsigned char Vprd_bit3 @ 0x1b;

static bit unsigned char Vprd_bit2 @ 0x1a;

static bit unsigned char Vprd_bit1 @ 0x19;

static bit unsigned char Vprd_bit0 @ 0x18;

Переменные максимальной скорости в коде Грея расписаны в битовой резидентной памяти по битам с их адресами

static bit unsigned char Vmdg_bit9 @ 0x21;

static bit unsigned char Vmdg_bit8 @ 0x20;

static bit unsigned char Vmdg_bit7 @ 0x2f;

static bit unsigned char Vmdg_bit6 @ 0x2e;

static bit unsigned char Vmdg_bit5 @ 0x2d;

static bit unsigned char Vmdg_bit4 @ 0x2c;

static bit unsigned char Vmdg_bit3 @ 0x2b;

static bit unsigned char Vmdg_bit2 @ 0x2a;

static bit unsigned char Vmdg_bit1 @ 0x29;

static bit unsigned char Vmdg_bit0 @ 0x28;

Переменные максимальной скорости в двоичном коде расписаны в битовой резидентной памяти по битам с их адресами

static bit unsigned char Vmdd_bit9 @ 0x31;

static bit unsigned char Vmdd_bit8 @ 0x30;

static bit unsigned char Vmdd_bit7 @ 0x3f;

static bit unsigned char Vmdd_bit6 @ 0x3e;

static bit unsigned char Vmdd_bit5 @ 0x3d;

static bit unsigned char Vmdd_bit4 @ 0x3c;

static bit unsigned char Vmdd_bit3 @ 0x3b;

static bit unsigned char Vmdd_bit2 @ 0x3a;

static bit unsigned char Vmdd_bit1 @ 0x39;

static bit unsigned char Vmdd_bit0 @ 0x38;

Формат слова 206 и 207.

Форматы 206, 207 слова состоят из 32 разрядов который показан в таблице 2.2 .

Таблица 2.2

31

30

29

28

27-11

10

9

8

7-0

CRC

состояние

Знак

данные

Точность

Идентификатор

адрес

Матрица состояния информации параметров.

Разряды в слове

Наименование функции

31

30

0

0

Предупреждение об отказе

0

1

Нет вычисленных данных

1

0

Функциональный тест

1

1

Нормальная работа

Алгоритм функционирования контроллера

Контроллер включает в себя следующие функции :

- Сброс сторожевого таймера;

- Очстка всех областей переменных;

- Подготовка вывода слова 206 с признаком "нет вычисленных данных";

- Подготовка вывода слова 207 с признаком "нет вычисленных данных";

- Заполнение сохраненного значения приборной скорости;

- Заполнение сохраненного значения максимальной скорости;

- Цикл проверки на отказ маски приборной скорости;

- Цикл проверки на отказ маски максимальной скорости;

- Проверка на наличие разовой команды тест контроля;

- Маштабирование приборной скорости для выдачи в ЦАП;

- Тестирование ПО;

- Формирование слова адрес 271 в соответствии с признаками об тестирования ПО;

- Формирование выходного слова адрес 206 в соответствии с РТМ, изм,3;

- Формирование выходного слова адрес 207 в соответствии с РТМ, изм,3;

- Сброс сторожевого таймера.

Выводы

В настоящем разделе выпускной работы были проведены

следующие работы:

- был проведен анализ структуры программы контроллера;

- был рассмотрен алгоритм функционирования контроллера.

Реализация

Описание функций основных модулей системы.

Основной файл системы является проэктный файл - SPEED.PRJ, в которой: указывается путь к файлам системы, установка адресов ПЗУ, ОЗУ, стека, векторов прерывания и параметров контроллера, список компилируемых файлов.

Основная программа

void main(void)

{

/*---------- Запуск таймера на вывод --------------------------------------*/

set_vector(TIMER0,Timer);

Zapusk();

Характеристики

Тип файла
Документ
Размер
1,14 Mb
Материал
Тип материала
Учебное заведение
Неизвестно

Список файлов реферата

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6447
Авторов
на СтудИзбе
305
Средний доход
с одного платного файла
Обучение Подробнее