Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры ATmega AVR
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 09.04.2019
Сообщений: 3

Напишите программу, которая реализует небольшую коллекцию световых эффектов

10.04.2019, 17:29. Показов 1306. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужна помощь с программой на assembler`е, буду рад любым идеям

Условия программы:
Напишите программу, которая реализует небольшую коллекцию световых
эффектов (3 – 5 будет достаточно). Две кнопки («Вперед» и «Назад») должны
перебирать эффекты по порядку. Две других кнопки («Быстрее» и «Медленнее»)
должны управлять скоростью переключения светодиодов. Для устранения
дребезга используйте задержку (примерно 20 мс) после опроса кнопки.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.04.2019, 17:29
Ответы с готовыми решениями:

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

Напишите программу, которая реализует модель системы библиотеки
Нужна помощь Напишите программу на Java, которая реализует модель системы библиотеки. В системе есть несколько типов книг: книги,...

Напишите программу, которая реализует структуру данных стек, используя список
Напишите программу, которая реализует структуру данных стек, используя список. Условие задачи таково: мальчик Петя использует свой...

9
4035 / 2647 / 582
Регистрация: 11.09.2009
Сообщений: 9,448
10.04.2019, 20:48
woodkld, выложите принципиальную электрическую схему этого устройства, опишите, как должно работать, что за "световые эффекты". Если речь о световом шоу, то это пишется не на ассемблере.
0
0 / 0 / 0
Регистрация: 09.04.2019
Сообщений: 3
11.04.2019, 08:04  [ТС]
Нужно написать код на базе микроконтроллера ATmega16, именно на assembler, цепь не обязательна.
Под световыми эффектами подразумевается вот что: счётчик встроенный внутри программы считывает сколько раз нажата кнопка "Вперёд" и в зависимости от количество нажатий, он запускает определённую последовательность миганий нескольких светодиодов(сама последовательность не важна). При нажатии кнопки "Назад" запускает все те же световые эффекты, но в обратном порядке.
Проблемы возникают конкретно с тем, чтобы считать количество нажатий на кнопку, поэтому если есть какие-нибудь идеи как это реализовать, буду благодарен
0
Модератор
Эксперт по электронике
8979 / 6745 / 921
Регистрация: 14.02.2011
Сообщений: 23,863
11.04.2019, 08:55
Цитата Сообщение от woodkld Посмотреть сообщение
Проблемы возникают конкретно с тем, чтобы считать количество нажатий на кнопку,
все остальное проблем не вызывает?
показывай наработки
0
4035 / 2647 / 582
Регистрация: 11.09.2009
Сообщений: 9,448
11.04.2019, 08:59
Цитата Сообщение от woodkld Посмотреть сообщение
Проблемы возникают конкретно с тем, чтобы считать количество нажатий на кнопку
Тогда напишите конкретно и подробно, что и как вы делаете и что за проблемы у вас возникают.
0
1184 / 670 / 113
Регистрация: 15.05.2012
Сообщений: 4,078
11.04.2019, 09:39
Цитата Сообщение от woodkld Посмотреть сообщение
считать количество нажатий на кнопку
1. Ждем ненажатого состояния кнопки.
2. Ждем нажатого состояния кнопки.
3. Наращиваем счетчик количества нажатий.
4. Идем на 1.

Да, и верно указано в задании про антидребезг. Его необходимо давить.
0
0 / 0 / 0
Регистрация: 09.04.2019
Сообщений: 3
11.04.2019, 13:46  [ТС]
Вот Франкенштейн, которого я собрал, не судите строго, это мой 2 код на assmblere`е в жизни и заранее извиняюсь за все неудобства, что он вам причинит.
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
.include "m16def.inc" 
ldi r16, low(RAMEND)
out SPL, r16
ldi r16, high(RAMEND)
out SPH, r16
ldi r16, 0xff
out DDRB, r16
ldi r16, 0xff
out PORTB, r16
ldi r16, 0
out DDRA, r16
ldi r16, 0xff
out PORTA, r16
ldi r21, 1
 
_main_cycle:
sbi PORTB, 0 
sbi PORTB, 1
sbi PORTB, 2
rcall _delay_20ms
sbic PINA, 0
rjmp _loop3
inc r21
rjmp PC-4
_loop3:
dec r21
sbrs r21, 7 
rjmp _loop4
rcall _svet_1
dec r21
sbrs r21, 7
rjmp _loop4
rcall _svet_2
dec r21
sbrs r21, 7
rjmp _loop4
rcall _svet_3
dec r21
sbrs r21, 7
rjmp _loop4
rjmp _loop3
 
_loop4:
sbi PORTB, 0
sbi PORTB, 1
sbi PORTB, 2
rcall _delay_20ms
sbic PINA, 1
rjmp _loop3
inc r22
rjmp PC-4
_loop5:
dec r22
sbrs r22, 7 
rjmp _loop4
rcall _svet_3
dec r22
sbrs r22, 7
rjmp _loop4
rcall _svet_2
dec r22
sbrs r22, 7
rjmp _loop4
rcall _svet_1
dec r22
sbrs r22, 7
rjmp _loop4
rjmp _main_cycle
 
 
 
 
_svet_1:
cbi PORTB, 0
cbi PORTB, 1
cbi PORTB, 2
ret
 
 
_svet_2:
cbi PORTB, 0
sbi PORTB, 1
cbi PORTB, 2
ret
 
_svet_3:
cbi PORTB, 0
cbi PORTB, 1
sbi PORTB, 2
ret
 
 
 
_delay_20ms:
 ldi r20, 0x0a
_loop2:
 ldi r19, 0x22
_loop1:
 ldi r18, 0xa0
_loop0:
 dec r18
 brne _loop0
 dec r19
 brne _loop1
 dec r20
 brne _loop2
 ret
0
 Аватар для Voland_
1983 / 1276 / 131
Регистрация: 04.01.2010
Сообщений: 4,607
11.04.2019, 16:37
Цитата Сообщение от woodkld Посмотреть сообщение
.include "m16def.inc"
воот... теперь хотя бы вашу просьбу можно перенести в нужный раздел...
Цитата Сообщение от pyzhman Посмотреть сообщение
1. Ждем ненажатого состояния кнопки.
2. Ждем нажатого состояния кнопки.
3. Наращиваем счетчик количества нажатий.
4. Идем на 1.
Да, и верно указано в задании про антидребезг. Его необходимо давить.

Не по теме:

так ведь скоро - ввел этот текст в гугел - на выходе получил С-код ;) Думаю, еще пару лет, и усе... Гаплык таким заданиям.

0
12.04.2019, 06:13

Не по теме:

В Delphi уже давно так пишется. :) И в гугл вбивать не надо.

0
15.04.2019, 00:11

Не по теме:

Цитата Сообщение от Voland_ Посмотреть сообщение
Думаю, еще пару лет, и усе... Гаплык таким заданиям.
вообще то ассемблер учат чтоб понимать как оно внутри работает.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
15.04.2019, 00:11
Помогаю со студенческими работами здесь

Генератор световых эффектов для светодиодной матрицы 4х4 на ПЛИС
Нужно составить генератор световых эффектов для светодиодной матрицы 4 на 4. Управление: выбор режима одной кнопкой (переход к...

Напишите скрипт функции, которая реализует сдвиг массива вправо.
Напишите скрипт функции, которая реализует сдвиг массива вправо. В качестве входных данных передаются массив array и количество сдвигов k.

Создать программу, которая реализует операцию
создать программу, которая реализует операцию A = A + B + M + 1.

Написать программу, которая реализует алгоритм
Написать программу, которая реализует такой алгоритм: 1) Выводит на экран меню: 1. Ввод данных 2. Вычисление функции 3....

Написать программу, которая реализует диалог с пользователем
Заранее благодарю всех, кто помог


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru