Билет 1
1. На порт ввода МПС поступают импульсы от тактового генератора амплитудой 5 В с частотой один герц. Предложить фрагмент принципиальной (функциональной) электрической схемы сопряжения МПС и генератора. Составить программу, накапливающую число секунд в двоично- десятичном коде в любых двух восьмиразрядных регистрах.
mov R1,#0
mov R2,#0
L1: jb P1.0,L1
L2: jnb P1.0,L2
inc R1
cjne R1,#10,L3
mov R1,#0
L3: inc R2
cjne R2,#10,L1
mov R2,#0
sjmp L1
2. Составить подпрограмму на Ассемблере, осуществляющую подсчет числа единичных битов в коде числа, хранящегося в ячейке памяти МПС. Определить механизм передачи параметров в подпрограмму, привести пример вызова разработанной подпрограммы.
SetBitCount: mov R0,#0
mov R1,#8
Next: rlc A
jnc L1
inc R0
L1: djnz R1, Next
ret
Пример вызова:
mov A,#56h ; загрузка в подпрограмму кода числа
acall SetBitCount ; вызов подпрограммы
3. Цифровой восьмиразрядный датчик (выходы типа “открытый коллектор”), измеряющий температуру, подключен к порту ввода МПС. Предложить фрагмент принципиальной (функциональной) электрической схемы сопряжения МПС и датчика. Составить программу, осуществляющую опрос датчика и подсчет числа отсчетов температуры, превыщающих минимальный уровень, заданный константой в памяти программ.
mov R1,#0 ;
Next: mov A, P1 ;
mov R2,A ;
mov A,#Minimun ;
clr c ;
subb A,R2 ;
jnc Next ;
inc R1 ;
sjmp Next ;