Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры ATmega AVR
Войти
Регистрация
Восстановить пароль
Другие темы раздела
ATmega AVR Организовать счетчик делитель частоты, с модулем счета 85, при достижений модуля счета сброс в ноль https://www.cyberforum.ru/ avr/ thread8231.html
Здравствуйте!У меня такая проблема:скоро сессия,паника в группе,никто не знает как решить эту задачу,ВЫ у меня последняя надежда!!! Мне нужно организовать счетчик делитель частоты,с модулем счета...
Доступ к файловой системе USB-флеш? ATmega AVR
Привет, all! Наведите/подскажите, плз, где рыть про доступ к фс USB флешек (чтение/запись секторов, создание/удаление файлов/каталогов) через USB EndPoint'ы. Задача: в систему на...
1856 / 713 / 55
Регистрация: 11.12.2008
Сообщений: 1,019
17.02.2009, 14:42 0

Решить логическое уравнение - ATmega AVR - Ответ 104465

17.02.2009, 14:42. Показов 2532. Ответов 2
Метки (Все метки)

Ответ

Как я вижу это asm под avr микроконтроллеры, да?
...
А этот пример точно работает? А то я как-то несоображу как.
...
Если что не так, не бейте, потому что никогда не сталкивался с ассемблером для avr. У меня твоя программа вышла, почему-то такая:
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
ldi r16,00 ;Загружаем в регистр №16 константу 0
out DDRC,r16 ;Для того, что бы этот 0 поместить на вывод(порт С). Напрямую нельзя
out DDRB,r16;Тоже и в B
 
ser r16 ;Установка всех разрядо в 1, тоесть загрузка 0xFF
ldi r16,0xFF ;Зачем эта команда не знаю, ведь в предыдущей мы уже засунули FF
out DDRD,r16 ;Все ножки порта D в состояние 1
 
main:
    ldi r16,0x1
    in r17,PINC
    AND r16,r17 ;На Р16 у нас значение PINC.0
    ldi r17,0x2 
    ldi r18,PINC
    AND r17,r18 ;На Р17 у нам значение PINC.1
    lsr r17 ;сдвигаем r17 на 1 разряд направо. Чтобы 1 в Р17 совпала с Р16
    AND r16,r17 //Умножаем PINC.0 на PINC.1, и в r16 у нас результат умножения
    
    ldi r17,0x1
    in r18,PINB
    AND r17,r18 ;На Р17 у нас значение PINB.0
    ldi r18,0x2 
    ldi r19,PINB
    AND r18,r19 ;На Р18 у нам значение PINB.1
    lsr r18 ;сдвигаем r18 на 1 разряд направо. Чтобы 1 в Р18 совпала с Р17
    AND r17,r18 //Умножаем PINB.0 на PINB.1, и в r17 у нас результат умножения
 
    ;А теперь плюсуем - OR
    OR r16,r17
    lsl r16 ;Сдвигаем наш результат(он ведь находится на 0_ом бите), влево, чтобы он попал на PORTD.1
    out PORTD,r16 ;Загружаем наш результат на выходную ножку
rjmp main ;Возвращаемся на начало подсчета, чтобы повторить все снова.


Вернуться к обсуждению:
Решить логическое уравнение ATmega AVR
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.02.2009, 14:42
Готовые ответы и решения:

не могу решить логическое выражение
Помогите пожалуйста решить логическое выражениие, вообще не получается (AvB) ^С

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

Логическое уравнение
Всем привет. Нужна помощь в решении. По функциональной схеме составить логическое уравнение:

Логическое уравнение
Решить уравнение \bar{x\rightarrow y}=x\bar{y}

2
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.02.2009, 14:42
Помогаю со студенческими работами здесь

Логическое неравенство и уравнение
Привет всем. Очень нужна помощь c решением логического уравнения и неравенства. Очень прошу, кто...

Составить логическое уравнение
Всем привет, ничего в этом не понимаю, прошу помочь. По функциональной схеме составить...

Минимизировать логическое уравнение
Помогите пожалуйста минимизировать:

Дано уравнение ax2+bx+c=0. Решить уравнение, результат вывести на экран.
Здравствуйте. Завтра зачет, нужно сдать две программы на с++, как их писать у меня весьма смутное...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru