Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: эмулятор клавиатуры на attiny
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
Микроконтроллеров
help.gif

Уменя очень срочная проблемма есть исходники эмулятора клавиатуры проверенные на attiny, но в нем не могу разобраться crying.gif


мне нужно эмулировать одноразовое последовательное нажатие 10-20 клавиш помогите, если не сложно


Просто изучением avr занялся недавно, по необходимости но в схему уже сделал а в код нет

Исправил название темы.
Темы с невменяемыми названиями будут удаляться полностью.
Модератор.
GDI
Не очень понятно, что же вам надо, что значат слова "эмулировать одноразовое последовательное нажатие 10-20 клавиш", т.е. на устройстве нажимаете какую то кнопку, а оно потом передает в ПК заранее записанную последовательность скан кодов клавиш?
У вас есть функция BuildReport() вот она и должна при каждом ее вызове помещать в буфер новый скан-код из вашей последовательности.
Andrew34
Доброго времени суток!)
(не пинать! - начинающий... cranky.gif ):
help.gif
Прошу объяснить код (CodeVisionAvr)...
Эт вывод на жк переменной внутри While ()...
При каждом прогоне цикла эта перемен num инкрементируется...
На сколько я понял, на жк будет раз в секунду выводиться значение переменной от 0 до 99...
Пример взят: http://my-avr.at.ua/publ/1-1-0-17

Код
lcd_putchar(num/10+0x30);
lcd_putchar(num%10+0x30);

*что значит /10?
*зачем +0x30 ?
*почему именно 0x30 ?
*что делает % ?
Dog Pawlowa
>> не пинать! - начинающий...
Что, детский сад закрыли и все сюда ломанулись, а читать не умеют?

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

>>*что значит /10?
Делим на 10 и находим старшую цифру.

>>*зачем +0x30 ?
Чтобы цифру перевести в код цифры на экране

>>*почему именно 0x30 ?
Потому что! См таблицу ASCII

>>*что делает % ?
Находит остаток от деления на 10 - младшую цифру.

Не думаю, что в дальнейшем тут будут отвечать на подобные вопросы - читайте буквари по С.
demiurg_spb
Цитата(Andrew34 @ Aug 18 2011, 00:35) *
*зачем +0x30 ?
*почему именно 0x30 ?
Да потому что "дятел" писал исходник.
Код
lcd_putchar(num/10+'0');
lcd_putchar(num%10+'0');
так смысл более понятен?
Lmx2315
Цитата(demiurg_spb @ Aug 18 2011, 09:18) *
Да потому что "дятел" писал исходник.
Код
lcd_putchar(num/10+'0');
lcd_putchar(num%10+'0');
так смысл более понятен?


..чё это дятел сразу ??
+0x30 -нормальный ход.

Строки лучше формировать до вывода.

з.ы.
Таблицу ascii надо если и не знать то помнить про неё.
777777
Цитата(Lmx2315 @ Aug 18 2011, 09:35) *
..чё это дятел сразу ??
+0x30 -нормальный ход.

Да дятел конечно. Использование magic numbers навроде 0x30 - это еще так, лишение премии на 25%, а вот использование деления на AVR - это никуда не годится.

Цитата(Lmx2315 @ Aug 18 2011, 09:35) *
Таблицу ascii надо если и не знать то помнить про неё.

А таблицу символов UNICODE не надо знать? А вдруг понадобится вывести символ "серп и молот"?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.