Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
13.08.2010, 01:09
|
|
Почётный гражданин KAZUS.RU
Регистрация: 08.09.2009
Сообщений: 1,139
Сказал спасибо: 138
Сказали Спасибо 366 раз(а) в 230 сообщении(ях)
|
Re: Краткий практический курс создания устройств на микроконтроллерах AVR
Сообщение от avr123-nm-ru
|
Конечно есть. Я потому и написал. Вдруг кому то тоже будет интересно.
|
Так как я эту схему делал мне досталось несколько прошитых микросхем, так что совсем бесплатно.
Мои друзья довольны которым я сделал этот частотомер.
Дело не в цене я просто привёл пример с какой частотой может работать МЕГА, но не все МЕГИ и не со всеми буквами могут так работать.
|
|
|
|
13.08.2010, 08:40
|
|
Частый гость
Регистрация: 10.10.2008
Сообщений: 38
Сказал спасибо: 32
Сказали Спасибо 14 раз(а) в 7 сообщении(ях)
|
Re: Краткий практический курс создания устройств на микроконтроллерах AVR
avr123-nm-ru,
по частотомеру были исходники здесь:
http://vrtp.ru/index.php?showtopic=3148&st=105
|
|
|
|
22.10.2010, 11:37
|
|
Почётный гражданин KAZUS.RU
Регистрация: 01.05.2009
Адрес: Коптево
Сообщений: 2,849
Сказал спасибо: 276
Сказали Спасибо 427 раз(а) в 274 сообщении(ях)
|
Re: Краткий практический курс создания устройств на микроконтроллерах AVR
Сообщение от realid
|
Советую НЕ использовать ПРОТЕУС. Только реальное "железо".
|
Во-во! Хорошо я ещё только 2 дня потерял, чтобы убедиться, что Протезы пока ещё не научились делать! Мне нужно было отладить именно динамическую индикацию.
Кстати, анекдот в тему: "Если бы строители возводили здания так же, как программисты пишут программы, то первый же залетевший дятел погубил бы всю цивилизацию!".
|
|
|
|
29.11.2010, 19:41
|
|
Прохожий
Регистрация: 23.11.2010
Сообщений: 3
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Краткий практический курс создания устройств на микроконтроллерах AVR
Спасибо за подробные уроки. Но слишком простой пример. Не могли бы Вы привести пример с двумя кнопками и двумя светодиодами. каждая кнопка независимо включает и выключает свой св-диод. Больше всего интересует: какой командой пользоваться, чтобы при нажатии кнопки на порту светодиода бит устанавливался и при повторном сбрасывался(инвертировала бит не входя в цикл как в вашем примере).
|
|
|
|
29.11.2010, 19:52
|
|
Вид на жительство
Регистрация: 21.08.2007
Сообщений: 318
Сказал спасибо: 12
Сказали Спасибо 67 раз(а) в 61 сообщении(ях)
|
Re: Краткий практический курс создания устройств на микроконтроллерах AVR
Если:
PB0 - кнопка 1
PB1 - кнопка 2
PB2 - светодиод 1
PB3 - светодиод 2
То код будет таким:
uint8_t state, curr;
do
{
curr = PINB;
if ((state ^ curr) & ((1 ‹‹ PB0) || (1 ‹‹PB1))) != 0) ; Одна из кнопок изменила своё состояние
{
if ((state ^ curr) & (1 ‹‹ PB0) & (curr &(1 ‹‹PB0))) ; Состояние изменила кнопка 1 и она нажата
PORTB ^= (1 ‹‹ PB2);
if ((state ^ curr) & (1 ‹‹ PB1) & (curr &(1 ‹‹PB1))) ; Состояние изменила кнопка 2 и она нажата
PORTB ^= (1 ‹‹ PB3);
state = curr;
}
}
Вроде так
Последний раз редактировалось Cybermaker; 29.11.2010 в 19:58.
|
|
|
|
29.11.2010, 20:12
|
|
Прохожий
Регистрация: 23.11.2010
Сообщений: 3
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Краткий практический курс создания устройств на микроконтроллерах AVR
Сообщение от Cybermaker
|
Если:
PB0 - кнопка 1
PB1 - кнопка 2
PB2 - светодиод 1
PB3 - светодиод 2
То код будет таким:
uint8_t state, curr;
do
{
curr = PINB;
if ((state ^ curr) & ((1 ‹‹ PB0) || (1 ‹‹PB1))) != 0) ; Одна из кнопок изменила своё состояние
{
if ((state ^ curr) & (1 ‹‹ PB0) & (curr &(1 ‹‹PB0))) ; Состояние изменила кнопка 1 и она нажата
PORTB ^= (1 ‹‹ PB2);
if ((state ^ curr) & (1 ‹‹ PB1) & (curr &(1 ‹‹PB1))) ; Состояние изменила кнопка 2 и она нажата
PORTB ^= (1 ‹‹ PB3);
state = curr;
}
}
Вроде так
|
А можно тоже самое, только на Ассемблере, пожалуйста? Си не знаю.
|
|
|
|
29.11.2010, 20:29
|
|
Вид на жительство
Регистрация: 21.08.2007
Сообщений: 318
Сказал спасибо: 12
Сказали Спасибо 67 раз(а) в 61 сообщении(ях)
|
Re: Краткий практический курс создания устройств на микроконтроллерах AVR
Сообщение от ATim25
|
А можно тоже самое, только на Ассемблере, пожалуйста? Си не знаю.
|
Пожалуйста. Только с таким знанием ассемблера возможно имеет смысл прислушаться к тому, чтобы начать осваивать си.
P.S. Перед "rjmp Mark" забыл "mov state, Tmp1"
Последний раз редактировалось Cybermaker; 29.11.2010 в 20:33.
|
|
|
Сказали "Спасибо" Cybermaker
|
|
|
29.11.2010, 20:43
|
|
Гражданин KAZUS.RU
Регистрация: 03.12.2004
Сообщений: 932
Сказал спасибо: 824
Сказали Спасибо 609 раз(а) в 216 сообщении(ях)
|
Re: Краткий практический курс создания устройств на микроконтроллерах AVR
|
|
|
|
29.11.2010, 20:51
|
|
Вид на жительство
Регистрация: 21.08.2007
Сообщений: 318
Сказал спасибо: 12
Сказали Спасибо 67 раз(а) в 61 сообщении(ях)
|
Re: Краткий практический курс создания устройств на микроконтроллерах AVR
Сообщение от aleksandr-zh
|
поспорю, и вот почему:
|
ИМХО уже не актуально: AVR'ы тихо уходят со сцены и на их место приходят кортексы. Там уже непонятно: стоит изучать асм или нет ? Я тоже пока не определился.
|
|
|
|
29.11.2010, 21:42
|
|
Гражданин KAZUS.RU
Регистрация: 03.12.2004
Сообщений: 932
Сказал спасибо: 824
Сказали Спасибо 609 раз(а) в 216 сообщении(ях)
|
Re: Краткий практический курс создания устройств на микроконтроллерах AVR
ну, ну... Cortex
посмеялся )
зачем их то? сразу Пентиум-99 = вон сколько ножек! )))
|
|
|
Сказали "Спасибо" aleksandr-zh
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 23:51.
|
|