PDA

Просмотр полной версии : Микроконтроллеры, и с чем их едят!


Микола
24.11.2010, 23:31
Ну вот кажется и я добрался до микроконтроллеров. Собирался давно, но все как то не складывалось. Ни так давно приобрел программатор, пару плат для атмеги 16, на которой есть печать для необходимого обвеса мк, и поле для "свободного творчества".
помучившись некоторое время, запрограммировал свою первую микруху. Правда. программки пока не пишу но надеюсь освоить.
Давайте развивать тему, авось всем польза будет.

gda98
24.11.2010, 23:40
:yes: Я за! :i_am_so_happy:

Микола
24.11.2010, 23:54
Вот эта плата. На ней еще индикатор двухстрочный 16 символов.

Микола
24.11.2010, 23:58
Так выглядит программатор.

gda98
25.11.2010, 00:09
Интересная игрушечка :)

Микола
25.11.2010, 00:14
Пока действительно игрушка, но контроллер для ветряка уже начал отрабатывать.

Сергей
25.11.2010, 00:53
Давайте развивать тему, авось всем польза будет.Давай:yes:. Но для начала обьясни что такое Атмега. И какая конечная цель...

Mike
25.11.2010, 22:43
Атмега это "жаргонное" название одной из разновидностей 8 разрядных контроллеров фирмы "Atmel", одни из наиболее распространённых 8 разрядных контролеров, Довольно "просты" в освоении, по и_нету имеется много форумов и документации на Русском.

Valeriy
25.11.2010, 23:40
А мои любимые контролеры http://www.deepseaplc.com/ 5510 и 7510. Правда они чисто для генераторов, но Наверняка есть подобные и для ветрогенераторов. Такая панелька стоит на порядок дешевле катерпиллеровских, вудварда, PowerWizard. А возможности на порядок больше перечисленных. Без всяких дополнительных дорогих прибамбасов, типа синхронизаторов, делителей нагрузки и т.п. собирает в параллель 15 машин и делит реактивную и активную мощность до 1А. Главное, доступ к информации и программам бесплатен. Такой бы найти для ветряка.

Mike
26.11.2010, 09:31
Валера, хорошие контроллеры, но здесь имеются ввиду не законченные изделия а микросхемы микроконтроллеров.

Сергей
26.11.2010, 10:52
Так никто и не ответил. Какая конечная цель? Вчера лазал по просторам инет и там кто-то собрал на такой штуке (наверное) амперметр с вольтметром. Если это то, тогда такой вопрос. Эта микросхема и есть микроконтролер? В её функции входит тольно показывать на ЖКИ какие-то символы, то что ты запрограммируешь, или ещё что то?

gda98
26.11.2010, 18:29
Сергей,микроконтроллер может все, управлять, измерять, отображать, считать, писать, записывать, выполняя программу записанную в него.

Александр
26.11.2010, 20:49
А вот очень полезный ресурс по изучению Flowcode: http://flowcode.info/index.php/books/rem/3-rem

Микола
26.11.2010, 23:20
Все верно, возможности мк очень обширны. Главное программа, которая и будет задавать алгоритм работы устройства на мк. Если раньше потребовалось бы напаять кучу логики, то сейчас с этим справится самая простенькая атмега.

Сергей
30.11.2010, 01:08
Все верно, возможности мк очень обширны. Главное программа, которая и будет задавать алгоритм работы устройстваРебята, а можно с этого места поподробнее. Несколько дней на всех форумах, абсолютная тишина, как будто перед взрывом. Я, и не только я, прекрасно понимают суть обстановки после сделанного ветряка. И многие, как не крути, идут по пути Бойко... Но давайте-же, ведь время идёт, займёмся чем-то новым?
В проэкте Миколы есть рациональное зерно, ЧТО НУЖНО??? Сходить на рынок и купить Атмегу? Схожу и куплю, а дальше что? Тупо смотреть на неё? Вопрос, почему всем всё равно, почему Серкатый не выкладывает деталей. Так зачем это всё???

gda98
30.11.2010, 01:35
Сергей, похолодало конкретно - все по норам :P , а у меня еще работы выше крыши - на любимое занятие времени просто не остается - устаю как собака :hang1:
благо, нашел время сделать этот форум, с ним тоже проблем хватает -постоянно поругиваюсь с хостерами, вот форум перетащил на другой хостинг, так у тогого хостера была одна болячка - тормоза, у этого другая - база глючит, сейчас вроде устранили - тьфу три раза через плече. :angel:
Контоллеры штука очень хорошая, но лично у меня сейчас не получается даже заняться продолжением изготовления генератора из "Вятки"
Сейчас у нас время 0ч 28мин., а я еще на работе и до утра придется еще пахать. :drinks: правда с пивом - веселее :# - на работе сервера меняю, параллельно ноутбуки ремонтирую и еще всякой ерунды по мелочи ...

Александр
30.11.2010, 03:11
Ребята, а можно с этого места поподробнее
Тогда встречный вопрос: Вы с программированием дело имели? На каком-нибудь нибудь языке программирования?
С этого и нужно будет начинать. Изучать сам контроллер и язык программирования, на котором предполагается работать.
Что касается Sercat-а, то у него и без этого дел выше крыши. Он-то один, а нас-то много... И все чего-то хотим... Поэтому, например Микола - сам решил изучить программирование, для начала - на простейшем уровне, а дальше это начнёт нарастать, как снежный ком. Да и я сам тем же занимаюсь. В свободное от работы над ветряком время.

gda98
30.11.2010, 03:21
Вот к примеру "заброшеный проект" на микроконтроллере "WindPower wireless microlab"
http://snim.flybb.ru/topic227.html
даже блок-схема есть и электронные схемы, отсалось собрать, софт напишут, но я еще даже не прикасался к сборке.... :#

Сергей
30.11.2010, 03:41
Поэтому, например Микола - сам решил изучить программирование, для начала - на простейшем уровне,Александр, прошу прощения если буду обращаться Саша,... Саш, пожалуйста прошу выслушать дурака... Год назад я ударился в пневмо ружья. Ну невозможно вычеслить, или даже предположить траэкторию полёта пули. Поэтой простой причине АЭргунеры создали ресурс, или точнее сказать ветку, Которая получила такой резонанс...
Мама родная держись, Вот я о чём. А вы о контролерах...

Микола
02.12.2010, 00:53
Вот на мой взгляд доступное описание

Итак, что вообще такое микроконтроллер (далее МК)? Это, условно говоря, маленький компьютер, размещенный в одной интегральной микросхеме. У него есть процессор (арифметическо-логическое устройство, или АЛУ), flash-память, EEPROM-память, множество регистров, порты ввода-вывода, а также дополнительные «навороты», такие как таймеры, счетчики, компараторы, USARTы и т. п. Микроконтроллер после подачи питания загружается и начинает выполнять программу, записанную в его flash-памяти. При этом он может через порты ввода/вывода управлять самыми разнообразными внешними устройствами.

Что же это означает? Это значит, что в МК можно реализовать любую логическую схему, которая будет выполнять определенные функции. Это значит, что МК – микросхема, внутреннее содержимое которой, фактически, мы создаем сами. Что позволяет, купив несколько совершенно одинаковых МК, собрать на них совершенно разные схемы и устройства. Если вам захочется внести какие-либо изменения в работу электронного устройства, то не нужно будет использовать паяльник, достаточно будет лишь перепрограммировать МК. При этом не нужно даже вынимать его из вашего дивайса, если вы используете AVR, т. к. эти МК поддерживают внутрисхемное программирование. Таким образом, микроконтроллеры ликвидируют разрыв между программированием и электроникой.

AVR – это 8-битные микроконтроллеры, т. е. их АЛУ может за один такт выполнять простейшие операции только с 8-ми битными числами. Теперь пора поговорить о том, какой МК мы будем использовать. Я работаю с МК ATMega16. Он очень распространенный и приобрести его можно практически в любом магазине радиодеталей где-то за 100 руб. Если вы его не найдете – тогда можно купить любой другой МК серии MEGA, но в этом случае придется искать к нему документацию, т. к. одни и те же «ножки» разных МК могут выполнять разные функции, и, подключив, казалось бы, правильно все выводы, вы, может быть, получите рабочее устройство, а, может быть, лишь облако вонючего дыма. При покупке ATMega16 проверьте, чтобы он был в большом 40-ножечном DIP-корпусе, а также купите к нему панельку, в которую его можно будет вставить. Для работы с ним потребуются также дополнительные устройства: светодиоды, кнопки, разъемы и т. п..

ATMega16 обладает очень большим количеством самых разнообразных функций. Вот некоторые его характеристики:
Максимальная тактовая частота – 16 МГц (8 МГц для ATMega16L)
Большинство команд выполняются за один такт
32 8-битных рабочих регистра
4 полноценных 8-битных порта ввода/вывода
два 8-битных таймера/счетчика и один 16-битный
10-разрядный аналогово-цифровой преобразователь (АЦП)
внутренний тактовый генератор на 1 МГц
аналоговый компаратор
интерфейсы SPI, I2C, TWI, RS-232, JTAG
внутрисхемное программирование и самопрограммирование
модуль широтно-импульсной модуляции (ШИМ)

Сергей
02.12.2010, 03:38
Вот на мой взгляд доступное описаниеНу это хоть что-то, а то вообще тёмный лес. Программирование не вынимая из платки, это здорово. А теперь такой ворос. Ну вот ты купил его уже на платке с кнопочками и программатором + дисплей. То есть типа сам не захотел со всем этим возиться. Типа собирать это всё в кучу, травить печатку и всё такое. Правильно я понял? Тут вот на глаза попалась вот такая схемка. Это из этой системы?

Сергей
02.12.2010, 20:31
В результате долгих и упорных чтений всяких статей по МК (аж глаза болят и в голове шумит) Уменя есть несколько вопросов.

При этом не нужно даже вынимать его из вашего дивайса, если вы используете AVR, т. к. эти МК поддерживают внутрисхемное программирование.А PIC контролеры, такой функцией необладают? Чем отличается Атмега8 от Атмега16? Сколько в них аналоговых входов и сколько тех что могут считать импульсы? Попросту говоря, сколько я могу вольтметров и ксолько тахометров использовать одновременно. LCD только на 2 строчки можно использовать? я так думаю что должны быть и на 3 и на 4 строчки. Можно ли часть данных выводить на LCD а часть на другие индикаторы? И как это оно там у Серкатого, ну ладно мощность, как оно ещё и выработанное количество электричества считает? Чудеса да и только...
P.S Пожалуйста, если можно поподробнее.

Сергей
03.12.2010, 20:01
Завтра базарный день на радио рынке, а все молчат как партизаны:)...

gda98
03.12.2010, 20:43
PIC контролеры, такой функцией необладают?
обладают, только языки програмирования немного отличаются

Сергей
06.12.2010, 11:43
Микола, где-то подевался... Ходил я на рынок, смотрел на эту красоту. Атмег запаяных на платке как у Миколы, небыло. Так что если чего-то хочется, то нужно начинать всё с нуля. Наверняка все знакомы с этой разработкой http://elfly.pl/multimetr/multimetr.htm Вроде как и не очень сложно и не дорого и вполне повторяемо. Есть разводка печатки и файлы прошивки. Осталось только это всё подкорректировать под наши нужды.

махно
06.12.2010, 16:11
Сергей, посмотрите на МК тутhttp://www.e-voron.dp.ua/catalog/atmel магазин находится в Днепропетровске, для не местных есть доставка.

Микола
08.12.2010, 00:03
Ну это хоть что-то, а то вообще тёмный лес. Программирование не вынимая из платки, это здорово. А теперь такой ворос. Ну вот ты купил его уже на платке с кнопочками и программатором + дисплей. То есть типа сам не захотел со всем этим возиться. Типа собирать это всё в кучу, травить печатку и всё такое. Правильно я понял? Тут вот на глаза попалась вот такая схемка. Это из этой системы?
Нет, купил только плату, на ней разводка под контроллер и необходимый "обвес" -кварц, кондеры, и стабилизатор "кренка". А уже запаивал все сам. А свободное поле там макетная плата.
По поводу схемы- мне кажется вполне рабочая. Вот только адаптироватть бы еепод AVR? Я пока на пиках не готов работать.
А вообще, програмка получается очень простая для ветряка. Мне Саша помог с прогой для программирования, так что за пару ночей я свою первую прогу и замутил. Интересно аж пищит!

Кстати я таких плат купил и на атмегу 8, 16 (онаже и жля 32). Сейчас начал делать осциллограф на атмега 32. Правдв графический дисплей взял отечественный, но процессор тот что в исходнике. Будет готов -выложу

Добавлено через 8 минут
В результате долгих и упорных чтений всяких статей по МК (аж глаза болят и в голове шумит) Уменя есть несколько вопросов.

А PIC контролеры, такой функцией необладают? Чем отличается Атмега8 от Атмега16? Сколько в них аналоговых входов и сколько тех что могут считать импульсы? Попросту говоря, сколько я могу вольтметров и ксолько тахометров использовать одновременно. LCD только на 2 строчки можно использовать? я так думаю что должны быть и на 3 и на 4 строчки. Можно ли часть данных выводить на LCD а часть на другие индикаторы? И как это оно там у Серкатого, ну ладно мощность, как оно ещё и выработанное количество электричества считает? Чудеса да и только...
P.S Пожалуйста, если можно поподробнее.


Чем отличается один от другого лучше посмотреть документацию, на вскидку- числом портов ввода-вывода, тактовой чстотой, флеш памамятью ну и так далее. Чем старше мк, тем выше возможности. Но подбарать лучше под конкретную задачу. Впринципе для начала за глаза хватит атмеги 16.
Дисплеи бывают и четырехстрочные. А выводить можно и на дисплей и на светодиоды, и на семисегментные одновременно, главное что б портов хватило.

Сергей
08.12.2010, 00:15
По поводу схемы- мне кажется вполне рабочая. Вот только адаптироватть бы еепод AVR? Я пока на пиках не готов работать.Так там-же Атмега8, Только в DIP корпусе.

так что за пару ночей я свою первую прогу и замутил. Интересно аж пищит!Я то-же 2 ночи сидел. Первую провёл в чтении уроков, вторую в эмуляторе:unknw:. Ну загорелся светофорчик, ну показал осцилограф прямоугольные импульсы. Ну и что?:sorry:Наверное рождёный ползать не полетит.:heat: Лучше подождём пока ты чего нибудь сваяешь. А я тупо повторю:))...

Микола
08.12.2010, 00:26
Там пик контроллер, я имею ввиду схему контроллера для ветряка, буржуйского.

Добавлено через 4 минуты
Так там-же Атмега8, Только в DIP корпусе.

Я то-же 2 ночи сидел. Первую провёл в чтении уроков, вторую в эмуляторе:unknw:. Ну загорелся светофорчик, ну показал осцилограф прямоугольные импульсы. Ну и что?:sorry:Наверное рождёный ползать не полетит.:heat: Лучше подождём пока ты чего нибудь сваяешь. А я тупо повторю:))...

Так для повторения полно в сети всего. У меня сейчас цель изучить все это дело, и хоть как то научиться писать проги, пусть в минимальном объеме. Потом уж как пойдет. Тут еще нужно и схемотехнику тоже штудировать. Мк конечно штука хорошая, но на выходе он может либо 0 либо 1(а это 5 вольт). А все это нужно как то приводить в нужное состояние. Вот...

Сергей
08.12.2010, 00:50
Впринципе для начала за глаза хватит атмеги 16. Дисплеи бывают и четырехстрочные. А выводить можно и на дисплей и на светодиоды, и на семисегментные одновременно, главное что б портов хватилоПонятно. Самое простое на LCD, там всё готовое. Семисигментные наверняка нужно будет усиливать транзисторами. А это отдельна платка, шлейфы и прочие. Но если я не прочь повозиться для того что-бы когда входишь в гараж, издалека были видны основные показатели, например скорость ветра. Но вся проблема в том что у меня не хватит ума самостоятельно даже такую коррекцию в прошивке сделать. А это страшно:cray:...

Woleh
09.01.2011, 14:53
Добрый день Уважаемые ветроловы! Позвольте и мне вставить свои 2 копейки! Мне тоже очень интерестна идея Миколы. свой первый ветряк я собрал 3 месяца назад и сразу стал вопрос об изготовлении контроллера заряда! Собрал контроллер по схеме описаной Бойко.работает на мой взгляд неплохо,но требует переодических перенастроек! захотелось чегото более продвинутого на МК. Перешерудил весь интернет и задавал вопросы на разных ветках.мнений было много но программу для МК под Наши нужды никто писать нехочет.нашол схемку "Приставка для измерения ёмкости зарядки".http://irls.narod.ru/bp/zar/emk.htm спаял программатор и купил почти все детали для измерителя.Планирую поставить приставку вместе с контроллером Бойко.Мне кажеться что будет неплохо работать. Жду мнения участников форума!

Микола
09.01.2011, 20:11
Woleh, Программа в данном случае не самое страшное. Давайте начнем с того, определимся что и как. За основу берем ATmega 16, ее будет вполне достаточно. Составляем структурную схему. Разрабатываем принципиальную, ну дальше посмотрим.,

Woleh
09.01.2011, 22:52
За основу берем ATmega 16
Может я и неправ(извеняюсь за ранее) но скажу прямо.Готовый маломальски нормальный контроллер на МК стоит 400евро. их делают под конкретные вещи(ветрогенераторы) и в других областях у них применений нет.Это эксклюзив. За несколько месяцев поиска и проб купить схему с прошивкой понял что это безнадёжно! Думаю что врядли найдуться желающие воттак вот за бесплатно на общее обозрение выставлять (свои труды) готовые схемы с прошивкой! Или я неправ? Может мой вариант расмотрим?Что нибудь добавим или уберём. или он неперспективный? Я сам с электроникой на три с плюсом.А нормальный контроллер собрать ну очень хочеться!!!

Микола
09.01.2011, 23:12
Возможно Вы правы. Но я и так не большой электронщик, а на пиках и совсем не хочу. У меня программатор только для AVR.
А та схема как вариант вполне подойдет. Нужно ее только доработать.

Woleh
09.01.2011, 23:51
Может пригодиться каму. Программатор PIC-контроллеров http://www.labkit.ru/html/programmators_shm?id=72 хотя их в нете полно.

Tema0
23.02.2011, 10:56
Все хорошо... только не торопимся на радиорынок.

Есть хороший программный комплекс по отладке программной и аппаратной части любой РЭА в том числе и на однокристалках... называется Proteus
в нем можно "спаять" всю схему, отладить программу а потом развести печатку.
все очень гибко понятно.. библиотека элементов огромная.
т.ч начать лучше оттуда
все по протеусу и по МК можно найти тут http://forum.eldigi.ru/index.php?showtopic=587&st=0&start=0

средства отладки вообще сильно экономят деньги и время... т.к. по своему опыту скажу.. не все проекты оказываются жизнеспособны. ну и лучше понять это до реализации в "железе"

Микола
23.02.2011, 21:49
Протеус конечно хорошо, только иногда не совпадает моделирование с реальностью.

Добавлено через 49 секунд
Сегодня спалил кажеться атмегу 16, подключил вместо 5 вольт 13. Теперь ее програматор не видит. Запрограмировал другую, схема не идет, наверно еще и дисплей крякну:ireful:л

Сергей
23.02.2011, 23:26
:(А чего хоть программировал? В смысле чем сейчас занимаешся?

Tema0
24.02.2011, 01:12
у меня отладочный комплект Атмега батерфляй....
сам по себе он есть в библиотеке Протеуса.. как и все остальные атмеговские наборы.
реально ну ни разу не удалось протеус в тупик поставить.
ну точно косяк с напругой на этапе проектирования протеус бы отловил.
Ну и для изучения самое то. паяло не нужно и все гораздо быстрее получается, а самое главное ДЕШЕВЛЕ

Микола
24.02.2011, 20:25
:(А чего хоть программировал? В смысле чем сейчас занимаешся?
Контроллер, или его подобие

Woleh
26.02.2011, 01:06
Доброго времени суток. Микола! А чем закончилась история на форуме "Радиофорум у Датагора" ?
Вроде нормально так всё начиналось.многие хотели Вам помочь! шло,шло а потом всё бац и заглохло!(собственно как и везде). Вроде Ваша тема была? от 9.12.2009г.
или я ошибаюсь? Сам то Я уже пол года пытался найти схему а главное прошивку для микро контроллера. понятное дело ничего ненашол (тока время зря потратил).С нового года плюнул и начал искать людей способных помочь. Сам то я тока паять по готовой схеме могу,учиться програмированию нет желания.А готовое покупать нехотел,так как схемы на него нет,прошивку не считаеш и главное непонятно как оно ваще работает,да и стоит нехило. Нашол через друзей хорошего спеца по этому делу.Встретились,пообщались,сговорились. Он мне за 60$ за неделю набросал схему в протеусе, написал програмку под МК ATmega 128. Мы её в течении трёх недель тестили и подгоняли (тоже в протеусе),Сделали печатку!На следующей неделе будем собирать в оригинале. после всех тестов я ему ещё доплачу 100$ хотя он говорит что ненужно.! Согласен.Съехал на чужом горбу. Но реально сил уже небыло искать эти схемы, а на форумах нехотел лишний раз блестать своими познаниями в этой области (ведь посоветовать ничё дельного немогу а контроллер хочеться). На мои письма людям сделавших более менее нормльный контроллер на МК и предлжения купить схему с прошивкой или тупо молчали или вежливо посылали нахрен (Ну как у нас у Славян и положенно собственно)!! Считаю- Начал тему, Доводи до конца.!! А нетак- нашол человека в своей теме способного помочь и ушол в Skype, А Вы пацаны пишите письма и не спасибо вам не пожалуйста за то что помогали в теме.
Это Я не про Вас Микола

Микола
27.02.2011, 21:50
Там ни чем не кончилось. У меня были свои проблемы с работой, потом куча других. В общем снова поднимать там тему и напрягать людей, как то не серьезно. Да и задача несколько другая была. Поэтому сейчас сам и ковыряюсь. Если не выйдет, тоже пойду таким путем как и Вы.

Woleh
27.02.2011, 22:04
А неподелетесь проэктами которые Вам предлогали? Очень интерестно посмотреть. Может чтото дельное было. Если несложно сбросьте сюда или мне на мыло. printvolk@i.ua Я уже месяца три пытаюсь зарегиться на том сайте,уже и модератору писал, но глухо. пройти регестрацию немогу.

gda98
13.03.2011, 21:46
Цифровой вольтметр и амперметр на микроконтроллере ATmega8
Схема, описание, прошивка, все в архиве!

kumkarakum
13.03.2011, 22:06
Ребята, Разобрался в замечательной программе: Flowcode AVR (огромное СПАСИБО Александру) - не ленитесь и результат вас удивит :) разобраться может каждый!
Можно строить и под АВР и под ПИК, отлаживать, файл прошивки можно цеплять к протеусу и отлаживать в железе!! Инфы и примеров куча в сети. - елки, звучит как реклама :) эмоции просто переполняют - сделал сегодня 3 в 1 - вольтметр, амперметр и тахометр на Меге8, отмоделировал в протеусе - работает, нужно только залить, но программатор на СОМ-порт а у ноута его нету :(

Добавлено через 1 минуту
можем же общими силами что-нибудь серьезное накатать!!

Сергей
13.03.2011, 22:11
звучит как реклама эмоции просто переполняют Искренние Поздравления.:yes: Как жаль что я в этом деле ни бум-бум:(:#...

kumkarakum
13.03.2011, 22:37
Сергей, какой бум-бум, давай разбирайся :) там программирование знать не нужно :) вместе будем думать - главный приз - контроллер ветряка! :)

kumkarakum
21.03.2011, 00:24
По итогам изучения флоукода и протеуса даю отчет:
нашкрябана и работает программка мультиметра с тахометром - измерительная часть. 1655
отмоделирована в протеусе 1654
и проверена в железе 1652 1653
перспективы - регулирующая часть. необходимо будет изучить работу шимов.

kumkarakum
21.03.2011, 00:26
знающие люди, просьба просмотреть работу тахометра - может есть лучшие варианты реализации?

устройство с батарейками - китайский будильник в роли генератора 1гц :)

махно
21.03.2011, 13:35
kumkarakum, а откуда вы качали(с таблеткой?)? дайте пожалуйста ссылку.

kumkarakum
21.03.2011, 14:22
махно, http://rutracker.org/forum/viewtopic.php?t=3210844

gda98
21.03.2011, 17:35
знающие люди, просьба просмотреть работу тахометра - может есть лучшие варианты реализации?

устройство с батарейками - китайский будильник в роли генератора 1гц :)

А что внутренний таймер микроконтроллера не используете?

Добавлено через 2 минуты
махно, вас таблетка интересует от чего :) ?

махно
21.03.2011, 19:02
gda98, таблетка от денег. взлом проги.

kumkarakum
21.03.2011, 22:28
я сделал так: по фронту первого импульса запускается прерывание по TMR0 переполнению и работает до прихода след. импульса, подсчитывается кол-во переполнений, а отсюда - период следования импульсов.
мне кажется такой способ измерения лучше всего подходит для измерения низкой частоты.
но есть большой недостаток - занимаю таймер0 длительное время, что очень плохо скажется на дальнейшем расширении возможностей программы и отнимает много ресурсов в промежутках между импульсами.... :(
пока читаю литературу дальше, но если есть идеи - с удовольствием постараюсь проверить на практике!

Добавлено через 4 минуты
устройство с батарейками - китайский будильник в роли генератора 1гц
это устроуство - генератор эталонных импульсов НЧ для проверки тахометра :))
А что внутренний таймер микроконтроллера не используете?

елки, вот я невнимательный:sorry:

Добавлено через 2 минуты
Кстати, его действительно можно использовать для измерений:)

gda98
21.03.2011, 22:47
таблетка от денег. взлом проги.
это я понимаю, какой проги?

kumkarakum
21.03.2011, 22:58
Он для flowcode просил, по ссылке, которую я дал ранее - все включено :)
Видите - пропал - уже изучает наверное... :)

gda98
21.03.2011, 23:00
пропал
:))

Сергей
21.03.2011, 23:52
kumkarakum, У тебя что, функция Цитата выделенного, не работает? У меня кстати то-же. Так я приспособился так. Выделяю и не отпуская кнопку мыши, возвращаю стрелку мыши на краюшек выделенного, пока не появится вновь курсор. Только потом отпускаю. Рядом появляется маленькое окошечко с надписью Цитировать. Счёлк по нём и всё...

kumkarakum
22.03.2011, 00:12
Сергей, я вот заметил, что если не с начала предложения - то работает:pardon:

Bosoiy
25.03.2011, 04:02
Сергей, я вот заметил, что если не с начала предложения - то работает:pardon:
У меня полный порядок.:)

LEX
25.03.2011, 14:00
если не с начала предложения - то работает
Вот такая-же байда...

KAI.
19.10.2012, 20:52
Давно ищу схемку что-то типа вольтметра 3х-4х канального с записью в память и выводом на компьютер .чтоб можно было например оставить его на пару дней подключённому к контроллеру ветряка.(замеряет напряжение .нагрузку.скорость ветра...к примеру) а потом всё это дело скачать на комп дома и посмотреть графики или просто голые цифры....Мож кому попадались такие проекты на просторах инета?!

saschke
15.11.2013, 20:05
Вот еще среда программирования Algorithm Builder - простейшая среда на мой взгляд , не требует знаний языков , пример написания простейшего алгоритма бегущих огней на светодиодах . http://www.ekits.ru/published/publicdata/SHOPEKITEKITS/attachments/SC/lessons/lesson1-video.html
Если комуто надо , могу дать ссылку на небольшой самоучитель "с нуля"

adam
16.11.2013, 00:25
Если комуто надо , могу дать ссылку на небольшой самоучитель "с нуля"
Будьте добры.

saschke
16.11.2013, 13:20
Небольшое пособие именно по этой среде прграммирования https://disk.yandex.ru/public/?hash=1Td5OgRqnePo7z4oq%2BJiEsYJdSEczvGPQh1SotBD%2 BsA%3D

Добавлено через 15 минут
Ссылка на скачивание среды с оф. сайта http://www.algrom.net/russian.html
Программатор если паять не хочется , можно заказать USB программатор в инет магазине - 750р помоему стоит SPA0008 (не реклама).

adam
16.11.2013, 22:43
saschke Большое спасибо. С ув Адам.

saschke
05.02.2014, 21:53
983, В самом деле , не знаю чего мучаетесь , не обязательно знать всю периферию контроллера для имеющихся задумок . Лично я думаю что мк знаю на 50 % не больше , оно как - понадобился ШИМ в проекте - начал шим изучать , понадобился компаратор - изучил его и т.д. тоесть по мере надобности получается , одно другому не мешает. Так что решайтесь , помогу , а со временем друг другу уже будем помогать осваивать. Даже могу так сказать - если начать прямо сейчас то к завтрашнему утру будете управлять светодиодами как вздумается воображению , конечно виртуально в отладчике пока не приобретете кристалл и программатор . Главное начать как говорят все.

DJ_Grom
06.02.2014, 11:24
saschke, ткни носом в хорошую инфу и софт, а так же желательно в програматор, думаю об этом не первый год, но боюсь.
На ебее много програматоров, но какой нужен не понимаюю нифига, а хочется всётаки начать.

Александр
06.02.2014, 13:42
ткни носом в хорошую инфу и софт
А чем это не устраивает? http://decada.org.ru/project/lessons/bascom_avr/index.php К концу первого же дня изучения уже начнёт что-то получаться. А здесь: http://cxem.net/software/bascom-avr.php можно узнать, что это за зверь такой, как он выглядит и что умеет.

Сергей
06.02.2014, 18:07
Трудитесь:hi:

Александр
06.02.2014, 19:28
Как-то странно... Вижу 8 страниц, а на 8-ю зайти не могу. К чему бы это? :scratch_one-s_head:

Добавлено через 1 минуту
Ага... Как только написал сообщение, то сразу зашёл. Глюки, однако!

saschke
06.02.2014, 21:24
Да , много путей программирования и по какому пойти вопрос .
Я программирую в среде Alhoritm Builder сокращенно (АВ)
Лично для меня без полного образования , с тугой памятью и полным отсутствием знаний английского казалось неосуществимой мечтой. Пока дергался в течении пары лет по разным самоучителям так забил непонятной информацией голову что думал бесполезно все .
Но на самом деле оказалось все довольно просто .
Думаю сначала нужно определиться в какой среде программировать будете , и только ее и изучать пока.
И еще очень важно понять как он мк вообще работает, по простому - с каждым тактом генератора контроллер выполняет одну команду которую ему Вы написали , и вот так двигаясь по всей написаной программе с каждым тактом он и шагает , дойдя до конца возращается в начало и так по кругу. В (АВ) насколько помню всего набор из 130 команд . Некоторые команды исполняются за несколько тактов .

Добавлено через 4 минуты
Вот пример написания программы мигания светодиодами в АВ http://www.ekits.ru/published/publicdata/SHOPEKITEKITS/attachments/SC/lessons/lesson1-video.html

Добавлено через 4 минуты
Таким программатором пользуюсь http://www.ekits.ru/index.php?productID=2123

983
06.02.2014, 21:31
У меня в наличии есть несколько pic16f73
--остались с одного проектика.
программатор к ним бывает простейший на ком порт, работает он нормально.
Сам программатор остался в Минске. я туда уже давно не ездец.
Неплохо представляю архитектуру и работу I8080 и Z80 , когдато помнил их машинные коды, чтоб писать прямо в них, минуя написание на ассемблере.
надеюсь те знания и понимания помогут разобраться и в микропроцессорах.
Но с тех пор много воды утекло, башка отупела и поржавела.
Вот теперь думаю : с чего бы стартануть.
А хочется для начала сделать простой MPPT для солнца.

saschke
06.02.2014, 22:10
У меня потихоньку желание поюзать STM контроллеры просыпается - питание низкое , скорости бешанные , куча периферии .
983, Так вот выбираем путь и поехали . У меня нет сом порта в компе и поэтому юсб программатор взял .
Надо видео снять пожалуй для наглядности . Чего показать , может как ШИМ запускается в АВ ?

saschke
07.02.2014, 17:33
983, Хочу помоч , если желаеш то давай алгоритм , я напишу , прошью контролер и вышлю его почтой . Только небыло бы проблем с почтой . Понастроили заборов блин .

983
07.02.2014, 20:39
Это здОрово !
Только наверно есть смысл не пересылать сам, прошитый контроллер, а, по возможности совместно,
написать код прошивки, и прошивать уже на местах -- всё равно программатор будет нужен полюбому.

А алгоритм должен получиться -- проще некуда :

инициализируем микроконтроллер, прописываем регистры и прочие подготовительные дела, объявляем переменные.
var OldCurrent = 7FH; // значение тока от предыдущего замера
var NewCurrent = 7FH; // значение тока от свежего замера
var SignStep = 1; // знак действия по изменению скважности ( 0 / 1 )
var SignCurrent = 1; // знак изменения тока после действия ( 0 / 1 )
// вроде для начала и хватит ))
Устанавливаем ШИМ , например, 7F, (если он восьмибитный) или так же , половинку при другой битности.
SignStep = SignStep ⊕ SignCurrent ; // (если такая запись позволительна)

if (SignStep == 0) {ШИМ = ШИМ - 1;}
else {ШИМ = ШИМ + 1}

или наверно изящнее так:
ШИМ = ШИМ + (SignStep * 2 - 1)

и наверно есть смысл сделать проверку, чтоб значение ШИМ не выскакивало за пределы 0 -- FF и не стало носиться по кругу в случае аппаратного сбоя.
OldCurrent = NewCurrent //
выдерживаем паузу, чтоб успокоились переходные процессы
делаем замер тока, значение записываем в переменную NewCurrent

if (NewCurrent > OldCurrent) { SignCurrent = 1; }
else { SignCurrent = 0; }
goto метка 3; // если безусловный переход на метку допустим в языке программирования, в противном случае организовать рекурсивный вызов функции


Вот и всё.
Ток, истинное его значение, собственно и не нужно : достаточно просто получать значения из АЦП
и тупо сравнивать его с замеряным в предыдущем цикле и получить знак результата сравнения.

Могу попытаться написать более конкретно на javascript -- он по синтаксису и прочим заморочкам очень похож на C,
портировать с него на С не должно составить особого труда ( а то и вообще никакого ))).

Дальше можно развить тему, добавить индикацию, сбор статистики, слежение за режимом заряда аккумулятора,
связь с компом и т. д.

jeriho
07.02.2014, 21:05
983, а что проще выполнить, сложение или умножение? Или вы хотите по максимуму тока?

983
07.02.2014, 21:30
jeriho, напряжение в этом , начальном варианте, вообще не хочу пока мерять.
И ток не переводить в амперы
-- пущай пока будет в своих внутрипроцессорных единицах измерения.
Для поиска точки максимальной мощности и удержания в ней
(точнее скакания вокруг неё )))
этого должно быть вполне достаточно.
Вот если делать уже индикацию, сбор статистики, то тут уже надо красиво преобразовывать полученные значения, как тока ( токов) , так и напряжения ( напряжений).
Но чтоб заработало, думаю, для начала, надо откинуть всё дополнительное и оставить только необходимое.

Добавлено через 5 минут
что проще выполнить, сложение или умножение?
а и не знаю.
Но скорее всего целочисленные умножение и сложение всё же меньше поедят ресурсов. чем условный переход, по крайней мере в древних интелах , помнится, было именно так.
К тому же там, где нежелательно, чтобы время выполнения фрагмента кода могло быть разным, в зависимости от направления ветвления, обычно старалить по возможности обойти все ветвления, заменив их альтернативными вариантами,
хотя, сейчас, в современных микроконтроллерах, возможно этим и не нужно уже заморачиваться, не знаю.

saschke
07.02.2014, 21:47
Пишу вообще на другом языке , немного поверхностно понимаю Си . Но тебя понял .
Напишу и выложу hex-файл . Но тогда по другому можно сделать ? Типа "собери сам" . Схема простейшая будет -
ЖК дисплей ,
Два входа для замера напряжения , и один для замера тока.
Один двух тактный ШИМ для подключения баласта .
Один двух тактный ШИМ на DC-DC.
(Можно добавить еще ШИМ однотактный для "повышайки")
Три или четыре кнопки управления .
В меню пользовательских настроек будет - "выбор напряжения срабатывания баласта" " выбор двухтактные ШИМы или однотактныйе" и отдельное меню "настройки МППТ"
Тоесть сам уже будеш решать какие преобразователи ставить и т.д..

Добавлено через 10 минут
В атмегах есть аппаратное умножение и сложение , в Тинях (с которыми работал ) умножения нет , приходится мудрить . Но это просто - складываеш нужное умножить число столько раз на сколько нужно умножить и все . Для деления принцип тотже почти .

983
07.02.2014, 22:01
Напряжение срабатывания балласта хочу со временем сделать похитрее : пока напряжение на аккумуляторе не достигло 14,8 балласт не срабатывает, по достижению этого напряжения порог срабатывания балласта автоматически устанавливается на 13,9 ( буфернфй режим)
При снижении напряжения на аккумуляторк ниже 12,3 В либо длительном ( несколько часов) отсутствии заряда от СБ ,вновь устанавливается порог на 14,8
Соответственно для АГМ и ГЕЛЬ можно выставлять на 0,1 -- 0,2 В меньше, чем для негерметичных.
А выбор двухтактный или однотактный шим, чёто боязно в менюху запихивать,
по мне, так можно там и отображать его состояние, но при наличии свободных ног, всё же лучше устанавливать джемпером. ( от греха подальше )))

Да, кстати, умножить на 2 -- решается сдвигом на 1 разряд.
очень быстрая и ненапряжная команда, в некоторых процессорах не требует загрузки из памяти или РОН в АЛУ, и потом обратно, и может выполняться прямо в РОН.

saschke, а на чём пишешь ?

saschke
07.02.2014, 22:32
Вот операция умножения 25 * 3 . Красным обведено.
Синим пояснения к командам .Результат вычисления хранится в р0.

saschke
07.02.2014, 23:02
983, Настройки ШИМов и напр. баласта и может еще чего опасного можно в "спец" меню встроить , в это меню например можно войти только при включении питания и при этом должны удерживаться нажатыми одна или две какиенибудь кнопки .
Похоже нам нужно переходить в солнечную МППТ тему :)

983
09.02.2014, 12:44
Люююуди !
Кто с Протеусом дело имеет / имел ?

решил его попробовать, много вопросов повозникало,
например, где берут переменные резисторы, которые на ходу можно крутить? ,
есть ли удобное быстрое меню-палитра для быстрого внесения в схему элементов, или только за каждвм лазить в библиотеку ?
Релиз 7.7 это не слишком на гуано мамонта похоже ?
Где поискать чтото полезное для чайников ?

Сергей
11.02.2014, 19:33
saschke, глянь пожалуста.
Этой штукой Атмегу можно запрограммировать?
11898
Там ещё написано вот это:
Преобразователь USB to Serial на PL2303
Может быть использован как STC Microcontroller Programmer

saschke
11.02.2014, 23:11
Сергей, Так понял что это преобразователь UART (для связи мк с компом) , он будет программировать но похоже только контроллеры STC.
Если Китай то вот чтото типа этого http://www.ebay.com/itm/1PCS-USBasp-USBISP-3-3V-5V-AVR-Programmer-USB-ATMEGA8-New-/261021924011?pt=LH_DefaultDomain_0&hash=item3cc61e7aab
Но не уверен что будет работать , похоже перешивать их нужно , несколько страниц обсуждений . http://www.forum.getchip.net/viewtopic.php?f=14&t=272&start=20
Может Александр чего подскажет , я специфическим пользуюсь который только с моей средой программирования работает , на скрине

Александр
12.02.2014, 22:17
Сергей, из 23-х вариантов программатора в среде Bascom AVR, указаного тобой варианта нет. Почему тебе так важен USB программатор? У тебя нет других портов?

983
13.02.2014, 00:54
Почему тебе так важен USB программатор? У тебя нет других портов? У ноутбуков обычно нет других портов, а подправить код, как я себе это представляю, нередко может понадобиться в условиях, далёких от тепличных.

Александр
13.02.2014, 02:31
Ну тогда подойдёт такой: http://ru.farnell.com/olimex/avr-isp-mk2/programmer-usb-2-0-pdi-tpi-for/dp/2144332

Сергей
13.02.2014, 11:57
Александр, ну шо за цены такие бешеные?
24,14 Евро. Неужели оно того стоит?

YPK
15.02.2014, 16:42
Самый "кошерный" USB программатор для AVR, это атмеловский AVR ISP mkII. Он умеет шить все AVR, в том числе и Xмеги по PDI. У нас, правда, им цены не сложат. Но на Ebay можно купить за 30-40$ оригинал или раза в два дешевле клоны.

saschke
17.02.2014, 22:39
Решил немного отдохнуть от проекта контроллера СБ и попробывал снять ролик небольшой. Запуск простейшего ШИМа .
Вобщемто вот так и строятся мои проекты - написал какуюто часть - прошил и наглядно наблюдаеш что получилось . Ничего сложного .
За тех. язык прошу не пинать . http://www.youtube.com/watch?v=pH_2i3--xYE&feature=youtu.be

jeriho
01.03.2014, 08:39
saschke, а каким образом задаётся рабочая частота pic16 если нет кварца? ( в инверторе а-электроника)

saschke
01.03.2014, 11:01
Внутренний RC генератор подключается . В Атмегах с которыми работал - до 8 мГц можно подключить (от конкрктного контроллера зависит).
Кварц ставится для увеличения частоты (скорости) либо для большей точности.

jeriho
01.03.2014, 22:45
saschke, вы программируете мррт контроллер. На выходе проца вы написали шим. это идёт на драйвер? Какого плана будет вых каскад? ( ап, даун, сепик, пуш-пул...) И ещё. На выходе проца - меандр. С заполнением от 0% до 100% ( грубо, для примера) при какой дельта U ? Т.е. при изменении U от... до.... заполнение шим от... до... Это прописывается в проц?

saschke
02.03.2014, 00:09
Сделал себе пуш-пул отдельным блоком , проверял от мк - не бахнул , и не бахнет если правильно подключить таймер ШИМа , точнее его регистры . Смотрю вроде в инверторах напрямую с мк идет на драйвера ШИМ ?
А по заполнению от...и до... - так понял в зависимости от напряжения - заполнение должно менятся так как нам надо ? Если линейно то без проблем прописывается , если не линейное изменение то формулу придумать или таблицу или голову напрячь , вобщем бывало всю голову поломаеш а задач не выполнимых пока не встречалось.

wprezerf
02.03.2014, 00:50
Сергей. это вариант программатора , который предлагал вам saschke на ebay. Можете собрать его сами, единственное - но, его надо программировать, опять же используя лпт либо ком порт. http://articles.greenchip.com.ua/3-0-34.html
Еще можете посмотреть программатор usb910, подобный выше предложенному - http://articles.greenchip.com.ua/3-0-12-0.html

jeriho
02.03.2014, 08:39
вроде в инверторах напрямую с мк идет на драйвера ШИМ ?:yes:

Если линейно то без проблем прописывается Немного не так я выразился.:pardon: Измеряемое U- растёт. Заполнение- 100% Достигло контрольного, допустим 12В, заполнение начинает уменьшаться и к 13В= 0% Т.е. 10% на 0,1В. А можно чтоб при 15В=0%? Этот параметр как- нибудь прописывается? Или есть Uref, вокруг него и пляшем?

DJ_Grom
02.03.2014, 13:59
jeriho, эти формулы нужно уточнять ещё. Но все границы прописываются ручками.

saschke
02.03.2014, 21:07
Плясать то нужно от чегото но эту точку можно назначить любой . Вот например Имеем результат АЦП - например при 12.0 Вольт АЦП выдает число 120 , в прерывании АЦП или в самом теле программы (в определенный момент) можно условие поставить что если результат АЦП более или равен 120 то выполняем вычисления типа (АЦП-120+1)*10... примерно так получается (120-120+1)*10=10 , далее включаем ШИМ (например 8 бит) и в регистр управленя ШИМом вписываем результат нашей формулы - 10 - это соответствует почти максимальному заполнению (из 255). При напряжении 14.4 Вольт по нашей формуле получается (144-120+1)*10=250 , это минимальное заполнение ШИМ (почти ноль получается). Ну это все так - на вскидку , под любые напряжения и хотелки формула придумается . Так что точку вокруг которой пляшем мы прописываем сами и она может меняться в зависимости от алгоритма. Както так.

Сергей
03.03.2014, 07:39
wprezerf, спасиба.
Твой пост скопирую в библиотеку "Полезные ссылки".

saschke
27.06.2014, 23:32
jeriho, эти формулы нужно уточнять ещё. Но все границы прописываются ручками.
Ну как с мк дело ?

Илья МГУ
30.06.2014, 15:31
Поделюсь и я своими наработками в микроконтроллерной теме.
Начал с Ардуино УНО, потом прочитал статью: http://arduino-uno.ru/blog/ideas/6.html
и сделал Диджиспарк по прилагаемой схеме. Платку сделал свою, попросторнее и с панелькой под АтТини85. Уже вторая плата запустилась влёт без фокусов, стал активно пользоваться. Малютка АтТини85 при своей дешевизне оказалась штукой могучей. Три АЦП, два ШИМА. Из 8 лап микросхемы можно задействовать 6 (все кроме питания). Никакой обвязки не требуется, только питание.
Бутлоадеры в чистые контроллеры гружу USBaps, хотя начинал с параллельного порта на старой эвм.