Технические разделы

Разработка специального программного обеспечения

model

flat

,

stdcall

option casemap: none

\masm32\include\windows.inc\masm32\include\kernel32.inc\masm32\include\user32.inc; здесь объявление MessageBox\masm32\include\masm32.inc\masm32\include\debug.inc

\masm32\lib\kernel32.lib\masm32\lib\masm32.lib\masm32\lib\debug.lib\masm32\lib\user32.lib; здесь API-функция MessageBox

X

byte

0 ; 8-пиновый разъём 1

Y

byte

0 ; 8-пиновый разъём 2

Z

byte

0; 8-пиновый разъём 3

R

byte

1; кнопки брелка (сброс-1, охрана-2)

OutHandle

DWORD

0 ; дескриптор стандартного устройства вывода

InHandle

DWORD

0 ; дескриптор стандартного устройства ввода

BytesWritten

DWORD

? ; число выведенных байтов

BytesRead

DWORD

? ; число введённых байтов

InBuffer

BYTE

? ; однобайтовый буфер ввода

Mode

DWORD

? ; режим работы клавиатуры

M byte?byte «SBROS»byte «Protect»byte «ALARM»

DWORD

100

h

; частота звука в герцах (от 25

h

до 7

FFFh

)

dwDuration

DWORD

3

E

8

h

; продолжительность звука в миллисекундах (1

сек.

= 3E8h)

:

; - Определение дескрипторов -GetStdHandle, STD_OUTPUT_HANDLEOutHandle, eaxGetStdHandle, STD_INPUT_HANDLEInHandle, eax

; - Вывод на экран начального состония при запуске -

BEGIN:eax, 000C0027hSetConsoleCursorPosition, OutHandle, eax ; установка курсораWriteConsole, OutHandle, offset L, lengthof L, offset BytesWritten, 0Beep, 900h, 3E8h/6Beep, 24h, 3E8h/32Beep, 950h, 3E8h/6Beep, 24h, 3E8h/32Beep, 530h, 3E8h/6Beep, 24h, 3E8h/8

Beep, 100h, 3E8h/6Beep, 24h, 3E8h/32Beep, 200h, 3E8h/6Beep, 24h, 3E8h/32Beep, 400h, 3E8h/6Beep, 24h, 3E8h/32

;

- Управляющий алгоритм -

Opros

:

Call

ReadSensors

; - Вывод на экран слова «Сброс»-

; - Проверка нажата ли клавиша «О»-

cmp R, 1PROTECT

;-eax, 000C0027hSetConsoleCursorPosition, OutHandle, eax ; установка курсораWriteConsole, OutHandle, offset L, lengthof L, offset BytesWritten, 0X, 0Y, 0Z, 0Beep, 930h, 3E8h/6Beep, 24h, 3E8h/16Beep, 950h, 3E8h/6

Opros

; - Вывод на экран слова «

Protect

»-

PROTECT:eax, 000C0027hSetConsoleCursorPosition, OutHandle, eax ; установка курсораWriteConsole, OutHandle, offset D, lengthof D, offset BytesWritten, 0Beep, 130h, 3E8h/6Beep, 24h, 3E8h/32Beep, 150h, 3E8h/6Beep, 24h, 3E8h/32Beep, 70h, 3E8h/6

; invoke Beep, 24h, 3E8h/8

; invoke Beep, 250h, 3E8h/6

; invoke Beep, 24h, 3E8h/32

; invoke Beep, 300h, 3E8h/6

; invoke Beep, 24h, 3E8h/32

; invoke Beep, 200h, 3E8h/6

; invoke Beep, 24h, 3E8h/32

Перейти на страницу: 1 2 3

Еще статьи по технике и технологиям

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

Устройство измерения температуры окружающей среды, напряжения на выходах потенциометра, управление звуковым излучателем и часы
Первое, что привлекает внимание в PIC-контроллерах - это простота и эффективность. В основу концепции PIC, единую для всех выпускаемых семейств, была положена RISC-архитектура с системой простых однословных команд, примен ...

© 2020 | www.techexpose.ru