| Автор | Сообщение |
Gig Участник Сообщения: 62
|
Прошу помочь людей, знающих ассемблер. Очень нужно, горит экзамен.
Собственно задача:
Контроллер At90s8535
На port A, pin7 случайным образом подаются импульсы интервалом 1-10 сек.
Начало каждого импульса фиксировать засветкой светодиода (длительность засветки 0.5сек.), подключенного к pin2 PortB.
Как я понимаю, задача простая до безобразия(сам работал только в СИ, там реализуется строчек в 5), но нужно именно на asm. |
|
Vasil_ Забанен  Сообщения: 203
|
А ты напиши на Си, откомпили, а потом дизассемблируй , |
|
pavel-pervomaysk Your editor Сообщения: 8037
|
Gig, сделаем Только уточни как идут импульсы на вход по фронту или по спаду ? И светодион как включен ? |
|
Gig Участник Сообщения: 62
|
Импульсы идут по фронту.
В смысле как включён светодиод?
А как дизассемблить, просто я никогда с этим не сталкивался. |
|
pavel-pervomaysk Your editor Сообщения: 8037
|
Вот под такое щас напишу если надо .

|
|
Gig Участник Сообщения: 62
|
Оно самое.
Добавлено 20-05-2008 19:15
Я тут накрапал кое-что:
.device at90s8535
.include "8535def.inc"
ser r16 ;все биты регистра R16 устанавливаются в единицу
out ddra,r16 ;настройка порта A на вывод
loop:
in r17,pina ;загружаем данные из порта A в регистр R17
sbis pina,7 ;
rjmp n1 ;
bst r17,7 ;
bld r18,2 ;
out portb,r18;
rcall delay ;
out portb,r19;
rjmp loop;
delay: ;підпрограма затримки на 0.5 секунди
clr r20 ;очищення регістра R19
clr r21 ;очищення регістра R20
clr r22 ;очищення регістра R21
n1:
inc r20 ;інкремент (+1) регістра R19
cpi r20,255 ;порівняння регістра R19 з 255
brne n1 ;якщо R19 255, то програма переходить на мітку n1
inc r21 ;інкремент (+1) регістра R20
cpi r21,255 ;порівняння регістра R20 з 255
brne n1 ;якщо R20 255, то програма переходить на мітку n1
inc r22 ;інкремент (+1) регістра R21
cpi r22,16 ;порівняння регістра R21 з 48
brne n1 ;якщо R21 48, то програма переходить на мітку n1
ret ;вихід із підпрограми затримки
Может быть так? |
|
pavel-pervomaysk Your editor Сообщения: 8037
|
Вот написал , есть на чем проверить , ато может времени не хватить , в смысле задержка может быть скорее всего меньше чем 500 мс
8535.rar 3,77 КБ Скачано: 561 раз(а)
|
|
Gig Участник Сообщения: 62
|
А мой вариант правильный?, тоже интересует реализация задержки(содрано с какой-то другой работы). |
|
pavel-pervomaysk Your editor Сообщения: 8037
|
Я всегда стараюсь делать как мне проще и понятнее . Пробуй шить контроллер |
|
GarikBaza Новичок Сообщения: 664
|
pavel-pervomaysk, силен в асме, верь ему. На С - это ко мне  |
|
Gig Участник Сообщения: 62
|
GarikBaza, если чё, буду обращаться.
Добавлено 20-05-2008 21:39
Всем спасибо, тема решена. |
|
|
Текущий раздел»
Программное обеспечение»
Микроконтроллеры (Микроконтроллеры - AVR-ы, PIC-и и другие)
|
|
|