Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
|
Текст программы. list p=16с71 ;определение типа мкlist p=16с71;определение типа мк ; #include <p16c71.inc>;подключение файла p16с71.inc ;***** Объявление переменных **************************** STATUS EQU 03H;Регистр STATUS PORTB EQU 06H;Регистр порта В ADCON0 EQU 08H;Регистр управления АЦП ADRES EQU 09H;Регистр результата АЦП ;преобразования INTCON EQU 0BH;Регистр управления прерыва ;ниями OPTREG EQU 81H;Регистр OPTION TRISB EQU 86H;Регистр конфигурации порта В ADCON1 EQU 88H;Регистр конфигурации АЦП RP0 EQU 5H;Бит переключения страниц в ;регистре STATUS F EQU 0Ch;Флаг "F0" I EQU 0Dh;Счетчик TI EQU 10h;Задержка импульса TP EQU 11h;Задержка паузы D2 EQU 0Eh;Сигнал U1 D1 EQU 0Fh;Сигнал U2 ;**************** Рабочая секция ************************* ORG 0;Начальный адрес после сброса GOTO BEGIN;Переход на начало программы ORG 300;Начальный адрес программы ; (следующая команда будет расположена по адресу 100H) GOTO TEST;Используем для отладки ;Ввод и преобразование сигналов U1 и U2 BCF ADCON0,3;Установить входной канал AIN0 BSF ADCON0,2;Начать процесс преобразования ;сигнала U1 LOOP1 BTFSS ADCON0,2;Ждать окончания преобразова- ;ния сигнала U1 GOTO LOOP1 MOVF ADRES,0;Результат преобразования ;сигнала U1 записать в W MOVWF D1 BCF ADCON0,1;Сбросить флаг окончания пре- ;образования ADIFв регистре ;ADCON0 BSF ADCON0,3;Установить входной канал AIN1 LOOP2 BTFSS ADCON0,2;Ждать окончания преобразова- ;ния сигнала U2 GOTO LOOP2 MOVF ADRES,0;Результат преобразования ;сигнала U2 записать в W MOVWF D2 BCF ADCON0,1;Сбросить флаг окончания пре- ;образования ADIFв регистре ;ADCON0 GOTO COMPARE A2 BCF F,0;Установка флага F в "0" MOVLW 3H;Количество I MOVWF I M MOVLW 10H;Tи =10h MOVWF TI MOVLW 5H;Tп =5h MOVWF TP MOVF I,W ADDWF TI;Tи =Ти+I M1 BSF PORTB,0;Подаем "1" на выход DECFSZ TI,1;Декримент Ти на 1 GOTO M1 ADDWF TP;Tп =Тп+I M2 BCF PORTB,0;Подаем "0" на выход DECFSZ TP,1;Декримент Тп на 1 GOTO M2 DECFSZ I,1;Декримент I на 1 GOTO M GOTO TEST A1 BSF F,0;Установка флага F в "1" GOTO TEST
|