PIC 16F877/Лампочка с ключом
14.03.2010, 12:29
|
|
|
Прохожий
Регистрация: 02.03.2010
Сообщений: 8
Сказал спасибо: 9
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
PIC 16F877/Лампочка с ключом
Здравствуйте, уважаемые акулы электроники. Хочется узнать, что же я не так делаю.. сам я молодой и в электронике совсем недавно..
В общем, код:
|
Код:
|
list P=16F877
include "P16F877.INC"
declare:
BSF STATUS, RP0;1 bank-TRIS
BSF TRISA, 0;input
BCF TRISB, 0;output
BCF STATUS, RP0;0 bank-PORT
check:
BTFSC PORTA, 0
BSF PORTB, 0
BTFSS PORTA, 0
BCF PORTB,0
goto check
end |
Вот, ниже скрин с протеуса! Наверное, там накосячил где то))  Помогите пожалуйста, элеткронубику, и, по возможности, дайте, пожалуйста ресурсы с простейшими схемами под PIC16F877 для лучшего понимания.
Благодарен
|
|
|
|
14.03.2010, 12:30
|
|
|
Прохожий
Регистрация: 02.03.2010
Сообщений: 8
Сказал спасибо: 9
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: PIC 16F877/Лампочка с ключом
PS: лампочку и не ставил, т.к. RB0 не работает должным образом, по идее все должно работать так:
нажимаешь кнопочку лампочка горит, отпускаешь - гаснет, ну в данном случае ключ..
|
|
|
|
14.03.2010, 14:35
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 29.01.2005
Адрес: Воронеж
Сообщений: 1,384
Сказал спасибо: 24
Сказали Спасибо 245 раз(а) в 183 сообщении(ях)
|
Re: PIC 16F877/Лампочка с ключом
У вас RA0 сконфигурирован как аналоговый вход.
|
|
|
|
14.03.2010, 14:47
|
|
|
Прохожий
Регистрация: 02.03.2010
Сообщений: 8
Сказал спасибо: 9
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: PIC 16F877/Лампочка с ключом
otest, пожалуйста, подскажите, как это исправить!
|
|
|
|
14.03.2010, 15:05
|
|
|
Заблокирован
Регистрация: 26.12.2009
Сообщений: 3,102
Сказал спасибо: 113
Сказали Спасибо 860 раз(а) в 610 сообщении(ях)
|
Re: PIC 16F877/Лампочка с ключом
Сообщение от vip7070
|
|
Код:
|
list P=16F877
include "P16F877.INC"
declare:
BSF STATUS, RP0;1 bank-TRIS
MOVLW 0x06 ; Configure all pins
MOVWF ADCON1 ; as digital inputs
BSF TRISA, 0;input
BCF TRISB, 0;output
BCF STATUS, RP0;0 bank-PORT
check:
BTFSC PORTA, 0
BSF PORTB, 0
BTFSS PORTA, 0
BCF PORTB,0
goto check
end |
|
......................................
|
|
|
|
14.03.2010, 15:15
|
|
|
Прохожий
Регистрация: 02.03.2010
Сообщений: 8
Сказал спасибо: 9
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: PIC 16F877/Лампочка с ключом
st_1,
Ух ты жжж! Спасибо Вам большое!
Все отличненько так работает! Но будет еще один небольшой вопрос, для общего развития, так сказать, возможно ли сделать данную программу с аналоговыми входами?
 Очень благодарен!
|
|
|
|
14.03.2010, 16:35
|
|
|
Прохожий
Регистрация: 02.03.2010
Сообщений: 8
Сказал спасибо: 9
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: PIC 16F877/Лампочка с ключом
Переделал эту программу на 8 лампочек ))) Интересует вопрос, можно ли каким - либо образом создать цикл что-ли, чтобы не писать для каждого выхода RB0..RB7 одни и те же правила. Заранее благодарен.
|
Код:
|
list P=16F877
include "P16F877.INC"
declare:
BSF STATUS, RP0;1 bank-TRIS
MOVLW 0x06 ; Configure all pins
MOVWF ADCON1 ; as digital inputs
BSF TRISA, 0;input
BCF TRISB, 0;output
BCF TRISB, 1
BCF TRISB, 2
BCF TRISB, 3
BCF TRISB, 4
BCF TRISB, 5
BCF TRISB, 6
BCF TRISB, 7
BCF STATUS, RP0;0 bank-PORT
check:
BTFSC PORTA,0
BSF PORTB,0
BTFSS PORTA,0
BCF PORTB,0
BTFSC PORTA,0
BSF PORTB,1
BTFSS PORTA,0
BCF PORTB,1
BTFSC PORTA,0
BSF PORTB,2
BTFSS PORTA,0
BCF PORTB,2
BTFSC PORTA,0
BSF PORTB,3
BTFSS PORTA,0
BCF PORTB,3
BTFSC PORTA,0
BSF PORTB,4
BTFSS PORTA,0
BCF PORTB,4
BTFSC PORTA,0
BSF PORTB,5
BTFSS PORTA,0
BCF PORTB,5
BTFSC PORTA,0
BSF PORTB,6
BTFSS PORTA,0
BCF PORTB,6
BTFSC PORTA,0
BSF PORTB,7
BTFSS PORTA,0
BCF PORTB,7
goto check
end |
Последний раз редактировалось vip7070; 14.03.2010 в 16:44.
|
|
|
|
14.03.2010, 16:56
|
|
|
Заблокирован
Регистрация: 26.12.2009
Сообщений: 3,102
Сказал спасибо: 113
Сказали Спасибо 860 раз(а) в 610 сообщении(ях)
|
Re: PIC 16F877/Лампочка с ключом
Сообщение от vip7070
|
|
Код:
|
list P=16F877
include "P16F877.INC"
declare:
BSF STATUS, RP0;1 bank-TRIS
MOVLW 0x06 ; Configure all pins
MOVWF ADCON1 ; as digital inputs
BSF TRISA, 0;input
BCF TRISB, 0;output
BCF TRISB, 1
BCF TRISB, 2
BCF TRISB, 3
BCF TRISB, 4
BCF TRISB, 5
BCF TRISB, 6
BCF TRISB, 7
BCF STATUS, RP0;0 bank-PORT
check:
BTFSS PORTA,0
goto led_off
MOVLW 0FFH
MOVWF PORTB
goto check
led_off:
CLRF PORTB
goto check
end |
|
...................................
|
|
|
|
14.03.2010, 17:31
|
|
|
Заблокирован
Регистрация: 26.12.2009
Сообщений: 3,102
Сказал спасибо: 113
Сказали Спасибо 860 раз(а) в 610 сообщении(ях)
|
Re: PIC 16F877/Лампочка с ключом
Почитайте здесь, вопросов меньше будет.
|
|
|
|
Эти 2 пользователя(ей) сказали Спасибо st_1 за это сообщение:
|
|
|
15.03.2010, 02:10
|
|
|
Прописка
Регистрация: 25.11.2006
Адрес: Харьков
Сообщений: 295
Сказал спасибо: 25
Сказали Спасибо 71 раз(а) в 60 сообщении(ях)
|
Re: PIC 16F877/Лампочка с ключом
Сообщение от vip7070
|
|
Все отличненько так работает!
|
Если в будущем Вы от опытов с протеусом попробуете перейти к практике с реальными микросхемами, то учтите, что висящий в воздухе вход микроконтроллера (а Вас - при разомкнутой кнопке) может совсем не восприниматься как "0". Это ведь по сути затвор полевого транзистора и он из-за утечек на плате, наводок, да и просто приближения вашей руки может зарядиться до некоторого напряжения. Чтобы этого не было - нужно "подтянуть" этот вход к нужному уровню (в Вашем случае - к "земле") с помощью резистора.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 04:41.
|
|