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

 
 
> С ввода на вывод, at2313
what_you_want
сообщение Oct 15 2010, 14:24
Сообщение #1





Группа: Новичок
Сообщений: 3
Регистрация: 15-10-10
Пользователь №: 60 186



Здравствуйте, стал разбираться с программой Isis для эмулирование МК, столкнулся со странной проблемой. Код:
CODE
.cseg
.org 0
ldi temp,RamEnd ;инициализация стека
out SPL,temp

ldi temp,0xFF ;настройка порта D на вывод
out DDRD,temp

ldi temp,0x00 ;настройка порта B на ввод
out DDRB,temp


Begin:

clr temp1 ;обнуляем регистр temp1
in temp1, PINB ;записываем данные из порта B в темп1
rcall Delay ;задержка
out PORTD, temp1 ;выводим данные в порт D
rcall Delay ;задержка
rjmp Begin ;сначала

; задержка

Delay:
ldi Temp3,0
ldi Temp4,0

Loop:
dec Temp3
brne Loop

dec Temp4
brne Loop

ret


Программа простая, в зависимости от нажатых кнопочек читаем единицы-нули с порта B и передаем их на порт D. Но тем не менее, на выходе всегда горят единицы, вне зависимости от нажатых кнопок. Что я делаю не так?

Сообщение отредактировал what_you_want - Oct 15 2010, 14:28
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
what_you_want
сообщение Oct 15 2010, 20:23
Сообщение #2





Группа: Новичок
Сообщений: 3
Регистрация: 15-10-10
Пользователь №: 60 186



все заработало, ошибка была в схеме.


Цитата(SergeyGrig @ Oct 15 2010, 22:40) *
ldi temp,0x00 ;настройка порта B на ввод


порты по умолчанию же на ввод настроены, можно обойтись без этого присваивания, как я понял.

еще возник вопрос по команде bld

bld temp, 0 ; записываем в нулевой бит регистра temp значение из T

А остальные биты регистра temp чем заполнены? нулями по умолчанию?

Go to the top of the page
 
+Quote Post
tazik
сообщение Oct 16 2010, 04:44
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 195
Регистрация: 13-05-07
Из: Норильск
Пользователь №: 27 691



Цитата(what_you_want @ Oct 16 2010, 04:23) *
А остальные биты регистра temp чем заполнены? нулями по умолчанию?


остальные биты не меняются
Go to the top of the page
 
+Quote Post



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

 


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


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