Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|
Микроконтроллеры AVR от Atmel.Введение |

13.11.2007, 06:12
|
|
Постоянный
Регистрация: 04.11.2007
Сообщений: 331
Провел на форуме: 1724067
Репутация:
806
|
|
Микроконтроллеры AVR от Atmel.Введение
Что такое микроконтроллеры в общих чертах отлично рассказал MegaDeth (респект). Но должна быть свобода выбора.
Микроконтроллеры AVR и PIC приблизительно равны по параметрам. Но все же AVR немного лучше (с моей субъективной стороны): дешевле, производительнее, ПРОЩЕ в освоении.
Например, есть такая модель ATmega8. Цена - 1,5у.е. Частота - 16 МГц. 32 8-ми битных регистра общего назначения. 1 Кб оперативной памяти. 512 байт флеш памяти, 8 Кб памяти под программу. Плюс АЦП, ЦАП и еще много полезной мелочи. И к тому же 23 линии ввода вывода. А еще можно перезаписывать программу ну почти неограниченное количество (10 000 раз).
Теперь самое приятное - для его программирование кроме софта нужно лишь 5 проводков. Не надо паять никакого программатора, просто подключаем к LPT пятью проводками.
Программировать лучше на С. Дока на avr123.nm.ru и там же ссылка на компилятор http://www.hpinfotech.ro/cvavre.zip
Неплохой консольный программатор здесь - http://ln.com.ua/~real/avreal/http://ln.com.ua/~real/avreal/
Ссылки:
atmel.com - сайт производителя, документация на английском
gaw.ru - документация на русском
avr123.nm.ru - отличный самоучитель.
Теперь жду вопросов. И есть предложение - сделать маленький девайсик с нуля. С полным разбором каждого элемента. Ну только нужны предложения - полезные и простенькие.
ПС: На AVR реализовал: систему управление температурой (обогреватель в комнате), светильник с изменением яркости в зависимости от освещение (чтобы ночью клавиатуру было нормально видно), шахматные часы, и на диплом систему поиска жучков и еще много никому не нужных мелочей.
ПСС: Предложение для MegaDeth - можна сделать один и тот же девайс но паралельно на AVR и PIC?
|
|
|

13.11.2007, 10:58
|
|
Moderator - Level 7
Регистрация: 19.10.2007
Сообщений: 225
Провел на форуме: 1260519
Репутация:
298
|
|
Отлично! Развивается здоровая конкуренция!  ) Как человек свято преданный пикам, AVR никогда не занимался, так что будет очень интересно посмотреть.
Для начала хотелось бы увидеть тот же "Hello, World!", как и в параллельной теме MegaDeth - несколько светодиодов мигающих с кратной частотой. Пожалуйста схему в студию, текст программы на С. Убедительная просьба давать подробные комментарии к строкам, связанным с конфигурацией контроллера.
|
|
|

14.11.2007, 06:08
|
|
Постоянный
Регистрация: 04.11.2007
Сообщений: 331
Провел на форуме: 1724067
Репутация:
806
|
|
Далее
Все что дальше буду писать относится к микроконтроллеру ATmega8.
Надеюсь скачали компилятор (ссылка выше) и таблетку к нему. Если таблетку не найдете, то пишите – помогу. (кстати, модераторы, может разрешите мне прикреплять файлы, без этого неудобно  ).
Итак, запускаем CodeVision. Создаем новый проект, дальше нас спрашивают – будем ли мы использовать мастера. Конечно, жмем ОК. Дальше в вкладке Chip выбираем наш МК, а в поле частота вводим 1 МГц (по умолчании внутренний генератор настроен именно на 1 МГц). Дальше идем на вкладку Ports – и всем линиям на порте В указываем – out. Дальше выбираем файл-генерировать, сохранить и выход. Вводим имена файлов и постоянно жмем ОК.
Ухты! Как много кода сгенерировано. Но на самом деле его можна очень сильно урезать.
Теперь на основе этого кода напишем программу для для мигания светодиодами. Тоесть 8 светодиодов, горят через один и раз в секунду меняются местами - эфект бегущих огоньков.
Текст программы:
Код:
//будем использовать МК mega8
#include <mega8.h>
//нужны функции для роботы с задержками
#include <delay.h>
void main(void)
{
//порт B будет работать на выход
DDRB=0xFF;
//в порт B записываем 10101010b
PORTB = 0xAA;
while (1)
{
//инвертируем значения на выходе порта B
PORTB ^= 0xFF;
//ждем одну секунду
delay_ms(1000);
};
}
Схему подключения рисую, опубликую позже
|
|
|

14.11.2007, 06:32
|
|
Постоянный
Регистрация: 04.11.2007
Сообщений: 331
Провел на форуме: 1724067
Репутация:
806
|
|
Схема

какая гадость рисовать в Paint, но под рукой ничего другого нету.
Квадратик красного цвета нужно повторить к каждой линии порта В - PB0,PB1,PB2,PB3,PB4,PB5,PB6,PB7
И хорошая новость, что никакой другой обвязки не надо. После подачи питание МК сразу начнет работать на частоте 1Мгц.
На днях помещу программатор, чтобы можна было каждому попробовать.
Пишу с расчетом на какие то минимальные знание в МК, но если будут вопросы или что-то не будет получатся отвечу.
|
|
|

14.11.2007, 09:42
|
|
Moderator - Level 7
Регистрация: 19.10.2007
Сообщений: 225
Провел на форуме: 1260519
Репутация:
298
|
|
Зачетно! Пока все понятно.  На счет схем: я рисую в P-CADе 2004. Помоему, если контроллерами заниматься, к его изучению все равно придешь в конце концов. Давай, presidentua, ждем продолжения! 
|
|
|

14.11.2007, 17:51
|
|
Постоянный
Регистрация: 04.11.2007
Сообщений: 331
Провел на форуме: 1724067
Репутация:
806
|
|
Согласен P-CAD нужен будет. Но сейчас в основном пользуюсь Proteus. Хотя это отличный симулятор, но принт-скрин дает отличные рисунки. Выше же его не использовал чтобы показать внешнюю обвязку полностью ( Proteus некоторые вещи сам добавляет ).
ПС: Ночью размещу программатор. Ждем-с-с-с
|
|
|

14.11.2007, 19:05
|
|
Участник форума
Регистрация: 08.11.2006
Сообщений: 208
Провел на форуме: 1038169
Репутация:
184
|
|
presidentua, чуваккк =))) рад видеть новых микронотроллерщиков =)))))))
Теперь самое приятное - для его программирование кроме софта нужно лишь 5 проводков. Не надо паять никакого программатора, просто подключаем к LPT пятью проводками.
я так понимаю высоковольтное программирование?...+12в? не ну я знаю есть фича такая что подвод питания, перевод в режим программирвания, данные, такт, масса - 5 проводов всего (собсна больше и ненадо, протоколы одинаковые то =))) )
но я бы советовал резисторы воткнуть на 4,7 Ком...
и вообще юзать LVP (Low Voltage Programming)
я разрабатываю девайс сейчас "мигающее сердце" на светодиодах... я взял мощный контроллер с 22 линиями, чтобы отдельным светодиодом можно было управлять без заморочек с разширителями ввода вывода, ктомуже ШИМ аппаратный есть. контроллер PIC16F873A... это конечно как по мухе из пушки но я хотел деффке на денюху подарить - всеравно не успел
кстати хороший подарок на 8 марта будет =)))
я печатку 10 раз переделывал. я решил что небуду играничивать ток светодиодов резисторами, пусть ярко горят, но контроллер может не выдержать (для всего порта макс 25 Ма) светодиод один жрет 3 Ма примерно... вообще их дофига и больше но если брать слаботочные и яркие то разоришся =)))
вывод - ставить транзисторные ключи...
вот такая сумашедшая идея у меня =))))))))
еще у меня в задумках просто сделать Блок управления аудиомикросхемами (TDA 7313, аудиоконтроллер. по I2c управляется, регулирует громкость, бас,тембр, балланс двух своих каналов) наподобие того что у мя ща усилке но усовершенствовать надо, например экран цветной с часами и пр.
в мечтах у мя собрать ЦАП и юзать цифровой звук (S\PDIF)
|
|
|

14.11.2007, 21:45
|
|
Moderator - Level 7
Регистрация: 19.10.2007
Сообщений: 225
Провел на форуме: 1260519
Репутация:
298
|
|
Да, Мега, просторное ты поле деятельности задумал. Молодец! 
Ты давай в пиковскую тему возвращайся! Ато переметнулся на сторону вероятного соперника, понимаете ли.  ))
|
|
|
Перспективные проекты на МК |

15.11.2007, 18:15
|
|
Moderator - Level 7
Регистрация: 19.10.2007
Сообщений: 225
Провел на форуме: 1260519
Репутация:
298
|
|
Перспективные проекты на МК
Возникла идея обсудить кого какие проекты интересуют. Что-бы хотелось сделать или посмотреть как это сделают другие  . Особенно интересна возможность применения в сфере соответствующей направленности сайта. Короче, теме нужен КРЕАТИВ!  )
Полет фантазии не ограничен! Я, например, давно мечтаю сделать робота-шпиона: машинка на колесах с камерой и микрофоном. 
|
|
|

16.11.2007, 04:56
|
|
Постоянный
Регистрация: 04.11.2007
Сообщений: 331
Провел на форуме: 1724067
Репутация:
806
|
|
Интересуют много интересных тем, но к сожалению на реализацию одних не хватает времени, а на других не хватает УМА.
Например:
Замок на отпечатках пальцев.
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|