Измеритель расхода топлива - Коммуникации, связь, цифровые приборы и радиоэлектроника курсовая работа

Измеритель расхода топлива - Коммуникации, связь, цифровые приборы и радиоэлектроника курсовая работа



































Описание структурной схемы измерителя расхода топлива. Разработка принципиальной электрической схемы. Проектирование на базе 8-разрядного микроконтроллера измерителя расхода топлива, использующего оцифрованные аналого-цифровыми преобразователями сигналы.


посмотреть текст работы


скачать работу можно здесь


полная информация о работе


весь список подобных работ


Нужна помощь с учёбой? Наши эксперты готовы помочь!
Нажимая на кнопку, вы соглашаетесь с
политикой обработки персональных данных

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Министерство образования Российской Федерации
Южно-Уральский государственный университет
Кафедра “Цифровые радиотехнические системы”
Пояснительная записка к курсовому проекту
по курсу “Вычислительная техника и информационные технологии”
На основе предложенного задания спроектирован измеритель расхода топлива. По приведенному в анализе алгоритму работы устройства написана программа на языке ассемблер и разработана принципиальная электрическая схема устройства. Измеритель позволяет получать наглядную информацию о расходе топлива автомобиля.
2 Описание структурной схемы устройства
3.2.2 Алгоритм преобразования в десятичную форму записи
3.2.3 Алгоритм вывода результата на индикатор
4 Разработка принципиальной электрической схемы
Любое транспортное средство не может двигаться без топлива, которое, как известно, стоит денег. Но как узнать, сколько литров на единицу времени или пути сжигает автомобиль. А ведь зная текущий расход топлива, можно легко выбирать стиль езды, экономящий понапрасну сжигаемое топливо, оперативно реагировать на увеличенный расход топлива связанный с поломкой.
Таким образом, устройство, которое наглядно показывает расход топлива автомобилем в данный момент очень удобно, и позволяет упростить многие проблемы автолюбителей.
Современная цифровая техника позволяет на базе микроконтроллеров решать такие задачи, создавать широкий спектр необходимых человеку приборов.
В этом направлении наиболее распространенным до сих является семейство 8-разрядных микроконтроллеров - MCS-51. Именно поэтому в проектировании измерителя расхода топлива будет использован микроконтроллер этого семейства.
Требуется разработать измеритель расхода топлива, данные (скорость автомобиля и расход топлива) для которого поступают в виде напряжений. Скорости от 0 до 200 км/час соответствует напряжение от 0 до 10В, и расходу от 0 до 10 мл/с - такое же напряжение. По заданию необходимо выводить на трехразрядный семисегментный индикатор расход топлива в мл/км.
Используем восьми разрядные АЦП для преобразования аналогового си-нала в цифровой. Таким образом, поступающие напряжения будут переведены в двоичные комбинации, которыми будет оперировать микроконтроллер.
Для того чтобы получить расход топлива R в мл/км, нужно воспользоваться следующей формулой
Чтобы перейти от имеющихся двоичных комбинаций, значения которых находятся в диапазоне от 00000000 до 11111111 (от 0 до 255), к величинам скорости и расхода, приходится вводить переводные коэффициенты. Для скорости этот коэффициент равен отношению максимальной скорости (200 км/час) к максимальному значению кода (255). Получим
где К х - значение двоичного кода скорости (от 0 до 255).
Для расхода переводной коэффициент равен отношению максимального расхода (10 мл/c) к максимальному значению кода (255).
где К н - значение двоичного кода расхода (от 0 до 255).
Подставим выражения (2) и (3) в формулу (1), получим следующую формулу
По заданию если скорость равна 0, то на индикатор выводится расход топлива в л/час. Чтобы получить расход топлива R в л/час, нужно воспользоваться формулой
Микроконтроллером для вычислений по формулам (4) и (6) используются значения в двоичной форме, соответственно и коэффициенты выражаются в двоичной форме, и результат будет получен также в двоичной форме. Поэтому перед выводом на индикатор, потребуется приведение результата к десятичной форме. Все эти особенности должны учитываться при написании программы.
Предполагается, что для вывода значения расхода топлива, найденного по формуле (4) трехразрядного индикатора вполне хватит. Максимальное выводимое на индикатор значение расхода топлива (999 мл/км) для современных автомобилей является абсурдным, т.е. недостижимым.
Таким образом, для реализации измерителя расхода топлива потребуется микроконтроллер семейства МК51, два АЦП и трехразрядный семисегментный индикатор.
2 . Описание структурной схемы устройства
В предыдущем разделе уже оговаривались блоки необходимые для реализации проектируемого устройства. На основании анализа технического задания можно изобразить структурную схему устройства (рисунок 1).
Рисунок 1 - Структурная схема устройства
На рисунке 1 изображены основные блоки проектируемого устройства. АЦП служат для преобразования входного напряжения в двоичный код (оцифровывает аналоговый сигнал). Так у нас два информативных аналоговых сигнала, следовательно, потребуется два АЦП. Микроконтроллер выполняет обработку, полученных с портов данных и выдает результат на индикаторы.
Рисунок 2 - Блок - схема работы программы
Более подробного рассмотрения в виде алгоритмов требуют блоки реализации формул, блок преобразования в десятичную форму записи, блок вывода результата на индикатор. Алгоритмы блоков приведены в следующем подразделе пояснительной записки.
Рисунок 3 - Блок - схема части алгоритма реализации формул
Рисунок 4 - Блок - схема части алгоритма реализации формул
Рисунок 5 - Блок - схема части алгоритма реализации формул
Рисунок 6 - Блок - схема окончания алгоритма реализации формул
3.2.2 Алгоритм преобразования в десятичную форму записи
Рисунок 7 - Блок - схема преобразования в десятичную форму записи
3 .2.3 Алгоритм вывода результата на индикатор
Рисунок 8 - Блок - схема части алгоритма вывода результата на индикаторы
Рисунок 9 - Блок - схема части алгоритма вывода результата на индикаторы
SJMP TIMER ; Переход на установку таймера.
JMP SELECTOR ; прерывания от таймера.
TIMER: MOV TMOD, #00010000b ; 1-ый режим работы таймера (16 разрядов).
MOV TCON, #01000000b ; Включение таймера 1.
MOV IE, #10001000b ; Разрешение прерывания от таймера.
MOV TH1, #0FFh ; Задаются старшие и младшие
MOV TL1, #0FFh ; 8 разрядов таймера 1.
MOV R3, #0h ; Значение регистра необходимое для
START: CLR P1.2 ; Сигнал подается на первый АЦП -
SETB P1.2 ; начало преобразования аналогового
NOP ; Задержка на время преобразования 4,5мкс.
CLR P1.4 ; (разрешения работы и чтения)
SETB P1.4 ; служат для передачи данных
MOV 53h, P3 ; Данные с порта (скорость) записываются
CLR P1.5 ; Аналогично, сигнал начала преобразования
CLR P1.6 ; Аналогичные сигналы для передачи
CLR P1.7 ; данных со второго АЦП на 3-ий порт.
MOV 52h, P3 ; Данные с порта в ячейку (расход топлива).
MOV 50h, #10110100b ; Коэффициент 180 в формуле (4).
MOV A, 53h ; Проверка скорости на равенство нулю и
JZ NULL ; переход в метку NULL при его истинности.
MOV A, 52h ; Реализация по формуле (4)
SJMP ALGORITM ; Переход к реализации формулы.
NULL: MOV 53h, #64h ; Реализация по формуле (6) .
ALGORITM: MUL AB ; Произведение или .
MOV 50h, A ; Младший байт произведения.
MOV 51h, B ; Старший байт произведения.
MOV A, B ; Деление старшего байта произведения
MOV B, 53h ; на значение скорости или на 100.
MOV 54h, A ; Целая часть от деления.
MOV A, 53h ; Деление делителя (значение скорости
MOV 56h, A ; Целая часть от деления делителя на 10.
MOV 57h, B ; Остаток от деления делителя на 10.
JZ HELP ; Если целая часть от деления делителя на 10
; равна нулю, то переход в метку HELP.
MOV B, #4h ; Если остаток от деления делителя на 10 равен
SUBB A, B ; 4, то переход в метку B5.
MOV B, #6h ; Если остаток от деления делителя на 10 равен
SUBB A, B ; 6, то переход в метку B5.
MOV A, #4h ; Если остаток от деления делителя на 10
CJNE A, 57h, C1 ; больше 4, то переход в метку B1.
JNC B3 ; Если меньше 4, то в метку B3.
B1: MOV A, #6h ; Если остаток от деления делителя на 10
CJNE A, 57h, C ; больше 6, то переход в метку B7.
JNC B2 ; Если равен 5, то в метку B2.
B2: MOV A, 56h ; Получено, что остаток от деления делителя
MOV B, #2h ; на 10 равен 5, тогда целая часть от деления
MUL AB ; делителя на 10 умножается на 2.
INC 52h ; Увеличение результата на 1. (новый делитель)
MOV A, 55h ; Остаток от деления числителя формул
MOV B, 52h ; (4) или (6) делится на новый делитель.
MOV 41h, B ; Остаток от деления на новый делитель.
MOV B, #2h ; Умножение целой части от деления на
MOV 57h, A ; В результате получены десятые доли
; деления старшего байта произведения.
MOV A, 41h ; Умножение остатка от деления на новый
MOV B, 52h ; Результат этого умножения снова делится
DIV AB ; на новый делитель и целая часть этого
ADD A, 57h ; деления складывается с десятыми долями
MOV 57h, A ; деления старшего байта произведения.
MOV 42h, B ; Остаток последнего деления фиксируется.
SJMP VPERED ; Переход к нахождения сотых долей.
B3: MOV A, #1h ; Если остаток от деления делителя на 10
CJNE A, 57h, C3 ; 0 или 1, то переход в метку HELP_1.
JC B4 ; Если больше 1, то в метку B4.
B4: MOV A, #2h ; Если остаток от деления делителя на 10
CJNE A, 57h, C4 ; равен 2, то переход в метку B5.
JC B6 ; Если равен 3, то в метку B6.
HELP: JMP D_0 ; Переход в метку D_0.
B5: MOV A, 56h ; Если остаток от деления делителя на 10
MOV B, #5h ; равен 2, 4, 6 или 8, тогда целая часть от
MUL AB ; деления делителя на 10 умножается на 5.
MOV A, 57h ; Остаток от деления делителя на 10
MOV B, #2h ; делится на 2 и складывается с предыдущим
DIV AB ; результатом. Получен новый делитель.
MOV A, 55h ; Остаток от деления числителя формул
MOV B, 52h ; (4) или (6) делится на новый делитель.
MOV 41h, B ; Остаток от деления на новый делитель.
MOV B, #5h ; Умножение целой части от деления на
MOV 57h, A ; В результате получены десятые доли
; деление старшего байта произведения.
MOV A, 41h ; Умножение остатка от деления на новый
MOV B, 52h ; Результат этого умножения снова делится
DIV AB ; на новый делитель и целая часть этого
ADD A, 57h ; деления складывается с десятыми долями
MOV 57h, A ; деления старшего байта произведения.
MOV 42h, B ; Остаток последнего деления фиксируется.
JMP VPERED ; Переход к нахождения сотых долей.
B7: MOV A, #8h ; Если остаток от деления делителя на 10
CJNE A, 57h, C5 ; равен 9, то переход в метку HELP_1.
JNC B8 ; Если меньше или равен 8, то в метку B8.
B8: MOV A, #7h ; Если остаток от деления делителя на 10
CJNE A, 57h, C6 ; равен 8, то переход в метку B5.
JNC B6 ; Если равен 7, то переход в метку B6.
HELP_1: SJMP DALEE ; Переход в метку DALEE.
B6: MOV A, 56h ; Если остаток от деления делителя на 10
MOV B, #3h ; равен 3 или 7, тогда целая часть от
MUL AB ; деления делителя на 10 умножается на 3.
MOV A, #5h ; Полученный результат в случае, если
CJNE A, 57h, RAZD ; остаток от деления делителя на 10 равен 7
RAZD: JC DEL1 ; увеличивается на 2. А если остаток равен
JNC DEL2 ; 3, то - на 1. Получен новый делитель.
SJMP RETURN ; Переход в метку RETURN.
RETURN: MOV A, 55h ; Остаток от деления числителя формул
MOV B, 52h ; (4) или (6) делится на новый делитель.
MOV 41h, B ; Остаток от деления на новый делитель.
MOV B, #3h ; Умножение целой части от деления на
MOV 57h, A ; В результате получены десятые доли
; деление старшего байта произведения.
MOV A, 41h ; Умножение остатка от деления на новый
MOV B, 52h ; Результат этого умножения снова делится
DIV AB ; на новый делитель и целая часть этого
ADD A, 57h ; деления складывается с десятыми долями
MOV 57h, A ; деления старшего байта произведения.
MOV 42h, B ; Остаток последнего деления фиксируется.
SJMP VPERED ; Переход к нахождения сотых долей.
D_0: MOV A, 55h ; Если целая часть от деления делителя на
MOV B, #0Ah ; 10 равна нулю, то остаток от деления
MUL AB ; числителя формул (4) или (6) умножается
MOV B, 53h ; на 10 и делится на значение скорости.
MOV 56h, 53h ; Делитель не меняется(значение скорости).
MOV 57h, A ; В результате получены десятые доли
; деления старшего байта произведения.
MOV 42h, B ; Остаток последнего деления фиксируется.
SJMP VPERED ; Переход к нахождения сотых долей.
DALEE: MOV A, #5h ; Остаток от деления делителя на 10
CJNE A, 57h, RAZD2 ; равен 0, 1 или 9. В случае если остаток
RAZD2: JC DEL3 ; равен 9, то целая часть от деления
SJMP RETURN1 ; увеличивается на 1. В противном случае
RETURN1: MOV A, 55h ; Остаток от деления числителя формул
MOV B, 56h ; (4) или (6) делится на новый делитель.
MOV 57h, A ; В результате получены десятые доли
; деления старшего байта произведения.
MOV 42h, B ; Остаток последнего деления фиксируется.
VPERED: MOV A, #0Ah ; Для нахождения сотых долей деления
MOV B, 42h ; старшего байта произведения, остаток
MUL AB ; предыдущего деления умножается на 10.
MOV A, #0h ; Если данное произведение выходит за
CJNE A, B, OSH ; рамки одного байта, то в целях
OSH: JC OSH1 ; уменьшения погрешности конечного
MOV 58h, #0h ; результата, этот факт учитывается как
DALSE: MOV A, 42h ; Полученное произведение делится на
ADD A, 58h ; Учет 5 сотых (если они есть).
MOV 58h, A ; В результате получены сотые доли
; деления старшего байта произведения.
MOV A, #0Ah ; Для нахождения тысячных долей деления
MUL AB ; старшего байта произведения, остаток
MOV 42h, A ; от деления снова умножается на 10.
CJNE A, B, OSH2 ; Аналогичный способ уменьшения
OSH2: JC OSH4 ; погрешности в результате.
DALSE2: MOV A, 42h ; Полученное произведение делится на
ADD A, 59h ; Учет 5 тысячных (если они есть).
MOV 59h, A ; В результате получены тысячные доли
; деления старшего байта произведения.
MOV A, 54h ; Умножение полученного частного от
; деления старшего байта произведения
MOV B, #0FFh ; на 256 (т.к. старший байт).
MUL AB ; Сначала умножается, целая часть от
ADD A, 54h ; деления старшего байта произведения.
NPER: MOV 60h, B ; Старший байт конечного результата.
MOV 61h, A ; Младший байт конечного результата.
MOV A, 57h ; Умножаются десятые доли на 25,6 и
MOV B, #19h ; результат суммируется с младшим байтом
MOV A, #4h ; Округление результата. Если остаток
CJNE A, B, OKR1 ; больше 4, то значение увеличивается на 1.
DALEE1: MOV A, 58h ; Умножаются сотые доли на 2,6 и
MOV B, #2h ; результат суммируется с младшим
MUL AB ; байтом конечного результата.
MOV A, #4h ; Округление результата.
DALEE2: MOV A, 59h ; Умножаются тысячные доли на 0,2 и
MOV B, #3h ; результат суммируется с младшим
MUL AB ; байтом конечного результата.
MOV A, #4h ; Округление результата.
DALE: MOV A, 50h ; Деление младшего байта произведения
MOV B, 53h ; на значение скорости или на 100.
ADD A, 61h ; Результат суммируется с младшим
NPER2: MOV 61h, A ; Для уменьшения погрешности
MOV A, B ; конечного результата остаток от
MOV B, #2h ; деления младшего байта участвует
; Преобразование в десятичную форму записи
DALEE3: MOV A, 61h ; Разбиваем наше 16-разрядное значение
MOV 42h, A ; Младшее 4-разрядное значение.
MOV 41h, A ; Среднее 4-разрядное значение.
MOV 40h, 60h ; Старшее 4-разрядное значение.
MOV A, 41h ; Среднее 4-разрядное значение
MOV B, #0Ah ; Затем делится на 10. Целая часть - число
DIV AB ; десятков, остаток - число единиц.
MOV A, 40h ; Старшее 4-разрядное значение
ADD A, 46h ; Результат складывается с числом единиц.
ADD A, 45h ; Целая часть от деления складывается с
MOV 46h, B ; Остаток - окончательное число единиц.
MOV A, 40h ; Старшее 4-разрядное значение
ADD A, 41h ; Результат складывается с числом десятков
MOV 45h, B ; Окончательное число десятков.
MOV A, 40h ; Старшее 4-разрядное значение
ADD A, 44h ; Результат складывается с числом сотен
MOV 44h, A ; Окончательное число сотен.
; Вывод результата на трехразрядный семисегментный индикатор
; Определение выводимых на индикатор цифр (т.е. двоичных комбинаций)
MOV R0, #60h ; Номер ячейки памяти с цифрой 0.
MOV A, 44h ; Число сотен записывается в аккумулятор
OPRED: MOV 5Ah, @R0 ; Текущая цифра.
JZ OPRED1 ; Если аккумулятор равен 0, то переход на
; следующий этап с сохранением текущей
DEC A ; Уменьшение числа сотен на 1.
INC R0 ; Изменение текущей цифры (следующая).
SJMP OPRED ; Переход в начало (метку OPRED).
OPRED1: MOV R0, #60h ; Номер ячейки памяти с цифрой 0.
MOV A, 45h ; Число десятков пишется в аккумулятор
JZ OPRED2 ; Если аккумулятор равен 0, то переход на
; следующий этап с сохранением текущей
; цифры, показывающей число десятков.
DEC A ; Уменьшение числа десятков на 1.
INC R0 ; Изменение текущей цифры (следующая).
SJMP OPR ; Переход в начало (метку OPR).
OPRED2: MOV R0, #60h ; Номер ячейки памяти с цифрой 0.
MOV A, 46h ; Число единиц пишется в аккумулятор.
OPR1: MOV 5Ch, @R0 ; Текущая цифра.
JZ INDIC ; Если аккумулятор равен 0, то переход на
; следующий этап с сохранением текущей
; цифры, показывающей число единиц.
DEC A ; Уменьшение числа единиц на 1.
INC R0 ; Изменение текущей цифры (следующая).
SJMP OPR1 ; Переход в начало (метку OPR1).
INDIC: MOV R0, #5Ah ; Номер ячейки памяти с нужной цифрой.
MOV R1, #0h ; Значение регистра 1 необходимое для
; перехода к нужной метке c выводом.
MOV R2, #32h ; Число повторений вывода на индикаторы
MOV R3, #1h ; Значение регистра необходимое для
SELECTOR: MOV A, R3 ; Если R3 равен 0, то переход к метке
MOV B, R1 ; Если R1 равен 0, то переход к выводу
MOV A, B ; третьего разряда (числа сотен).
DEC B ; Если R1 равен 1, то переход к выводу
MOV A, B ; второго разряда (числа десятков).
DEC B ; Если R1 равен 2, то переход к выводу
MOV A, B ; первого разряда (числа единиц).
DEC B ; Если R1 равен 3, то переход к метке
ST: JMP START ; Переход к метке START.
VUVOD_1: MOV P2, @R0 ; Передача цифры на порт 2 (число сотен).
SETB P0.4 ; Разрешение работы дешифратора.
CLR P0.2 ; Вывод на первый индикатор.
SETB P0.3 ; Строб записи в регистр.
INC R0 ; Переход к следующей нужной цифре.
INC R1 ; Увеличение регистра перехода к
MOV TH1, #0F8h ; Задается значение таймера для задержки
VUVOD_2: MOV P2, @R0 ; Вывод на второй индикатор числа
INC R0 ; Переход к следующей нужной цифре.
INC R1 ; Увеличение регистра перехода к
MOV TH1, #0F8h ; Задается значение таймера для задержки
VUVOD_3: MOV P2, @R0 ; Вывод на третий индикатор числа
INC R1 ; Увеличение регистра перехода к
MOV TH1, #0F8h ; Задается значение таймера для задержки
BIG_ZADERG: DEC R2 ; Уменьшение числа повторений вывода
MOV A, #0h ; Проверка числа повторений на
D1: MOV R0, #5Ah ; Возврат регистра 0 к первоначальному
MOV R1, #0h ; Возврат регистра 1 к первоначальному
JC D2 ; Если число повторений не равно 0, то
JNC D3 ; вывод на индикатор повторяется.
D2: MOV TH1, #0FFh ; бесконечный цикл и ожидание
MOV TL1, #0FFh ; прерывания (все повторяется заново).
4 . Разработка принципиальной электрической схемы
Базовым элементом схемы является микроконтроллер. Выберем его исходя из следующих параметров: четыре двунаправленных побитно настраиваемых восьмиразрядных порта ввода-вывода, наличие таймеров/счетчиков, возможность перепрограммирования ПЗУ. Данным требованиям удовлетворяет микроконтроллер АТ89C51 фирмы Atmel. Его основные параметры:
Для преобразования аналоговых сигналов, несущих информацию о скорости и расходе топлива, используются АЦП. Воспользуемся АЦП AD7819 фирмы Analog Devices. AD7819 является быстродействующим, микропроцессорно-совместимым, 8-ми разрядным АЦП с максимальной производительностью 200 К выборок/с. Преобразователь питается от однополярного источника с напряжением от 2.7 В до 5.5 В и содержит АЦП последовательного приближения с временем преобразования 4.5 мкс, встроенную систему выборки/хранения, встроенный тактовый генератор и 8-ми разрядный параллельный интерфейс. Параллельный интерфейс предназначен для удобства согласования с микропроцессорами. АЦП выпускается в малогабаритном, пластиковом корпусе типа 16-lead DIP (ширина 0.3 дюйма), а также в корпусах 16-lead SOIC и 16-lead TSSOP.
На рисунке 3 приведена временная диаграмма работы АЦП, согласно которой на АЦП подаются сигналы начала преобразования (), разрешения работы () и чтения () от микроконтроллера, а затем принимаются данные обработки.
Рисунок 3 - Временная диаграмма работы АЦП
Все эти сигналы были реализованы при разработке программы.
В качестве регистра для передачи данных к индикаторам используем регистр К555ИР27, его параметры:
Для активации встроенного тактового генератора микроконтроллера к его выводам BQ1 и BQ2 подключим кварцевый резонатор РК169МА с тактовой частотой 12 мГц.
В качестве дешифратора используем схему К155ИД4 со следующими па-метрами:
В качестве семисегментных индикаторов используются индикаторы красного цвета АЛС333Б с общим анодом, ток сегмента которых 20 мА, а падение напряжения на сегменте 2В. Высота знака индикатора 11 мм.
Транзисторы для реализации ключей в схеме выбираются так, чтобы ток коллектора транзистора превосходил ток свечения семи сегментов индикатора ( I к 140 мА). Так как схема включения используемого индикатора - с общим анодом, и активным является низкий уровень сигнала, то должен использоваться p-n-p транзистор. Исходя из этих условий используются транзисторы KT502А.
Номиналы конденсаторов в цепи питания АЦП указаны в документации производителем (емкости С1 и С2 по 10 мкФ, емкости С3 и С4 по 0,1 мкФ).
Для снижения помех источника питания используем электролитический конденсатор K53-18-32В ёмкостью 47 мкФ (конденсаторы С7,С8 и С9).
Для данного микроконтроллера автоматический сброс при включении питания U CC может быть реализован подключением входа RST к U CC через конденсатор С12 емкостью 10 мкФ и к шине 0 В через резистор 8,2 кОм.
В качестве конденсаторов C10 и С11 выберем керамические K10-17а-М47 емкостью 30пФ, в качестве блокировочных С5, С6, С13-С15 подойдут также керамические, но другой группы ТКЕ K10-17а-H90 емкостью 0.1 мкФ.
Так как по заданию входное напряжения 10 В, а входное напряжение АЦП может достигать только 5В, поэтому на входе АЦП устанавливается резистивный делитель, уменьшающий входное напряжение вдвое. Для этой цели используются два одинаковых резистора сопротивлением 100 кОм. Номиналы резисторов выбираются из условия, что они должны быть много меньше входного сопротивления АЦП, которое составляет 10 МОм.
Сопротивления R6 - R13 рассчитываются следующим образом. Так как напряжение насыщения коллектор-эмиттер транзистора равно 0,5 В, а падение напряжения на светодиоде - 2 В, падение напряжения на всей цепи 5В и ток светодиода равен 20 мА, то
Таким образом, номиналы сопротивлений R6 - R13 имеют стандартное значение 120 Ом.
Расчет сопротивлений в цепи транзисторного ключа представлен ниже.
Так как ток коллектора должен составлять 140 мА для нормального свечения сегментов индикатора, то с учетом транзистора равного 69 имеем ток базы
В случае если U вх =U 0 (напряжение низкого уровня - 0,4 В) транзисторный ключ открыт (U бэ =U R 2 =0,7 В). Тогда напряжение на R1
U R 1 =5 - U бэ - U 0 =5 - 0,7 - 0,4=3,9 В, (1)
В случае если U вх =U 1 (напряжение высокого уровня - 4,5 В) транзисторный ключ закрыт (U бэ =U R 2 < 0,4 В), и ток через него не протекает. В этом случае должно выполняться условие
Чтобы найти R1 и R2, необходимо совместно рассмотреть условия (1), (2) и (3), из которых можно получить два условия: (4) подставлением (1) в (2) и (3):
Из условий (3) и (4) получены номиналы сопротивлений R1 и R2, равные 1,8 кОм и 6,8 кОм соответственно.
Номиналы сопротивлений R14, R16, R18 равны 1,8 кОм, а сопротивлений R15, R17, R19 6,8 КОм.
В результате курсового проектирования были выполнены все поставленные в техническом задании требования к устройству. Спроектированный на базе 8-разрядного микроконтроллера измеритель расхода топлива, используя оцифрованные аналого-цифровыми преобразователями сигналы, обрабатывает их и выводит результат на семисегментные индикаторы. Причем данные на индикаторах быстро обновляются, что позволяет непрерывно следить за всей динамикой изменения расхода топлива.
На языке ассемблер написана программа, описывающая весь алгоритм работы устройства, и разработана принципиальная электрическая схема измерителя. Структура программы позволили не использовать никаких дополнительных дешифраторов в схеме для вывода данных на индикаторы.
1. Бродин В. Б., Шагурин М. И. Микроконтроллеры: архитектура, программ-мирование, интерфейс. - М.: ЭКОМ,1999.-398 c.
2. Домрачев В. Г., Иванов С. Н., Романов А.Ф. Одноплатные микроЭВМ. - М.: Энергоатомиздат,1988.-128 с.
3. Партала О.Н. Цифровая электроника: СПб.: Наука и техника, 2000. - 208с.
4. Федорков Б.Г., Телец В.А. Микросхемы ЦАП и АЦП: функционирование, параметры, применение.-М.: Энергоатомиздат,1990.-319 с.
Функции, выполняемые системой цифрового измерителя времени. Выбор соотношения между аппаратной и программной частями. Разработка функциональной и принципиальной схемы системы. Описание работы системы цифрового измерителя времени по принципиальной схеме. курсовая работа [46,1 K], добавлен 25.06.2010
Разработка малогабаритного автомобильного термометра на базе микроконтроллера и требования к нему. Проектирование функциональной схемы, работа измерителя. Выбор элементной базы. Схема включения усилителя. Архитектура и элементы микроконтроллера. контрольная работа [841,4 K], добавлен 22.05.2015
Сравнительный анализ существующих решений и разработка функциональной схемы устройства. Выбор и обоснование технологических элементов, а также их статический расчет. Анализ принципиальной схемы проектируемого цифрового измерителя, функции компонентов. курсовая работа [966,6 K], добавлен 16.09.2017
Основные структуры, характеристики и методы контроля интегральных микросхем АЦП. Разработка структурной схемы аналого-цифрового преобразователя. Описание схемы электрической принципиальной. Расчет надежности, быстродействия и потребляемой мощности. курсовая работа [261,8 K], добавлен 09.02.2012
Методы измерения тока и напряжения. Проектирование цифрового измерителя мощности постоянного тока. Выбор элементной базы устройства согласно схеме электрической принципиальной, способа установки элементов. Расчет экономической эффективности устройства. курсовая работа [1,1 M], добавлен 21.07.2011
Разработка микропроцессорной системы для контроля и индикации параметров изменяющегося по случайному закону 8-ми разрядного двоичного кода. Проектирование принципиальной схемы микроконтроллера, описание работы схемы. Разработка блок-схемы программы. курсовая работа [752,4 K], добавлен 10.01.2013
Сведения о построение математической модели. Описание тягово-динамических процессов, шагового двигателя, разработка схемы управления. Втягивание и выдвижение штока. Переключение между режимами, формирование управляющих сигналов. Экономия расхода топлива. курсовая работа [2,7 M], добавлен 13.07.2010
Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д. PPT, PPTX и PDF-файлы представлены только в архивах. Рекомендуем скачать работу .

© 2000 — 2021



Измеритель расхода топлива курсовая работа. Коммуникации, связь, цифровые приборы и радиоэлектроника.
Контрольная работа по теме Проблема детской дезадаптации в социуме
Отчет по практике: Технический отчет по практике в строительной организации
Структурно Механические Свойства Дисперсных Систем Реферат
Дипломная Работа На Тему Психолого–Педагогические Основы Эффективности Гражданского Воспитания Детей Дошкольного Возраста В Условиях Детского Сада
Баскетбол Техника Бросков Двумя Руками Реферат
Контрольная работа по теме Понятие, юридические свойства и виды информации
Война Сочинение 6 Класс
Курсовая работа по теме Оппозиционная мысль в России в 50-60–е годы XVIII века
Реферат: Методы поиска и исследований в преподавании физики
Сочинение На Тему Гнев Твой Враг
Сенсорное Развитие Детей Дошкольного Возраста Реферат
Курсовая работа: История развития экономической мысли. Скачать бесплатно и без регистрации
Реферат по теме История уфимского моторостроительного объединения
Сочинение Описание Животного 3 Класс Презентация
Реферат: Сущность, функции и роль денег в экономике
Реферат На Тему Антуан Де Сент-Экзюпери. Вечный Полет Мысли
Социальные Нормы Понятие И Система Курсовая Работа
Контрольная работа: Виды наказаний по уголовному кодексу РФ
Реферат: Направление реформирования образования в России
Менің Қаладағы Пәтерім Атты Эссе Жаз
Анализ экономической деятельности ОАО "Сельстранс" - Бухгалтерский учет и аудит дипломная работа
Регулирование учета кредитов и займов - Бухгалтерский учет и аудит курсовая работа
Янтарная комната - История и исторические личности реферат


Report Page