Библиотека, читать онлайн, скачать книги txt

БОЛЬШАЯ БИБЛИОТЕКА

МЕЧТА ЛЮБОГО


Схемы на avr микроконтроллерах

AVR devices В виду нехватки в хозяйстве термометров и в виду избытка халявных термодатчиков и еще кое-валяющихся без дела деталек, решил сбацать себе этот девайс. Как известно из прошлого поста, датчик измеряет не только температуру но и влажность. Для меня практическая польза от этой фичи сомнительна, но поскольку кому-то возможно пригодится — решил задействовать и её. Кстати это пожалуй один из самых моих долгих проектов: софт писался месяц! Разработка затянулась главным образом из-за нехватки свободного времени и глючности кое-какого компилятора от кое-какой фирмы. Но обо всём по-порядку. Наконец то мои ручонки дошли до этого замечательного и халявного датчика от щедрой компании Sensirion. Напомню, что я получило его и аж в количестве двух штук, за что компании большое спасибо :- Начнем обзор датчика с его внешнего вида. Датчик представляет собой крошечную козявку величиной примерно с тетрадную клеточку. Феном припаять раз плюнуть. Сверху датчика есть отверстие через которое в него поступает воздух для замера влажности и температуры, настоятельно не рекомендую его чем либо заляпывать, особенно всякими флюсами типа лти120 итд. Чтоб не быть голословным вот фотка: После того как NXP мне кучу всяких микросхем с интерфейсом i2c, я начал их раскуривать некоторые из. Как известно работа с i2c устройствами сводится к тому, чтоб записать или считать значения хранящиеся в определённых регистрах микросхемы. Обычно на время изучения какой либо микрухи я городил на своей небольшой макет из контроллера, программатора, RS232 UART преобразователя и непосредственно самой микросхемы. Через компьютер посылаются команды и контроллер что-то передаёт по шине i2c или наоборот читает, отправляет стартовые и стоповые посылки итд. Примерно таким же образом у меня происходит процесс изучение микросхем с интерфейсами SPI и 1-wire. Чтоб не городить каждый раз тестовый макет было принято решение собрать универсальный отладчик с поддержкой протоколов i2c SPI и 1-wire. Судя по всему настало время и на страницах моего блога осветить такую небезразличную для сердца русского человека вещь, как халява. До недавнего времени я сам не особенно верил в этот «бесплатный сыр», все эти попытки заполучить что-то стоящее бесплатно казались почти невозможными или казались требующими каких-то тайных знаний или усилий. Но как потом показала практика всё не так сложно и плохо. Начнем с того что разберемся что такое семплы, с чем их едят и для чего они нужны. Samples — это образцы. В нашем случае это образцы различных микросхем, транзисторов, светодиодов, отладочных плат и так далее. Иногда может возникнуть вполне здравый вопрос: А нужно ли вообще гоняться за этой халявой? Если деталька труднодоступная или дорогая — то можно смело сказать что да! Но пожалуй самый главный критерий по которому можно однозначно определить нужно ли запрашивать семпл — это необходимость! Если деталька не нужная то не нужно заказывать её «просто чтоб была, а вдруг пригодится». Как показывает практика не моя — не пригождается, а просто валяется мертвым грузом а потом выбрасывается с мусором. Потребовалось мне недавно организовать беспроводной двусторонний обмен данными между двумя устройствами в зоне прямой видимости. Конечно для этой цели можно заюзать дешевенькие радиомодули, например о которых писалось ранее. Но это как палить из пушки по воробьям, ведь в данном случае вполне годится ИК канал. Одна из немаловажных особенностей разработанного удлинителя, заключается в прозрачности работы. Это означает что устройства находящиеся по разные стороны удлинителя будут общаться между собой точно так же как если бы они были соединены двумя обычными проводами. Но одно ограничение по части прозрачности все же есть и заключается оно в том, что передача данных может происходить только в полудуплексном режиме. Итак, что же представляет собой этот удлинитель: В связи с возросшим количеством однотипных вопросов решил ответить на них здесь: q: Ты жив? Немного разгребу дела и времени станет побольше. Почти всё то что мы рассматривали в учебном курсе ранее, справедливо не только для микропаскаля, но и для «большого» паскаля для ПК. Начиная с этой части так же будут рассматриваться некоторые специфические особенности паскаля для AVR. Но начнем мы с пары слов о пользовательских функциях и процедурах в микропаскале. Функция или процедура это некоторый код который может быть вызван из любой части основной программы с какими либо параметрами или без. После того как процедура или функция отработала, управление возвращается основной программе. Между функциями и процедурами всего одно различие: Функция может возвращать какое либо значение, а процедура не. Ну работал я им как все нормальные люди, а потом случайно наткнулся на 4-х пиновый разъем спрятанный под крышечкой. Ну и разумеется у меня возникло желание узнать для чего всё это. Как в последствии оказалось через этот интерфейс штангенциркуль непрерывно посылает результаты своих измерений. Вооружившись паяльником и осциллографом я стал раскуривать протокол по которому наш девайс шлёт данные. И вот что из этого получилось. Сегодня на нашем операционном столе новый гость, это продукт компании Microchip расширитель портов MCP23008-E. Конечно если нам нужные ноги-выходы то можно взять и не париться. Если нужны ноги-входы то и тут есть решение на жесткой логике. Если же нам нужны одновременно входы и выходы да еще и управляемая подтяжка для входов, то расширитель портов это пожалуй самое нормальное решение. Что касаемо цены девайса то она весьма скромная — примерно бакс. В данной статье я попробую детально описать как рулить данной микросхемой при помощи микроконтроллера AVR. В данном уроке мы рассмотрим основные конструкции языка без которых не обходится почти ни одна программа — это условия,структуры множественного выбора и циклы. Начнем по порядку с условий. Условный оператор — оператор проверяющий истинность условия, и в зависимости от этого принимающий решение что делать. В общем виде выглядит так: if Условие then Оператор 1 else Оператор 2 Условие — некоторое логическое выражение принимающие значение true или false. Если условие истинно, то будет выполнен Оператор1 а если ложно то Оператор2. Ключевое слово else не является обязательным. Пример: Итак на календаре 7 апреля. Ровно год назад я написал первый пост с которого зародился этот сайт. Хочется сказать спасибо восьмистам читателям которые заходят ко мне каждый день, за проявленный интерес к моему проекту, приятно осознавать что то что я пишу хоть кому-то. Двойное спасибо тем кто не только читает но и комментирует записи, и задаёт каверзные вопросы. Они заставляют меня лучше разобраться в чем-либо и пошевелить мозгами. Короче, оставайтесь на связи. Впереди еще много интересного! В связи с написанием диплома, времени у меня поубавилось, но сайт будет обновляться в обычном порядке. И наконец отдельное спасибо тем кто делаетпусть небольшие но всё равно приятно. Кстати теперь когда появилась реклама от яндекса можно в знак благодарности кликнуть по ней и я получу за это небольшое вознаграждение. Предложения, вопросы и поздравления принимаются в комментариях! Ура товарищи :- Каких только блоков питания у меня не. Самой различной мощности,на самые разные напряжения и ток. У всех у них было один недостаток: они были без корпуса и там постоянно что-то отваливалось, замыкало итд. Конечно можно было бы склеить нормальный корпус из пластика, но очень уж хотелось красоты и прочности. В итоге придушил жабу, взял две тыщи денег и пошел выбирать себе блок питания. Выбор пал на Mastech HY1803D. Его характеристики и цена меня вполне устраивали. Были точно такие же блоки но послабее, а разница в сто рублей, в итоге взял именно эту модель. Перед тем как начать писать код необходимо понять структуру программы на языке микропаскаль. Итак начнем разбираться по порядку. Если нужна беспроводная передача данных и в то же время не хочется самостоятельно городить радиоканал, то проще всего воспользоваться готовыми радиомодулями коих сейчас выпускается великое множество. Частоты, мощности и цены у радиомодулей самые разные. Для моей задачи дальность была не сильно критична, и я взял на пробу парочку бюджетных радиомодулей TR24a. О них в интернете пишут самые противоречивые мнения. У кого-то дальность связи 6 метров, у кого то под 60 метров. Короче я решил провести независимое расследование :- Сейчас существует несколько языков высокого уровня на которых можно писать программы для микроконтроллеров AVR. У каждого из них есть свои преимущества и недостатки. О них уже много раз писалось в интернете и вряд ли я смогу рассказать о них что-то новое. Но об одном из этих языков информации практически. Для того что-бы устранить этот пробел, я начинаю писать свой учебный курс о языке микропаскаль.

Карта сайта

67 68 69 70 71 72 73 74 75


copyright © strausy.com.ua