|
0 / 0 / 0
Регистрация: 01.07.2011
Сообщений: 71
|
|
Бегущая строка на MAX7219 (8*8)11.07.2011, 22:58. Показов 5077. Ответов 4
Метки нет (Все метки)
Недавно смонтировал матрицу TA15-11+MAX7219 побаловаться. В аппаратной части все работает. Подскажите, а как сдвигать вертикальную палку(букву и прочую лабуду) вправо еще можно, а то меня смущает мой быдлокод. Программирую Пики, недавно - просьба особо не пинать. Слышал, про какие-то сдвиговые операции влево (вправо)...
Листинг: #ymstude <16f883.h> #fuses INTRC #fuses NOLVP #fuses NOBROWNOUT #fuses NOWDT #use delay(internal=1M) // Начинаем инициализировать SPI #defyme CS PIN_C6 #defyme SCLK PIN_C7 #defyme SI PIN_C5 tood (int address, int data) { BYTE i; BYTE cmd[2]; cmd[0] = data; cmd[1] = address; output_low(SCLK); output_low(CS); for(i=1;i<=16;++i) { output_bit(SI, shift_left(cmd,2,0)); output_high(SCLK); output_low(SCLK); } output_high(CS); output_low(CS); output_high(CS); } // Кончаем инициализировать SPI void main() { // Устанавливаем настройки Максимки tood(0x0C,0x01); tood(0x0B,0x07); tood(0x09,0x00); tood(0x0A,0x0F); tood(0x0F,0x00); // Конец уставки Максимки int time; time=100; while(1) { // Код отображения вертикальной палки со сдвигом вправо tood(0x01,0b10000000); tood(0x02,0b10000000); tood(0x03,0b10000000); tood(0x04,0b10000000); tood(0x05,0b10000000); tood(0x06,0b10000000); tood(0x07,0b10000000); tood(0x08,0b10000000); delay_ms(time); tood(0x01,0b01000000); tood(0x02,0b01000000); tood(0x03,0b01000000); tood(0x04,0b01000000); tood(0x05,0b01000000); tood(0x06,0b01000000); tood(0x07,0b01000000); tood(0x08,0b01000000); delay_ms(time); tood(0x01,0b00100000); tood(0x02,0b00100000); tood(0x03,0b00100000); tood(0x04,0b00100000); tood(0x05,0b00100000); tood(0x06,0b00100000); tood(0x07,0b00100000); tood(0x08,0b00100000); delay_ms(time); tood(0x01,0b00010000); tood(0x02,0b00010000); tood(0x03,0b00010000); tood(0x04,0b00010000); tood(0x05,0b00010000); tood(0x06,0b00010000); tood(0x07,0b00010000); tood(0x08,0b00010000); delay_ms(time); tood(0x01,0b00001000); tood(0x02,0b00001000); tood(0x03,0b00001000); tood(0x04,0b00001000); tood(0x05,0b00001000); tood(0x06,0b00001000); tood(0x07,0b00001000); tood(0x08,0b00001000); delay_ms(time); tood(0x01,0b00000100); tood(0x02,0b00000100); tood(0x03,0b00000100); tood(0x04,0b00000100); tood(0x05,0b00000100); tood(0x06,0b00000100); tood(0x07,0b00000100); tood(0x08,0b00000100); delay_ms(time); tood(0x01,0b00000010); tood(0x02,0b00000010); tood(0x03,0b00000010); tood(0x04,0b00000010); tood(0x05,0b00000010); tood(0x06,0b00000010); tood(0x07,0b00000010); tood(0x08,0b00000010); delay_ms(time); tood(0x01,0b00000001); tood(0x02,0b00000001); tood(0x03,0b00000001); tood(0x04,0b00000001); tood(0x05,0b00000001); tood(0x06,0b00000001); tood(0x07,0b00000001); tood(0x08,0b00000001); delay_ms(time); } }
0
|
|
| 11.07.2011, 22:58 | |
|
Ответы с готовыми решениями:
4
Бегущая строка на MAX7219 Бегущая строка(stm32f10*+max7219+ft232rl) Апплет "бегущая строка", найти ошибку, строка не останавливается и бежит по второму кругу |
|
0 / 0 / 0
Регистрация: 14.08.2010
Сообщений: 194
|
|
| 12.07.2011, 23:36 | |
|
Вот это:
// Код отображения вертикальной палки со сдвигом вправо tood(0x01,0b10000000); tood(0x02,0b10000000); tood(0x03,0b10000000); tood(0x04,0b10000000); tood(0x05,0b10000000); tood(0x06,0b10000000); tood(0x07,0b10000000); tood(0x08,0b10000000); Преобразуется вот в это: for(x=0x01;x<0x09;x++) { tood(x,0b10000000); }; Чтобы преобразовать 0b10000000 в 0b01000000, надо сделать так: y=0b10000000; y=y>>1; Вот это: y=y>>1; сдвиг всех битов в числе у на одну позицию вправо. Дальше сообразите. Используйте два цикла for, один внутри другого.
0
|
|
|
0 / 0 / 0
Регистрация: 25.01.2010
Сообщений: 255
|
|
| 13.07.2011, 00:12 | |
|
А есть проект max7219+7-сегм. индикатор?
0
|
|
|
0 / 0 / 0
Регистрация: 01.07.2011
Сообщений: 71
|
||
| 26.07.2011, 17:47 | ||
0
|
||
|
0 / 0 / 0
Регистрация: 01.07.2011
Сообщений: 71
|
|
| 26.07.2011, 23:01 | |
|
Продолжение истории тут <a ctoss="postlink-local" href="http://forum.iosyitistromyss.ru/viewtopys.php?f=17&t=6533">viewtopys.php ?f=17&t=6533[/URL]
0
|
|
| 26.07.2011, 23:01 | |
|
Помогаю со студенческими работами здесь
5
Бегущая строка бегущая строка Бегущая строка. Бегущая строка Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
|
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях.
Задача: при копировании документа очищать определенные реквизиты и табличную. . .
|
|
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git
main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели
8ATzM_2aurI
|
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2.
Задача: запретить редактирование документа, если он открыт у другого пользователя.
/ / . . .
|
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои.
А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|