Вход

курсовой проект в текстовом виде по заданию в учебном пособии. Курсовой проект состоит из 30 тем (стр. 145-147). Номер варианта выбирается по общим правилам.

Рекомендуемая категория для самостоятельной подготовки:
Курсовая работа*
Код 133877
Дата создания 2008
Страниц 23
Источников 7
Мы сможем обработать ваш заказ (!) 19 апреля в 12:00 [мск]
Файлы будут доступны для скачивания только после обработки заказа.
1 580руб.
КУПИТЬ

Содержание

Содержание
Содержание
1 Введение
2 Конкретизация технического задания
3 Разработка функциональной схемы
4 Разработка схемы алгоритма прикладной программы
5 Разработка принципиальной схемы
5.1 Схема на микроконтроллере с внешней памятью команд
5.2Схема на микроконтроллере с резидентной программной памятью
6Разработка управляющей программы
7Заключение
Список использованных источников
Приложение А. Листинг управляющей программы
Приложение Б. Схема электрическая принципиальная……………………….24
Приложение В. Схема электрическая принципиальная………………………26

Фрагмент работы для ознакомления

lst
org 0h;
MOV TMOD, #00010001B ;установка Т0, Т1 в программный режим запуска, режим тамеров 1
MAIN: JNB P0.0, MAIN ;если сигнал от датчика ВМТ не пришел ожидаем его
;если сигнал пришел продолжаем программу
JB TR0, RESULT ;если счетчик Т0 уже запущен переходим на RESULT
;если нет, то продолжаем программу;
SETB TR0 ;запускаем счетчик T0
JNB P0.1,$ ;если сигнал от датчика замыкания контактов не пришел ждем его
;если пришел продолжаем программу
SETB TR1; ;запускаем счетчик T1
JNB P0.2,$ ;если сигнал от датчика детонации не пришел ждем его
;если пришел продолжаем программу
CLR TR1 ;останавливаем счетчик Т1
MOV 20H, TH1 ;записываем старший байт значения таймера в ОЗУ
MOV 21H, TL1 ;записываем младший байт значения таймера в ОЗУ
;в ячейках ОЗУ записано время от замыкания контактов до образования искры
SETB TR1 ;запуск счетчика Т1
SJMP MAIN ;переход на метку MAIN
RESULT: CLR TR1 ;останавливаем стчетчик Т1
CLR TR0 ;останавливаем стчетчик Т0
MOV 22H, TH1 ;записываем старший байт значения таймера в ОЗУ
MOV 23H, TL1 ;записываем младший байт значения таймера в ОЗУ
MOV 24H, TH0 ;записываем старший байт значения таймера в ОЗУ
MOV 25H, TL0 ;записываем младший байт значения таймера в ОЗУ
;производим вычисления углов
LCALL VICHISL ;вызываем подпрограмму вычисления углов
;в 18h, 19h - находится значение угла ЗКП в двоичном виде
;в 19h, 20h - находится значение угла ОЗ в двоичном виде
LCALL PREOBR_2_10 ;преобразуем полученные значения в 2-10 код
;в 21h - находится значение угла ЗКП в 2-10 виде
;в 23h - находится значение угла ОЗ в 2-10 виде
CLR P1.4 ;гасим вторую пару индикаторов
MOV P2, 21h;
SETB P1.3 ;зажигаем первую пару
CLR P1.3 ;гасим первую пару индикаторов
MOV P2, 23h;
SETB P1.4 ;зажигаем вторую пару

SJMP MAIN ;
VICHISL: ;вычисляем угол замыкания контактов прерывателя
MOV R4, 21h ;младший байт временного интервала
MOV R5, 20h ;старший байт временного интервала
LCALL MULL_360 ;вызываем подпрограмму уможения на 360
;в R0 находиться первый разряд произведения
;в R1 находиться второй разряд произведения
;в R2 находиться третий разряд произведения
MOV R3, 24h ;младший байт делителя
MOV R4, 25h ;старший байт делителя
LCALL DIV_3r_2r ;вызываем подпрограмму деления
;в R5 находиться младший разряд частного
;в R6 находиться старший разряд частного
MOV 18h, r5 ;
MOV 19h, r6 ;сохранили вычисленное значение угла ЗКП
MOV R4, 22h ;младший байт временного интервала
MOV R5, 23h ;старший байт временного интервала
LCALL MULL_360 ;вызываем подпрограмму уможения на 360
;в R0 находиться первый разряд произведения
;в R1 находиться второй разряд произведения
;в R2 находиться третий разряд произведения
MOV R3, 24h ;младший байт делителя
MOV R4, 25h ;старший байт делителя
LCALL DIV_3r_2r ;вызываем подпрограмму деления
;в R5 находиться младший разряд частного
;в R6 находиться старший разряд частного
MOV 19h, r5 ;
MOV 20h, r6 ;сохранили вычисленное значение угла ОЗ
RET; ;возвращвемся из подпрограммы

MULL_360:
mov r6, #68h ;константа 360
mov r7, #01h ;
mov 34h, #9h ;количество разрядов в 360
mov 33h, #00h ;
mov 32h, #00h ;
mov 31h, r5 ;
mov 30h, r4 ;
begin_MULL_360:
mov a, r7 ;
rrc a ;
mov r7, a ;
mov a, r6 ;
rrc a ;
mov r6,a ; сдвинули множитель на 1 разряд вправо.
jnb psw.7, nosum ;если в очедном бите множителя 0 то переходим по ссылке
;иначе продолжаем
clr c ;
mov a, r0 ;
add a, 30h ;
mov 30h, a ;
mov a, 31h ;
addc a, r5 ;
mov 31h, a ;
mov a, 32h ;
addc a, 32h ;
mov 32h, a ;
mov a, 33h ;
addc a, 33h ;
mov 33, a ;суммирование промежуточного результата с множителем

nosum:
clr c ;
mov a, 30h ;
rlc a ;
mov 30h, a ;
mov a, 31h ;
rlc a ;
mov 31h, a ;
mov a, 32h ;
rlc a ;
mov 32h, a ;
mov a, 33h ;
rlc a ;
mov 33h,a ;
clr c ;
;сдвинули множимое на 1 разряд влево
dec 34h ;
mov a,34h ;
jnz begin_MULL_360 ;
MOV R0, 30h ;
MOV r1, 31h ;
MOV r2, 32h ;
RET ;
DIV_3r_2r:
mov 08h, #00h ; временное хранилище числителя
mov 09h, #00h ; временное хранилище числителя
mov 10h, #00h ; временное хранилище числителя
mov r7, #00h ; регистр флагов переносов
;---------------нормализуем делитель
clr c ;
mov a, r3 ;
rlc a ;
mov r3, a ;
mov a, r4 ;
rlc a ;
mov r4, a ;
jnc begin_DIV_3r_2r ;
mov a, r4 ;
rrc a ;
mov r4, a ;
mov a, r3 ;
rrc a ;
mov r3, a ;
clr c ;
;---------------нормализовали
begin_DIV_3r_2r:
;---------------из 2-го разряда числителя вычитаем
;---------------младший разряд знаменателя
mov a, r1 ;
subb a, r3 ;
mov 09h, a ;
;---------------при вычитании учтен заем из старшего
;---------------разряда - С = 1
;---------------из 3-го разряда числителя вычитаем
;---------------старший разряд знаменателя
mov a, r2 ;
subb a, r4 ;
mov 10h, a ;
;---------------при вычитании учтен заем из старшего
;---------------разряда - С = 1
mov b.0, c ; сохранили состояние флага перенона при вычитании С0
jnc l1 ; если вычитание дало положительный результат (С0=0)
jnb b.1, l2 ;если сдвиг был с переносом 0
l1:
clr c ;
mov r1, 09h ;
clr c ;
mov r2, 10h ;
clr c ;
mov a, R0 ;
rlc a ;
mov R0, a ;
mov a, r1 ;
rlc a ;
mov r1, a ;
mov a, r2 ;
rlc a ;
mov r2, a ;
mov b.1, c ;сохранили состояние флага перенона при сдвиге С1
clr c ;
mov a, r5 ;
rlc a ;
mov r5, a ;
mov a, r6 ;
rlc a ;
mov r6, a ;
mov b.2,c ;флаг окончания работы
inc r5 ;
jb b.2, e_1 ;если С2 = 1
sjmp begin_DIV_3r_2r ;
l2:
clr c ;
mov a, R0 ;
rlc a ;
mov R0, a ;
mov a, r1 ;
rlc a ;
mov r1, a ;
mov a, r2 ;
rlc a ;
mov r2, a ;
mov b.1, c ;сохранили состояние флага перенона при сдвиге С1
clr c ;
mov a, r5 ;
rlc a ;
mov r5, a ;
mov a, r6 ;
rlc a ;
mov r6, a ;
mov b.2,c ;флаг окончания работы
jb b.2, e_1 ;если С2 = 1
sjmp begin_DIV_3r_2r ;
e_1:
RET;
PREOBR_2_10:
MOV R0, 18h ;
MOV R1, 19h ;
MOV R2, 19h ;
MOV R3, 20h ;
MOV 21h, #00h ;
MOV 22h, #00h ;
MOV 23h, #00h ;
MOV 24h, #00h ;
M1: XCH A, 21h ;
ADD A, #1H ;
DA A ;
XCH A, 21h ;
CLR A ;
ADDC A, 22h ;
DA A ;
XCH A, 22h ;

XCH A, 18h ;
CLR C ;
SUBB A, #1h ;
XCH A, 18h ;
XCH A, 19h ;
SUBB A, #0h ;
MOV 19h, A ;
ORL A, 18h ;
JNZ M1 ;
M2: XCH A, 23h ;
ADD A, #1H ;
DA A ;
XCH A, 23h ;
CLR A ;
ADDC A, 24h ;
DA A ;
XCH A, 24h ;

XCH A, 19h ;
CLR C ;
SUBB A, #1h ;
XCH A, 19h ;
XCH A, 20h ;
SUBB A, #0h ;
MOV 20h, A ;
ORL A, 19h ;
JNZ M2 ;
ret; ;
end;
2

Список литературы [ всего 7]

Список использованных источников
1.http://vsystem.by.ru - вычислительные системы, проектирование вычис-лительных систем
2.http://car-exotic.com – сайт об автомобилях российских и иностранных автозаводов
3.http://khpi-iip.mipk.kharkiv.edu – арифметические операции.
4.Шарапов А.В. «Цифровые и микропроцессорные устройства: Учебное пособие» ? Томск: Томский межвузовский центр дистанционного обра-зования, 2003. ? 166 с.
5.Шарапов А.В. «Микропроцессорные устройства и системы: Учебное методическое пособие» ? Томск: Томский межвузовский центр дистан-ционного образования, 2000. ? 23 с
6.Фрунзе А.В. «Микроконтроллеры? Это же просто! Т.1 – М.: ООО «ИД СКИМЕН», 2002, - 336 с. илл.
7.Тарабрин Б.В., Лунин Ю.Н., Смирнов Ю.Н. и др. «Интегральные мик-росхемы: справочник» - М.: Радио и связь, 1983. – 528 с. илл.
Очень похожие работы
Пожалуйста, внимательно изучайте содержание и фрагменты работы. Деньги за приобретённые готовые работы по причине несоответствия данной работы вашим требованиям или её уникальности не возвращаются.
* Категория работы носит оценочный характер в соответствии с качественными и количественными параметрами предоставляемого материала. Данный материал ни целиком, ни любая из его частей не является готовым научным трудом, выпускной квалификационной работой, научным докладом или иной работой, предусмотренной государственной системой научной аттестации или необходимой для прохождения промежуточной или итоговой аттестации. Данный материал представляет собой субъективный результат обработки, структурирования и форматирования собранной его автором информации и предназначен, прежде всего, для использования в качестве источника для самостоятельной подготовки работы указанной тематики.
bmt: 0.00463
© Рефератбанк, 2002 - 2024