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

 
 
> Входы и выходы на AT90s4433, Не коректно работают
KAMASUTR
сообщение Dec 2 2009, 18:33
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 17-05-08
Пользователь №: 37 571



Код
#include "4433def.inc"

.def ZERO=r22
.def INPUT=r0
.def TEMP=r20
.def COUNTER=r18

ldi ZERO, 0
out ADCSR, ZERO;disable ADC
ldi TEMP, 1
out DDRB, TEMP;set first 1 bits of portb to output
ldi TEMP, 2
out DDRC, TEMP;set portc to input

check:
ldi COUNTER, 0
out PORTB, COUNTER
check1:
in INPUT, PINC;get input
ror INPUT;check first bit (0 = input)
brcs check
ldi COUNTER, 3
out PORTB, COUNTER
rjmp check1

У меня есть вход порт PC0 и выход PB0, проблема в том что если я хочу повесить вход еще на PC1 или PC2 то на выходе PB0 нечего не выходит, помогите! КАк правильно подключать несколько входов и несколько выходов?
Причина редактирования: Оформление цитаты исходника.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
KAMASUTR
сообщение Dec 4 2009, 13:23
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 17-05-08
Пользователь №: 37 571



Спосибо, но я нашел другой способ)))
если интересно

CODE
#include "4433def.inc"

.def ZERO=r22
.def INPUT=r0
.def TEMP=r20
.def COUNTER=r18

ldi ZERO, 0
out ADCSR, ZERO;disable ADC
ldi TEMP, 1
out DDRB, TEMP;set first 1 bits of portb to output
ldi TEMP, 255
out PORTC, TEMP;set portc to input

check:
ldi COUNTER, 0
out PORTB, COUNTER
check1:
in INPUT, PINC;get input
ror INPUT;check first bit (0 = input)
brcs check2; if no input
brcc check3; if is input
check2:
ror INPUT;check first bit (0 = input)
brcs check
check3:
ldi COUNTER, 3
out PORTB, COUNTER
rjmp check1
Причина редактирования: Оформление цитаты исходника.
Go to the top of the page
 
+Quote Post



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

 


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


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