4.3. БЛОК-СХЕМЫ АЛГОРИТМОВ
Блок-схемы алгоритмов представлены на рис.4.1.а и 4.1.б.
4.4. ТЕКСТ ПРОГРАММЫ НА ЯЗЫКЕ ”АССЕМБЛЕР ”
Описание переменных, используемых в программе, приведено в таблице 4.3.
Таблица 4.3
КОП |
Операнд |
Комментарий |
||
EQU |
0021h |
Буфер первой линейки светодиодов |
||
EQU |
0020h |
Буфер второй линейки светодиодов |
||
EQU |
0028h |
Буфер дисплея |
||
EQU |
0045h |
Число фильер |
||
EQU |
0046h |
Последнее значение таймера |
||
EQU |
0047h |
Флаги состояния |
||
EQU |
004Ah |
Сумматор |
||
EQU |
0050h |
Счетчик намоточного ус-ва |
||
EQU |
0056h |
Счетчик сматывающего ус-ва 1 |
||
EQU |
005Ch |
Счетчик сматывающего ус-ва 2 |
||
EQU |
0062h |
Буфер TOT для передачи сообщения |
||
EQU |
0068h |
Заданное значение счетчика намоточного ус-ва |
||
EQU |
006Eh |
Заданное значение счетчика сматывающего ус-ва 1 |
||
EQU |
0074h |
Заданное значение счетчика сматывающего ус-ва 2 |
||
EQU |
007Ah |
Буфер для передачи сообщений |
||
000Eh |
Код “B0” |
|||
EQU |
000Dh |
Код “стрелки” |
||
EQU |
000Bh |
Код ввода |
||
EQU |
000Сh |
Код F |
||
EQU |
000Ah |
Код сброса |
||
EQU |
0000h |
|||
EQU |
004Fh |
|||
EQU |
000Fh |
|||
EQU |
00FCh |
|||
EQU |
0070h |
Продолжение таблицы 4.3 |
||
EQU |
0008h |
Установка первой попытки |
||
EQU |
00F7h |
Снятие первой попытки |
||
EQU |
00F1h |
|||
EQU |
0021h |
Максимальное число фильер |
||
EQU |
0002h |
Установка флага сброса |
||
EQU |
00FCh |
Сброс флага сброса |
||
EQU |
000Dh |
|||
EQU |
00EFh |
Начальная установка Р1 |
||
EQU |
00F0h |
Начальная установка Р2 |
||
Фоновая программа
ORG |
800H |
||
BEG_INIT |
MOV |
R6,#7FH |
|
CALL |
DELAY 2 |
||
MOV |
R0,#03H |
Программирование |
|
MOV |
A,#98H |
PP1 BB55A |
|
MOVX |
@R0,A |
||
ANL |
P2,#0FH |
Вкл. EXRAM и его 0-ой страницы |
|
MOV |
R5,#39 |
Обнуление 39-и ячеек внешней |
|
MOV |
R1,#WR_S_SEK+1 |
памяти, начиная с МАХ адреса |
|
CALL |
XMO |
(WR_S_SEK+1)=5EH |
|
MOV |
R0,#TIM_PR1 |
||
MOV |
@R0,A |
||
INC |
R0 |
||
MOV |
@R0,A |
||
MOV |
R0,#01DH |
Начал. Значение R5 RB1 |
|
MOV |
A,#PROH |
||
MOV |
@R0,A |
||
CLR |
A |
||
MOV |
R0,#1EH |
Начал. Значение R6 RB1 |
|
MOV |
@R0,A |
||
MOV |
R0,#1BH |
Начал. Значение R3 RB1 |
|
MOV |
@R0,A |
||
DEC |
R0 |
||
INC |
A |
Начал. Значение R2 RB1 |
|
MOV |
@R0,A |
||
MOV |
A,#TIM |
||
MOV |
T,A |
||
SOST_0 |
MOV |
R3,#1_BEG |
|
CALL |
IND |
||
MOV |
A,#0BFH |
||
CALL |
COPY |
||
MOV |
R0,#BUF_DISP+6 |
||
MOV |
A,#0FFH |
||
CALL |
COPY1 |
||
CALL |
COPY1 |
||
EN |
TCNTI |
||
STRT |
T |
||
C_KEY |
CALL |
KEY |
|
JB0 |
PROG |
||
JB3 |
X_AUTO |
||
JB2 |
X_HAND |
||
JMP |
X_KEY |
||
X_AUTO |
JMP |
AUTO |
|
X_HAND |
JMP |
HAND |
|
EJECT |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.