_noise_ сейчас попробую тебе популярно обьяснить что такое ШИМ. на линии МК, настроеной на вывод может быть только 2 устойчивых положения, лог 1 (+5в) и лог. 0 (0 В) как можно заставить светодиод загораться плавно? по-сути, нужно увеличить силу тока, проходящего через него. но напряжение у нас фиксированное, либо 5В либо 0В. как быть? Представь диаграмму, где на линии вывода с определенной частотой изменяется этот лог. уровень так, что время пребывания в лог 1 равно времени прибывания лог. 0. вот тогда скважность ШИМ = 50%. Скважность ШИМ это отношение времени прибывания лог. 1 к периоду. соотвественно чем оно больше тем дольше удерживается лог.1. при достаточной частоте ШИМ незаметно что уровень изменяется, а скважность влияет на ток, проходимый по выводу МК. так вот и управляется светодиод))) достаточно линейно от максимума к минимуму и от минимума к максимуму изменять скважность, и на выводе мы получим синусоидальный сигнал........... Шим бывает программный, бывает аппаратный. программный шим это когда все это делается программно, тоесть удержание лог. 1 и пр... если МК имеет аппаратный ШИМ - то надо настроить линию на вывод, сконфигурировать ее как ШИМ, настроить предделители (частотоа шим. делителями выбирается частота относительно тактовой частоты МК) и настроить скважность. (которую впоследствии можно изменять) но скважность указывается не в процентах, а числом в регистре. количество бит, отвечающих за скважность может быть разным. чем больше, тем точнее можно указать скважность... вообщем ллучше конечно аппаратный ШИМ) гемору меньше) открыл ща исзодник свой сам нефега не разберусь, "комменты жгут"(c) но работает все норм)
Такое вполне возможно, для этого нужно составить таблицу значений синуса которая по прерыванию в таймере (например Т0) будет заноситься в регистр таймера с ШИМ (например Т1). Регулирование частоты осуществляется изменением периода прерывания таймера Т0. Все это сделать достаточно просто. Рассчитывать значения синуса в режиме реального времени это очень ресурсоемкая задача, поэтому лучше заранее рассчитать значения синуса и брать их из таблицы. Рассчитывать синус нужно не для всех 360 градусов, а только для 90, т.к. дальнейшие значения будут повторяться. Кстати, на каком МК планируется все это реализовать?
Всем доброго дня и суток! вот я наконец то вспомнил что хотел очень сильно собрать, но не хватило мозга, возможно вы мне поможете, уважаемые форумчане. Итак, имеем контроллер пик. 16/30 серия не важно(важно?) имеем дисплей, точечный. гвоздь нашей задачи - карточка Memory Stick Duo на 64 метра. Вопрос: как это дело сконтачить на юсб 2.0??? видел проекты к авр но это авр основная фишка девайса это флешка, а на дисплее отображает статистику а так же файл какой передает Буду рад услышать ваши предложения
Что то тут долго никто не писал))) Я в МК ноль. Но сейчас делаю такой девайсик, как машинку на радиоуправлении(детство в жопе заиграло) можно ли сделать так, чтоб управление по радио осуществлялось не стандартным(тоновым) методом, т.е. собирпть генератор частоты и дешифраторы к ним, а осуществить это все при поможи МК , у меня в пульте стоит МК и в модели, в пульте МК синхронизируется с кнопками и подает команды через генератор(один) частоты в радо предатчик, а тот отправляет на модель, модель принимает дешифрует дешифратор передает МК тот их анализирует и выполняет нужную команду. Помогите плиз. Живу в незалежний державi Украiнi , так что сильно не разбалован железом типа МК и прочих датчиков.
То есть все происходить должно не с помощью стандартных каскадов генераторов звуковых частот на транзисторах, сколько каскадов столько и команд, а за щет передачи с пульта на подель сигнала вида 0001011111000001110011110000111 (прим)
почему же интерисуються)) кому интереснохотелось бы послушать ваше мнение с чего собственно начать схемы там статьи)) а даташиты эт для мну зло...отец занимаеца ремонтом но в контроллерах дуб дубом))
Ну во-первых узнав для начала о ЧМ и АМ модуляции несложно понять что в эфире 0 и 1 это всетаки сигнал определенной частоты, необезательно воспринимаемый на слух. Однако, чтобы на приемнике декодирующее устройство воспринимало ноль как ноль, единицу как единицу всеже сигнал придется кодировать на передатчеке и декодировать. Проще всего кодировать в звуковые частоты для АМ-модуляции, да и для ЧМ в большинстве случаев тоже. А вот на какой базе кодировать выбирать вам Железный феликс - отличный ресурс по роботостроению, рекомендую. _http://ironfelix.ru/
Контроллер может лишь выполнять обработку поступающей на него в виде логических нулей и едениц информации, для этого передатчик должен уметь передавать какойто код (код нажатой кнопки), а приемник должен принять этот сигнал и преобразовать этот код в цифровой, как будет осушествлена передача данных между приемником и передатчиком совершенно не важно, будет это АМ модуляция, или ЧМ или это вовсе будет раелизовано по средствам инфракрасной передачи данных. Но поскольку человек только начинает свое знакомство с МК, я предлагаю начать с более простого, а именно с проводной передачи данных, например использую стандартный интерфейс UART, сперва на нем отладить все что касается системы управления силовой частью и пр., а уж потом допустим изменением программы и заменой провода на беспроводное соединение (могу как самое простое и дешоаое решение порекомендовать инфракрасную передажу данных (инфракрасный светодиод + фотоприемник например TSOP1736) ) можно будет продолжить эксперементы и изучение МК.
программная реализация USB занимает уйму места, а если еще и передаваемый файл поглядеть на экране, то это надо поддержку ФС, чекить какому файлу соответствует читаемый\записываемый сектор ну и так далее... как только представлю обьем кода... короче на контроллере это не сделать даже группе программеров. с такими функциями нет не только флешек, но даже и плееров с телефонами! стоит задуматься, почему
По поводу программной реализации USB не так уж и много кода она занимает, другое дело что она занимает много ресурсов самого процессора, но опять же зачем изобретать велосипед, когда в природе существует множество контроллеров с аппаратной поддержкой USB! А по поводу ФС, тут уже нужна оператива, но тем нименее это вполне можно реализовать например на ATMega8 у которого всего 1кбайт ОЗУ, но конечно только в режиме только чтение, для записи тут уже оперативы не хватит. Я сам лично видел множество проектов программного mp3 плеера на простеньких МК с поддержкой графического дисплея. Конечно в этих плеерах в качестве mp3 декодера выступала специальная микросхема, такая как VS10xx
Привет самоделкины ! Есть отличная идея , но я не знаю как её реализовать. вот на этом сайтике http://www.tokyoflash.com/ru/watches/1/ есть отличные часики , неплохо бы было нам самим такое намуть насколько реально ?
Упрвление нагрузкой через usb by МК AVR ну раз сказали тему возрождать, придется возрождать ее с вопросом ламеров(т.е меня ) давно интересовался вопросом управления нагрузкой(хотя б диодом) через usb. Видел очень много тем где люди начинали от переходников usb->LTP/com , заканчивая написанием собственных драйверов. Но это в основном была теория, до практики не доходило. *Были более ленивые(или у которых много денег), советовали купить вот такие штучки. У самого слюни текли, но было жалко денег и толком ничего сам не узнаешь. Вопрос: насколько сложно реализовать подобную вещь на МК AVR? Опять же слышал, что надо писать программную совместимость с usb, другие грят что в некоторых AVR есть поддержка USB Подскажите пожалуйста с чего начать? Натолкните по возможности на тему, литературу
В некоторых AVR и вправду есть поддержка аппаратного USB. есть даже с хостом для флешки, но вот реализовать свое устройство на таком USB действительно дело не для ламеров, так что лучше не связываться с такими вещами (пока что), а например использовать преобразователь USB<->UART на специально обученных микросхемах таких как FT232 или PL2103. Но если всеже очень хочется подключить МК напрямую к ПК через USB то можно начать эксперименты с проектом AAVR309 В нем программная реализация USB интерфейса на МК и драйвера для ПК, там же есть и программа с помощью которой можно поморгать светодиодом и т.д. Из литературы для изучения AVR могу посоветовать Евстифеева, рассказано все простым и доступным языком, с примерами.
Это мой девай. Ряд светодиодов которые крутятся моторчиком 220V. Включая светодиоды в нужный момент получаем рисунок. Управляет всем этим делом микроконтролер ATmega8 с моей прошивкой. PS 2ЕГО-05 это моя группа в технаре.