реклама на сайте
подробности

 
 
> Светодиод, управляемый кнопкой
Игорек
сообщение May 1 2012, 19:09
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 24-04-10
Пользователь №: 56 863



Только начал изучать AVR, решил собрать на ATmega8 схему включения-выключения светодиода одной кнопкой(Нажимаем на кнопку, она коротит одну из ножек контроллера на землю, светодиод припаянный к другой ножке тухнет, нажимаем еще раз - светодиод загорается). На ножке PB0 - светодиод, на ножке PB1 - кнопка.
Код
.include "m8def.inc"  
.org 0
    RJMP Reset
Reset:  
    LDI R16,Low(RAMEND)    
    OUT SPL,R16    
    LDI R16,High(RAMEND)
    OUT SPH,R16    
    
    LDI R16,1<<DDB0  
    OUT DDRB,R16    
    LDI R16,1<<PORTB1    
    OUT PORTB, R16        
Start:    
    IN R16,PINB
    SBRS R16,1
    RCALL Change
    RJMP Start
Change:
    LDI R17,0x3
    EOR R16,R17
    OUT PORTB,R16
    RET



1. Подскажите, если не сложно, какие явные косяки в коде имеются (чувствую, что они там точно есть rolleyes.gif ).
2. Не всегда срабатывает переключение светодиода, иногда происходит так: светодиод светится, я нажимаю кнопку где-то на секунду, светодиод в это время светится вполнакала, отпускаю кнопку и светодиод снова светится, хотя должен был погаснуть. Или светодиод не светится, я нажимаю кнопку, светодиод начинает светится вполнакала, отпускаю кнопку и светодиод снова не светится. А иногда все работает нормально (примерно 50 на 50). Из-за чего это может быть?

Сообщение отредактировал Игорек - May 1 2012, 19:10
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th July 2025 - 01:23
Рейтинг@Mail.ru


Страница сгенерированна за 0.0136 секунд с 7
ELECTRONIX ©2004-2016