Основы числового программного управления. Хитров А.И - 14 стр.

UptoLike

Составители: 

14
Пусть необходимо реализовать логические функции:
__
Y0 = X1 + X2·X5; Y1 = X3·X7.
При этом в байтовом регистре Х внутреннего ОЗУ микроконтроллера
находятся текущие значения 8 битовых входных переменных, считанные
процессором из порта ввода Х.
Необходимо вычислить значения битовых управляющих воздействий Y1, Y0
и записать результаты в байтовый регистр Y.
Алгоритм реализации логического управления координатой Y0:
Будем считать, что
модули вычисления Y0 и Y1 оформлены в виде
подпрограмм, которые вызываются командами
CАLL CALC_Y0
CАLL CALC_Y1
Для реализации представленного алгоритма можно использовать работу
битового процессора (если такой имеется) или специальные команды анализа
битов.
Ниже приведена программа для микроконтроллера INTEL MCS – 196 [1,2].
Y0
X1 - ?
X2 - ?
Х5 - ?
Выхо
д
Y0 = 1 Y0 = 0
0
0
да
нет
Начало Y0
X1=1
X2=0
Х5=0
Коне
ц
Y0
Y0 = 1 Y0 = 0
     Пусть необходимо реализовать логические функции:
                                                  __
                     Y0 = X1 + X2·X5;     Y1 = X3·X7.
При этом в байтовом регистре Х внутреннего ОЗУ микроконтроллера
находятся текущие значения 8 битовых входных переменных, считанные
процессором из порта ввода Х.
Необходимо вычислить значения битовых управляющих воздействий Y1, Y0
и записать результаты в байтовый регистр Y.
Алгоритм реализации логического управления координатой Y0:



                            Начало
                              Y0 Y0


                       да
                             X1
                             X1=1
                                -?


                                 нет

                             X2
                             X2=0
                                -?         0




                             Х5
                             Х5=0
                                -?         0




                             Y0 = 1                 Y0 = 0




                            Конец
                             ВыходY0
Будем считать, что модули вычисления Y0 и Y1 оформлены в виде
подпрограмм, которые вызываются командами
                             CАLL CALC_Y0
                             CАLL CALC_Y1
Для реализации представленного алгоритма можно использовать работу
битового процессора (если такой имеется) или специальные команды анализа
битов.
Ниже приведена программа для микроконтроллера INTEL MCS – 196 [1,2].

                                      14