Быстрый заказ, позвонить +7-978-708-85-73
Дроссель Amadeus Productions. Быстрый заказ по телефону.
(Viber, WhatsApp, Telegram)
Amadeus Productions Дроссельный узел на Lancer IX 1.6 (4G18), 2.0 (4G63) и другие моторы
Ремкомплект РХХ на Mitsubishi Lancer IX, 1.6 (4G18), MD619857, 1450A116
Облегченный маховик на 1.6 (4G18) и другие моторы
Облегченные шкивы на 1.6 (4G18) и другие моторы
One-touch или "Ленивые поворотники"

> Микроконтроллеры
SSh
сообщение 9.9.2009, 17:52
Сообщение #1


Технический Маньяк-Гуру
*******

Группа:
Администраторы
Сообщений: 7044
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   263  


Ну что, начнем. Заранее заявляю, что я сам тоже новичок в этом деле, так, что если что не так с удовольствием приму и критику и замечания и дополнения.
Что такое микроконтроллер (МК)? Это микросхема которая сама по себе АБСОЛЮТНО ничего не умеет делать в отличии от даже самой примитивной логики. Для того, чтобы заставить МК выполнять какую-нибуть работу надо прошить (загрузить) в него программу. МК выпускаются многими фирмами - Mikrochip, Atmel, Motorolla, etc. Здесь будут рассматриваться только МК фирмы Mikrochip, так называемые pic-контроллеры.
Их легко различить по маркировке от других, название начинается с префикса PIC или (в современных сигнальных процессорах) dsPIC, например, PIC18F2520, PIC16F877 и т.д. Наиболее употребимые в любительской практике - 8-разрядные контроллеры среднего и высшего семейств, PIC16 и PIC18.
Буква "F" в маркировке МК означает, что он может многократно перезаписываться, т.е. если по каким-либо причинам надо поменять программу (прошивку), то это легко можно осуществить при помощи программатора (об этом попозже). Есть МК и с буквой "С" - это однократно программируемые.
Питание МК - +5В, хотя многие из них могут работать и при пониженном напряжении, от +2,5В.
Потребляемый ими ток насколько мал, что о нем и говорить неудобно (IMG:style_emoticons/default/dry.gif)
Так что-же все таки представляет собй МК? Это микросхема с определенным количеством выводов (8, 14, 16, 18, 20, 28, 40 и т.д), как минимум двое из которых предназначены для подачи питания, а почти все остальные представляют собой линии ввода-вывода. Почти - потому-что есть МК, которые обязательно должны тактироваться внешним кварцем (еще 2 вывода) и/или имеют отдельный вывод сброса. А есть и такие, что могут работать как от внешнего так и от внутреннего генераторов, в этом случае освободившиеся выводы тоже можно использовать для дела. Конкретно количество выводов данных можно посмотреть в даташите на конкретный МК.
Т.к. МК 8-и битные, то и выводы организованы в шины той-же разрядности, или, как их называют - порты.
В зависимости от кол-ва ножек могут быть порты A, B, C, D, E, которые на изображении МК обозначаются след. образом: буква R, затем наименование порта, затем номер разряда порта, напр. RA0, RC2, RB7...
В МК совсем необязательно наличие всех разрядов какого-либо порта, например, могут быть RC3...RC7, a RC0, RC1 и RC2 - отсутствовать. В принципе, это не имеет значения, т.к. любой порт можно запрограммировать на выполнение практически любой задачи (исключая некоторые специфические, такие, как обмен данными по USB или Ethernet), так, что без разницы - подключен, например, светодиод, сигнализирующий о превышении температуры к порту RB5 или RE0.
Исключение составляют выводы порта А, которые можно сконфигурировать так, чтоб они работали в аналоговом режиме (все остальные только цифровые). Естественно, порт А также может работать в цифровом режиме, что он и делает по умолчанию. Аналоговый режим используется для задействования встроенных АЦП - аналого-цифровых преобразователей, с их помощью измеряются аналоговые сигналы, например, напряжение, показания термодатчиков и т.д.
С распространением различных протоколов на определенные выводы могут также возлагаться дополнительные функции. Это не значит, что с другими выводами нельзя добиться результата, просто, если на вывод подключена какая-либо доп. функция, то результат достигается более легкими программными способами.
Для примера приведу обозначения выводов МК PIC16F876

1 MCLR/VPP/RE3
2 RA0/AN0
3 RA1/AN1
4 RA2/AN2/VREF-/CVREF
5 RA3/AN3/VREF+
6 RA4/T0CKI/C1OUT
7 RA5/AN5/SS/HLVDIN/C2OUT
8 VSS
9 OSC1/CLK1
10 OSC2/CLK0
11 RC0/T1OSO/T13CKI
12 RC1/T1OSI/CCP2
13 RC2/CCP1
14 RC3/SCK/SCL
15 RC4/SDI/SDA
16 RC5/SDO
17 RC6/TX/CK
18 RC7/RX/DT
19 VSS
20 VDD
21 RB0/INT
22 RB1
23 RB2
26 RB3/PGM
25 RB4
26 RB5
27 RB6/PGC
28 RB7/PGD

Смотрим, что мы тут имеем. МК имеет 2 вывода для соединения с общим проводом (8 и 19 - Vss), вывод питания - 20 - Vdd, отдельные выводы для подачи тактовых импульсов или подключения кварца - 9 - OSC1/CLK1 и 10 - OSC2/CLK0. Вывод сброса по желанию можно переконфигурировать для обработки данных - 1 - MCLR/VPP/RE3, т.е. он превращается в RE3. Все остальные - данные.
Дальше, некоторые выводы не имеют никаких специальных функций, например, RB1...RB7. Здесь PGM, PGC, PGD, а также Vpp на выводе 1 - сигналы с программатора, после прошивки МК они (имеются в виду сигналы а не выводы) не используются. Порты А, как видно, могут переконфигурироваться и работать как AN0...AN5 - аналоговые входы.
Некоторые сигналы (вернее протоколы) могут нам никогда и не понадобиться, так, что не стоит сейчас акцентировать на них внимание, просто опять же для примера упомянем
17 - RC6/TX/CK
18 - RC7/RX/DT, т.е. если надо, чтоб МК взаимодействовал с компьютером по последовательному интерфейсу (СОМ порт), то для этой цели лучше выбрать выводы 17 и 18, т.к. на них посажены также режимы RX и TX.

-----------------
Естественно, т.к. МК работают под управлением программы, то в них должна быть предусмотрена память для этих самых программ. В зависимости от МК объем памяти может колебаться от сотен байт до десятков килобайт. Память, как уже отмечалось, обычно многократно перезаписываемая.
Помимо программной МК может также иметь RAM память (ОЗУ) - для временного хранения данных/переменных во время работы программы, а также EEPROM - постоянная память для хранения данных при выключенном питании контроллера. Скажем, если на контроллере построен борткомпьютер, то, например, пройденный путь или израсходованный бензин надо писать именно в EEPROM, иначе данные потеряются после выключения зажигания. Данные же о мгновенном расходе пишутся в RAM. Конкретно объем программной памяти и наличие/отсутствие и объем RAM и EEPROM надо опять же смотреть в соотв. даташитах.
-----------------
Я честно говоря, не знаю, надо ли продолжать или нет, т.к. в сети есть куча информации по различным МК, так, что если есть желание, то изучить их работу в желаемом для себя объеме нетрудно.
Если есть интерес к обсуждению этого вопроса именно здесь а не на спец. форумах, то в след. раз поговорим о самих программах и программаторах.









Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
10 страниц V  < 1 2 3 4 > »   
Start new topic
Ответов (20 - 39)
SSh
сообщение 9.11.2009, 9:36
Сообщение #21


Технический Маньяк-Гуру
*******

Группа:
Администраторы
Сообщений: 7044
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   263  


Ну как, кто-нибуть купил/получил PicKit? Что-то все молчат... (IMG:style_emoticons/default/dry.gif)
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
Asdwarf
сообщение 10.11.2009, 21:44
Сообщение #22


Левша
*******

Группа:
Почетные ветераны
Сообщений: 1801
Регистрация: 19.2.2009
Из: Санкт-Петербург, Центр
Вне форума
Авто: VW CC 1.8MT

Репутация:   24  


Мутно там как-то...
Позвонил, сказали вышлют счет. Глухо...
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
Vituha
сообщение 30.1.2010, 18:15
Сообщение #23


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 7
Регистрация: 30.1.2010
Вне форума


Репутация:   0  


Привет! Я собрал осцилограф на 4 канала на 16меге и хочу с исходником разобратся досканально чтобы расширить число каналов расширить до 6 и добавить один канал с возможнотью синхронизации от него
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
SSh
сообщение 30.1.2010, 18:29
Сообщение #24


Технический Маньяк-Гуру
*******

Группа:
Администраторы
Сообщений: 7044
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   263  


С mega-ми никогда дела не имел, так, что - извини не в курсе. Одно время заинтересовался осциллографами, даже собрал ADC21 - http://forum.roboclub.ru/IPBoard/index.php?showtopic=131 - , но понял, что в домашних условиях приличный прибор создать не смогу, тем более, что нашел вот это
http://www.seeedstudio.com/depot/dso-nano-...3230abfca7e5075
Уже выписал, со дня на день жду посылку.

А что за осциллограф у тебя, я вроде все, что есть в сети по этой теме изучил...
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
Engender
сообщение 30.1.2010, 18:37
Сообщение #25


Музыкальный JDM маньяк
*******

Группа:
Главные администраторы
Сообщений: 4432
Регистрация: 10.7.2009
Из: Москва
Вне форума


Репутация:   190  


Похоже на бот.
Vituha - вам сутки на подтверждение, что вы не бот. Или в бан.
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
Vituha
сообщение 30.1.2010, 18:43
Сообщение #26


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 7
Регистрация: 30.1.2010
Вне форума


Репутация:   0  


Цитата(Engender @ 30.1.2010, 22:37) *
Похоже на бот.
Vituha - вам сутки на подтверждение, что вы не бот. Или в бан.

А как подтвердить и что такое бот?
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
Vituha
сообщение 30.1.2010, 18:52
Сообщение #27


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 7
Регистрация: 30.1.2010
Вне форума


Репутация:   0  


Цитата(SSh @ 30.1.2010, 22:29) *
С mega-ми никогда дела не имел, так, что - извини не в курсе. Одно время заинтересовался осциллографами, даже собрал ADC21 - http://forum.roboclub.ru/IPBoard/index.php?showtopic=131 - , но понял, что в домашних условиях приличный прибор создать не смогу, тем более, что нашел вот это
http://www.seeedstudio.com/depot/dso-nano-...3230abfca7e5075
Уже выписал, со дня на день жду посылку.

А что за осциллограф у тебя, я вроде все, что есть в сети по этой теме изучил...

Я нашол 4 канальник на какомто форуме с исходниками для ремонта машин, мне очень помогает
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
dmitrij_b
сообщение 30.1.2010, 20:14
Сообщение #28


Технический Маньяк-Гуру
*******

Группа:
Администраторы
Сообщений: 1802
Регистрация: 21.2.2009
Из: Екатеринбург
Вне форума
Авто: Lancer IX 1.6MT (105HP)

Репутация:   108  


2 Vituha а выложи схемы осцила с прошивками и исходниками. Поковыряем...
Я немножко с AVR-ами знаком.
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
Vituha
сообщение 30.1.2010, 22:38
Сообщение #29


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 7
Регистрация: 30.1.2010
Вне форума


Репутация:   0  


Цитата(dmitrij_b @ 31.1.2010, 0:14) *
2 Vituha а выложи схемы осцила с прошивками и исходниками. Поковыряем...
Я немножко с AVR-ами знаком.

Я сейчас на форуме с телефона, завтра домой приеду и скомпа зайду и скину
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
Vituha
сообщение 30.1.2010, 23:20
Сообщение #30


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 7
Регистрация: 30.1.2010
Вне форума


Репутация:   0  


Цитата(SSh @ 30.1.2010, 21:29) *
С mega-ми никогда дела не имел, так, что - извини не в курсе. Одно время заинтересовался осциллографами, даже собрал ADC21 - http://forum.roboclub.ru/IPBoard/index.php?showtopic=131 - , но понял, что в домашних условиях приличный прибор создать не смогу, тем более, что нашел вот это
http://www.seeedstudio.com/depot/dso-nano-...3230abfca7e5075
Уже выписал, со дня на день жду посылку.

А что за осциллограф у тебя, я вроде все, что есть в сети по этой теме изучил...

Я adc21 делал он неплохо работает, скажи а будет продолжение статей по мк?
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
SSh
сообщение 30.1.2010, 23:44
Сообщение #31


Технический Маньяк-Гуру
*******

Группа:
Администраторы
Сообщений: 7044
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   263  


Цитата
Я adc21 делал он неплохо работает

Случайно не по моей разводке? (IMG:style_emoticons/default/biggrin.gif) (IMG:style_emoticons/default/wink.gif)
Продолжения как такового - скорее всего нет, но вот в разных темах так или иначе кое-какие конкретные вопросы иногда обсуждаются. Здесь же была цель просто ознакомиться с МК, и то лишь потому, что есть некоторые конструкции на них - чтоб было понятнее. А так, кому надо - есть специализированные сайты, там и информации побольше и спецы поопытнее.
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
Titus
сообщение 31.1.2010, 1:07
Сообщение #32


Don Amadeus
*******

Группа:
Главные администраторы
Сообщений: 29935
Регистрация: 19.2.2009
Из: Russia, Sevastopol
Вне форума
Авто: Lancer IX-1.6 MT Turbo, Honda Accord IX-2.4 AT Executive.

Репутация:   465  


Цитата(Engender @ 30.1.2010, 17:37) *
Похоже на бот.
Vituha - вам сутки на подтверждение, что вы не бот. Или в бан.


Не, видно, что не бот, все оки, Егорыч (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
SSh
сообщение 31.1.2010, 12:59
Сообщение #33


Технический Маньяк-Гуру
*******

Группа:
Администраторы
Сообщений: 7044
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   263  


Кстати насчет синхронизации. Как правило осциллографы на контроллерах работают след. образом:
Предположим в качестве дисплея использован графический LCD с разрешением 128х64 точек (в подавляющем большинстве случаев так и есть). Встроенный АЦП МК оцифровывает входной сигнал или сигналы после чего происходит преобразование в горизонтальную координату точки на экране. Но все это дело сразу на экран не выводится а сохраняется в буфере, организованном во внутреннем RAM контроллера. Для одного луча таких отсчетов (объем буфера) 128, для двух 256 и т.д. После заполнения буфера МК переводится в режим вывода накопленных координат на дисплей, после чего процесс повторяется. Сам вывод организован в виде цикла, состоящего из 256 шагов, где Х координатой является номер шага, Y координата - значение ячейки буфера с номером X.
Т.е. в то время, когда производится само измерение нет вывода на экран и наоборот. Буфер же начинает заполнятся не в произвольное время а только тогда, когда сигнал проходит через 0. Этот момент элементарно отследить программно.
Так вот если отсчет ведется с нулевого уровня сигнала, то и буфер заполняется с координатой Y=0, и вывод соответственно с точки с координатами 0,0.
Иными словами, получается автоматическая синхронизация...
И еще, увеличение числа каналов приведет к сужению полосы частот.


Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
Vituha
сообщение 1.2.2010, 10:12
Сообщение #34


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 7
Регистрация: 30.1.2010
Вне форума


Репутация:   0  


Цитата(SSh @ 31.1.2010, 16:59) *
Кстати насчет синхронизации. Как правило осциллографы на контроллерах работают след. образом:
Предположим в качестве дисплея использован графический LCD с разрешением 128х64 точек (в подавляющем большинстве случаев так и есть). Встроенный АЦП МК оцифровывает входной сигнал или сигналы после чего происходит преобразование в горизонтальную координату точки на экране. Но все это дело сразу на экран не выводится а сохраняется в буфере, организованном во внутреннем RAM контроллера. Для одного луча таких отсчетов (объем буфера) 128, для двух 256 и т.д. После заполнения буфера МК переводится в режим вывода накопленных координат на дисплей, после чего процесс повторяется. Сам вывод организован в виде цикла, состоящего из 256 шагов, где Х координатой является номер шага, Y координата - значение ячейки буфера с номером X.
Т.е. в то время, когда производится само измерение нет вывода на экран и наоборот. Буфер же начинает заполнятся не в произвольное время а только тогда, когда сигнал проходит через 0. Этот момент элементарно отследить программно.
Так вот если отсчет ведется с нулевого уровня сигнала, то и буфер заполняется с координатой Y=0, и вывод соответственно с точки с координатами 0,0.
Иными словами, получается автоматическая синхронизация...
И еще, увеличение числа каналов приведет к сужению полосы частот.

Спасибо доступно описано, а то что сужение частот то не беда 10кгц достаточно
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
SSh
сообщение 1.2.2010, 10:29
Сообщение #35


Технический Маньяк-Гуру
*******

Группа:
Администраторы
Сообщений: 7044
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   263  


Опечатка просочилась... не 256 а 128 шагов, т.е. кол-во шагов равно горизонтальному разрешению примененного экрана, вернее ширине области вывода осциллограммы. Я встречал устройства, где правая или левая части были использованы для вывода информации (длит. развертки, чувствительность и т.д.)
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
SSh
сообщение 1.2.2010, 10:56
Сообщение #36


Технический Маньяк-Гуру
*******

Группа:
Администраторы
Сообщений: 7044
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   263  


Кстати вот здесь есть описание 6-канального осциллографа
http://www.ne.jp/asahi/shared/o-family/Ele.../AVRLogAna.html

Правда на японском, но можно перевесту Гуглем.
И исходники выложены, причем на более понятном Бейсике, так, что если надо что-то поменять - разобраться будет не трудно.
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
dmitrij_b
сообщение 1.2.2010, 11:41
Сообщение #37


Технический Маньяк-Гуру
*******

Группа:
Администраторы
Сообщений: 1802
Регистрация: 21.2.2009
Из: Екатеринбург
Вне форума
Авто: Lancer IX 1.6MT (105HP)

Репутация:   108  


Это похоже не осцил, а логический анализатор. Если я правильно понял только картинки, без анализа текста...
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
SSh
сообщение 1.2.2010, 12:48
Сообщение #38


Технический Маньяк-Гуру
*******

Группа:
Администраторы
Сообщений: 7044
Регистрация: 3.6.2009
Из: Армения
Вне форума
Авто: Lancer IX, AT

Репутация:   263  


Да, точно - анализатор.
На этом же сайте есть пара осциллографов одно- и двух-лучевые. Я все порывался собрать один из них, но теперь успокоился - жду заказанного DSO Nano...
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
Vituha
сообщение 5.2.2010, 19:35
Сообщение #39


Начинающий Технический Маньяк
**

Группа:
Технический Маньяк
Сообщений: 7
Регистрация: 30.1.2010
Вне форума


Репутация:   0  


Я набросал проектик в c+ 2009 давайте вместе добьем его до логического завершения скажите кто знаком с c+?
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post
NeWT
сообщение 15.9.2010, 13:41
Сообщение #40


Технический Маньяк-Гуру
*******

Группа:
Технический Маньяк
Сообщений: 1724
Регистрация: 15.10.2009
Из: Москва, п. Монино
Вне форума


Репутация:   8  


Такой глобальный вопрос по поводу программы. Вот по поводу нажатий кнопок и загораний светодиодов. В моём текущем понятии, программа должна выполниться один раз и всё. Здесь же я так понял, программа как бы зацикленна бесконечно? Т. е. этот глобальный бесконечный цикл никак не объявляется, а он просто есть? И ещё, ведь событие происходит не тогда, когда кнопка нажата, а тогда, когда по тактовому генератору программа дошла до проверки кнопки и вот тогда если она нажата то выполнить то-то? Так?
Go to the top of the page
¬
Вставить ник в форму быстрого ответа
+Quote Post

10 страниц V  < 1 2 3 4 > » 
Fast ReplyReply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



Быстрый заказ, позвонить +7-978-708-85-73
Дроссель Amadeus Productions. Быстрый заказ по телефону.
(Viber, WhatsApp, Telegram)
Amadeus Productions Дроссельный узел на Lancer IX 1.6 (4G18), 2.0 (4G63) и другие моторы
Ремкомплект РХХ на Mitsubishi Lancer IX, 1.6 (4G18), MD619857, 1450A116
Облегченный маховик на 1.6 (4G18) и другие моторы
Облегченные шкивы на 1.6 (4G18) и другие моторы
One-touch или "Ленивые поворотники"