Поставки продукции Megawin по официальным каналам - микроконтроллеры, мосты USB-UART

Нужно немного изменить программу на asm для PIC микроконтроллера (PIC12F629)

Новичок
 
Регистрация: 20.03.2018
Сообщений: 1
Репутация: 11
1 0
0 0
 
20.03.2018 12:49 #1
Помогите пожалуйста, нужно немного изменить программу для этой схемы (код на сайте) http://kazus.ru/shemes/showpage/0/1532/1.html

Вот так будет выглядеть доработанная схема


Нужно написать код так, чтобы когда из комнаты вышел последний человек, низкий уровень сигнала на выходе GP0 появлялся не сразу, а спустя 5 секунд. И одновременно когда вышел последний человек, на выходе GP3 появлялось напряжение длительностью 5 сек, которое будет идти на цепь с динамиком.

Это будет работать так:
Когда люди входят и выходят схема работает так, как работала изначально без всяких звуковых сопровождений, но когда выходит последний человек и в комнате никого не остается, схема начинает пищать 5 секунд и после сразу выключает свет.

Вот код:

LIST P=12F629, F=INHX8M
include "P12F629.inc"
__CONFIG _CP_OFF&_CPD_OFF&_BODEN_OFF&_MCLRE_OFF&_PWRTE_ON&_ WDT_OFF&_INTRC_OSC_NOCLKOUT

CBLOCK 0X20
K ;Счетчик людей.
N ;Счетчик времени на проверку действительности пересечения луча.
L_SER
H_SER
Q_SER ;Переменные для выдержки паузы между сериями вспышек.
L_SER_SET
H_SER_SET
Q_SER_SET
L_OFF
H_OFF ;Переменные для выдержки паузы между отдельными вспышками.
L_OFF_SET
H_OFF_SET
L_ON
H_ON ;Переменные для выдержки паузы на длительность вспышки.
L_ON_SET
H_ON_SET
K_LD ;Для хранения кол-ва вошедших людей в ПП FLASH_LD.
K_ON ;Флаг "светодиод горит(1)/не горит(0)".
ENDC
ORG 0X2100
DE "Accoun- tant. Счетчик-выключатель. Юшин ВН 8-916 4534694 "

ORG 0X3FF
RETLW 0XB0

ORG 0x0000
GOTO INIT
INIT
BCF INTCON,7
BSF STATUS , RP0
CALL 0X3FF ;Настройка частоты внутр. такт. ген.
MOVWF OSCCAL
CLRF T1CON ;Вкл. внутр. такт. генератор.
BCF STATUS , RP0
CLRF GPIO
MOVLW 0x07 ;Компаратор выкл.
MOVWF CMCON
BSF STATUS , RP0
MOVLW 0x06 ;GP1 & GP2 на вход.
MOVWF TRISIO
BCF STATUS , RP0
BCF GPIO , 00
BCF GPIO , 03
BCF GPIO , 04
BCF GPIO , 05
MOVLW .255
MOVWF L_SER_SET
MOVWF L_SER
MOVLW .255
MOVWF H_SER_SET
MOVWF H_SER
MOVLW .4
MOVWF Q_SER_SET
MOVWF Q_SER

MOVLW .255
MOVWF L_OFF_SET
MOVWF L_OFF
MOVLW .100
MOVWF H_OFF_SET
MOVWF H_OFF

MOVLW .255
MOVWF L_ON_SET
MOVWF L_ON
MOVLW .10
MOVWF H_ON_SET
MOVWF H_ON


START
CLRF K
CLRF K_LD
CLRF K_ON
LABEL_1
CLRF N
CALL FLASH_LD
MOVLW 0X00
SUBWF K,0
BNZ LABEL_2
BCF GPIO,0 ;Реле выкл.
BCF GPIO,4 ;LD выкл.
LABEL_3
BTFSC GPIO,1 ;Проверка 1-го луча.
GOTO LABEL_1
INCFSZ N
GOTO LABEL_3
LABEL_4
BTFSS GPIO,1 ;Ожидание размыкания 1-го луча.
GOTO LABEL_4
LABEL_5
BTFSC GPIO,2 ;Проверка 2-го луча.
GOTO LABEL_1
INCFSZ N
GOTO LABEL_5
LABEL_6
BTFSS GPIO,2 ;Ожидание размыкания 2-го луча.
GOTO LABEL_6
LABEL_7
BTFSS GPIO,1
GOTO LABEL_3
INCFSZ N
GOTO LABEL_7
INCF K
BSF GPIO,0 ;Реле вкл.
GOTO LABEL_1

LABEL_2
BTFSC GPIO,2
GOTO LABEL_3
INCFSZ N
GOTO LABEL_2
LABEL_8
BTFSS GPIO,2 ;Ожидание размыкания 2-го луча.
GOTO LABEL_8
LABEL_9
BTFSC GPIO,1 ;Ожидание размыкания 1-го луча.
GOTO LABEL_1
INCFSZ N
GOTO LABEL_9
LABEL_10
BTFSS GPIO,1
GOTO LABEL_10
BTFSS GPIO,2
GOTO LABEL_2
DECF K ;Уменьшить кол-во людей.
GOTO LABEL_1

;ПП мигания светодиода. Кол-во миганий=кол-ву вошедших.
FLASH_LD
MOVFW K_LD ;Закончилось ли кол-во людей?
SUBLW .0
BNZ F_label_1
DECFSZ L_SER
RETURN
MOVFW L_SER_SET
MOVWF L_SER
DECFSZ H_SER
RETURN
MOVFW H_SER_SET
MOVWF H_SER
DECFSZ Q_SER
RETURN
MOVFW Q_SER_SET
MOVWF Q_SER
MOVFW K
MOVWF K_LD
F_label_1
MOVFW K_ON ;Светодиод включен? (1-да, 0-нет).
SUBLW .1
BZ F_Label_2
DECFSZ L_OFF
RETURN
MOVFW L_OFF_SET
MOVWF L_OFF
DECFSZ H_OFF
RETURN
MOVFW H_OFF_SET
MOVWF H_OFF
BSF GPIO,4
MOVLW 1
MOVWF K_ON
F_Label_2
DECFSZ L_ON
RETURN
MOVFW L_ON_SET
MOVWF L_ON
DECFSZ H_ON
RETURN
MOVFW H_ON_SET
MOVWF H_ON
CLRF K_ON
BCF GPIO,4
DECF K_LD
RETURN
END
Изображения
Тип файла: jpg pEeMZ-0gqWg.jpg (313.6 Кб, 0 просмотров)
Тип файла: jpg 454.jpg (52.7 Кб, 0 просмотров)
Оценка
К конденсаторам источников питания высокой мощности предъявляются высокие требования по качеству и надежности. Пленочные – единственный тип конденсаторов, который может справиться с такой задачей. Компания Hongfa предлагает продукцию, которая подходит для применения практически во всех функциональных узлах типовых AC/DC- или DC/AC-преобразователей. Рассмотрим характеристики и применения плёночных конденсаторов Hongfa для различных решений.
Эксперт
 
Аватар для DmitriyVDN
 
Регистрация: 08.11.2009
Сообщений: 2,310
Репутация: 640
620 131
34 9
 
20.03.2018 18:53 #2
5000p.
Последний раз редактировалось DmitriyVDN; 20.03.2018 в 19:00.
Оценка
Вслед за сериями на DIN-рейку DDRH-60/120/240 и на шасси RSDH-150/300 компания MEAN WELL выпустила новые маломощные DC/DC-преобразователи DDRH-15/30/45 со сверхшироким входным напряжением 150…1500 В, и монтажом не только на DIN-рейку, но и печатную плату или винтовым соединением. Все преобразователи семейства DDRH и RSDH работают при температурах -40…80°C и обладают высокой изоляцией 4000 В AC между входом и выходом, что обеспечивает надежную защиту. Они подходят для использования на высоте до 5000 м и сертифицированы по стандарту IEC62109-1 для фотоэлектрических систем. Преобразователи DDRH/RSDH есть в наличии и под заказ.
Ответ
Похожие темы
Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход
Электронные компоненты. Скидки, кэшбэк и бесплатная доставка от ТМ Электроникс
Часовой пояс GMT +3, время: 21:37.
Обратная связь РадиоЛоцман Вверх