Наверное уже никому в наше время не нужно объяснять, что такое тачпад? Этим удобным манипулятором снабжены все современные ноутбуки. Вместо джойстика или мышки, для перемещения курсора и кликов мы используем тачпад, или, по-научному, сенсорную панель.

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

Для решения этой задачи нам понадобится соединить вместе контроллер Ардуино Уно, зуммер, и, собственно, сам датчик. В качестве последнего будем использовать небольшую платку на базе сенсорного чипа TTP223. Для питания устройства годится напряжение в диапазоне от 2 до 5.5 Вольт.

Данный датчик является цифровым, а значит он выдает только одно из двух возможных значений: истина или ложь. В электронике это соответствует высокому и низкому уровню напряжения, соответственно.

1. Подключение

Использованный нами в уроке ёмкостный датчик имеет три контакта:

  • VCC — питание +5В;
  • GND — земля;
  • OUT — сигнал.

Как и все прочие цифровые датчики, линию OUT мы подключаем к любому свободному цифровому входу Ардуино Уно. Традиционно, используем для работы с датчиком вход №2. Получившаяся схема будет иметь вид:

Внешний вид макета

2. Программа

Теперь попробуем оживить всё это. Все что нам потребуется — это считывать состояние вывода №2 на каждом такте программы, и в зависимости от полученного значения, включать или выключать зуммер. Вот что у нас получается:

Int capPin = 2; int buzzPin = 11; void setup() { pinMode(capPin, INPUT); pinMode(buzzPin, OUTPUT); } void loop() { if(digitalRead(capPin)) digitalWrite(buzzPin, HIGH); else digitalWrite(buzzPin, LOW); }

Наконец, записываем программу на Ардуино Уно, и смотрим что получилось!

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

В этой статье предлагаю достаточно простую электронную схему сенсорного включателя, которую может собрать практически любой человек. Состоит эта схема всего из нескольких электронных компонентов, главными из которых являются биполярные транзисторы, выполняющие роль усилителей сигнала. Ко входу (базе) первого транзистора подсоединяется сам провод сенсора (к которому нужно прикасаться). С выхода транзистора выходит усиленный в сотни раз сигнал, что подаётся на следующий элемент. Второй транзистор усиливает ещё больше уже до этого усиленный сигнал, ну и то же самое делает третий каскад схемы. В итоге мы из крайне малого сигнала, идущего от сенсора, получаем ток, что может зажечь светодиод (либо включить реле, что будет управлять тем или иным устройством).

Напомню, что биполярный транзистор представляет собой полупроводниковый элемент, имеющий три вывода (эмиттер, коллектор и база). Он способен усиливать электрический сигнал в 10-1000 раз. При подаче на управляющий вывод небольшого сигнала (где-то от 0,6 до 0,7 вольт) на выходе мы можем получить уже электрический ток и/или напряжение гораздо большей величины.

База является управляющим электродом, относительно эмиттера. То есть, от источника питания подается на базу (через ограничивающий резистор, создающий некое смещение) и коллектор определенная величина напряжения. При напряжении между базой и эмиттером до 0,6 вольт транзистор ещё будет закрыт (не будет пропускать через себя ток относительно эмиттера и коллектора). Повышая напряжение между базой и эмиттером уже от 0,6 и где-то до 0,7 вольт мы постепенно открывает транзистор от полностью закрытого состояния в полностью открытое. Следовательно, транзистор выполняет роль переменного резистора, который управляется небольшими токами и может изменять своё сопротивления от бесконечно большого до практически нулевого (всё же оно есть, хоть и весьма малое).

Резисторы в схеме простого сенсорного включателя, стоящие в цепи коллекторов, выполняют роль ограничителей тока. Их номиналы 1 мегаом, 1 килоом и 220 ом. Можно ставить маленькой мощности, небольшие по размеру (токи в схеме достаточно малые). В данной электрической схеме применены биполярные транзисторы типа КТ315 (подойдут с любым буквенным индексом). Эти транзисторы старотипные, найти их можно где угодно, и стоят они копейки (если их покупать). Заменить их можно на КТ3102 или любые другие, с похожими характеристиками. Эти транзисторы имеют проводимость n-p-n (новичкам стоит это учесть). Можно поставить в схему транзисторы и обратной проводимости (p-n-p) серии КТ361 или КТ3107, но тогда нужно будет поменять полярность на питании (на плюс подключать минус и наоборот).

Хочу заметить, что данная электрическая схема сенсора является не фиксированной, то есть выходное устройство будет срабатывать и работать только тогда, когда вы касаетесь входного сенсора. Как только вы перестанете касаться сенсора, то и выходное устройство также выключится.

Изначально в схему простого сенсорного включателя я поставил на выход обычный светодиод, который просто зажигался при касании сенсора. Если вместо светодиода поставить небольшое реле, то можно уже на выходе схемы иметь переключатель, что можно подключить к различным электрическим устройствам (звонку, лампочки, двигателю и т.д.). Параллельно катушки реле нужно будет припаять электролитический конденсатор небольшой ёмкости (где-то от 100 до 1000 микрофарад, и напряжением не менее чем у источника питания). А также подключить диод (обратное включение), что позволит исключить влияние на саму схему напряжения самоиндукции, возникающей на катушки реле. Диод подойдет любой!

P.S. Учтите, что светодиод имеет полярность! Если вы поставите его неправильно, то светиться он не будет. В случае использования реле учитывайте выходной ток транзистора. То есть, КТ315 может иметь на своём выходе силу тока не более 100 миллиампер. Следовательно, если поставить большую релюшку, у которой катушка потребляет большие токи, то транзистор может выйти из строя. Нужно ставить реле с соответствующим током на катушке или ставить более мощный биполярный транзистор на выходе схемы.

Предлагаемая для повторения схема представляет собой усилитель, обладающий высокой чувствительностью к электромагнитному полю, создаваемому внешними устройствами. При подключении входного контакта схемы к антенне светодиод сигнализирует о наличии излучения электромагнитного поля и наводок от электрооборудования. Светодиод также будет индицировать факт прикосновения к контакту, так как роль антенны в данном случае выполняет тело человека. Отсюда и название - датчик прикосновения. Другое название схемы - активная антенна .

Принципиальная схема датчика прикосновения показана на Рисунке 1.

Схема напоминает автогенератор на транзисторе n-p-n структуры. Один из выводов обмотки L1 подключается непосредственно к входному контакту X1. Полярность включения светодиода VD1 не имеет значения. Резистор R2 ограничивает ток через светодиод и, тем самым, определяет яркость его свечения при срабатывании датчика.

Датчик прикосновения собран на макетной плате размером 40 × 40 мм. Внешний вид конструкции показан на Рисунке 2.

Рисунок 2. Внешний вид датчика прикосновения.

Обмотки L1 и L2 расположены на общем каркасе с двумя секциями для намотки и подстроечным ферритовым сердечником. Наружный диаметр каркаса - 10 мм, длина сердечника - 23 мм, диаметр резьбы у основания сердечника - 6 мм. В конструкции, показанной на Рисунке 2, L1 намотана на верхней секции, L2 - на нижней. Каждая катушка содержит 100 витков провода ПЭЛ 0,2. Обмотки включены согласно. При помощи отвертки сердечник ввинчивается внутрь каркаса. Светодиод VD1 - любой из серии АЛ307 . В качестве Х1 использован лепесток заземления. Прикосновение к нему вызывает зажигание светодиода.

Параллельно VD1 можно подключить измерительный прибор, к примеру, мультиметр в режиме измерения напряжения, что позволит оценивать уровень напряженности поля. В этом случае внешняя антенна может представлять собой отрезок монтажного провода длиной несколько сантиметров. Настройка схемы будет сводиться к выбору длины антенны и поиску такого положения сердечника, при котором напряжение на светодиоде максимально.

Схема не привередлива к выбору элементной базы. К примеру, в первоначальном варианте схемы применялся транзистор КТ815Г , сопротивление резистора R1 составляло 100 кОм. В качестве L1 и L2 использовались две катушки на стержневом ферритовом сердечнике длинноволновой магнитной антенны из радиоприемника. Катушки можно было двигать вдоль сердечника. При перемещении катушек наблюдались явления, не противоречащие закону электромагнитной индукции, в отличие от схемы, предложенной в . При значительном удалении катушек друг от друга и без ферритового сердечника схема работать переставала.

Практическое применение схема может найти не только при конструировании измерителей напряженности поля, но и в устройствах автоматики и сигнализации. Датчик прикосновения можно подключить к микроконтроллеру. Для этого следует выполнить аналого-цифровое преобразование напряжения на светодиоде VD1, возможно, с помощью ресурсов самого микроконтроллера, если он содержит встроенный АЦП.

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

Литература

  1. Бровин В. И. Явление передачи энергии индуктивностей через магнитные моменты вещества, находящегося в окружающем пространстве, и его применение. - М.: МетаСинтез, 2003 - 20 с.
  2. Крылов К. С., Ли Жаехо, Ким Янг Жин, Ким Сеунгхван, Ли Санг-Ха. Патент на изобретение №2395876. Активная магнитная антенна с ферритовым сердечником.

Емкостной датчик – это один из типов бесконтактных датчиков, принцип работы которого основан на изменении диэлектрической проницаемости среды между двух обкладок конденсатора. Одной обкладкой служит сенсорный датчик схемы в виде металлической пластины или провода, а второй – электропроводящее вещество, например, металл, вода или тело человека.

При разработке системы автоматического включения подачи воды в унитаз для биде возникла необходимость применения емкостного датчика присутствия и выключателя, обладающих высокой надежностью, устойчивостью к изменению внешней температуры, влажности, пыли и питающему напряжению. Хотелось также исключить необходимость прикосновения человека с органами управления системы. Предъявляемые требования могли обеспечить только схемы сенсорных датчиков, работающих на принципе изменения емкости. Готовой схемы удовлетворяющей необходимым требованиям не нашел, пришлось разработать самостоятельно.

Получился универсальный емкостной сенсорный датчик, который не требует настройки и реагирует на приближающиеся электропроводящие предметы, в том числе и человека, на расстояние до 5 см. Область применения предлагаемого сенсорного датчика не ограничена. Его можно применять, например, для включения освещения, систем охранной сигнализации, определения уровня воды и в многих других случаях.

Электрические принципиальные схемы

Для управления подачей воды в биде унитаза понадобилось два емкостных сенсорных датчика. Один датчик нужно было установить непосредственно на унитазе, он должен был выдавать сигнал логического нуля при присутствии человека, а при отсутствии сигнал логической единицы. Второй емкостной датчик должен был служить включателем воды и находиться в одном из двух логических состояний.

При поднесении к сенсору руки датчик должен был менять логическое состояние на выходе – из исходного единичного состояния переходить в состояние логического нуля, при повторном прикосновении руки из нулевого состояния переходить в состояние логической единицы. И так до бесконечности, пока на сенсорный включатель поступает разрешающий сигнал логического нуля с сенсорного датчика присутствия.

Схема емкостного сенсорного датчика

Основой схемы емкостного сенсорного датчика присутствия является задающий генератор прямоугольных импульсов, выполненный по классической схеме на двух логических элементах микросхемы D1.1 и D1.2. Частота генератора определяется номиналами элементов R1 и C1 и выбрана около 50 кГц. Значение частоты на работу емкостного датчика практически не влияет. Я менял частоту от 20 до 200 кГц и влияния на работу устройства визуально не заметил.

С 4 вывода микросхемы D1.2 сигнал прямоугольной формы через резистор R2 поступает на входы 8, 9 микросхемы D1.3 и через переменный резистор R3 на входы 12,13 D1.4. На вход микросхемы D1.3 сигнал поступает с небольшим изменением наклона фронта импульсов из-за установленного датчика, представляющего собой кусок провода или металлическую пластину. На входе D1.4, из за конденсатора С2, фронт изменяется на время, необходимое для его перезаряда. Благодаря наличию подстроечного резистора R3, есть возможность фронты импульса на входе D1.4, выставить равным фронту импульса на входе D1.3.

Если приблизить к антенне (сенсорному датчику) руку или металлический предмет, то емкость на входе микросхемы DD1.3 увеличится и фронт поступающего импульса задержатся во времени, относительно фронта импульса, поступающего на вход DD1.4. чтобы «уловить» эту задержку про инвертированные импульсы подаются на микросхему DD2.1, представляющую собой D триггер, работающий следующим образом. По положительному фронту импульса, поступающего на вход микросхемы C, на выход триггера передается сигнал, который в тот момент был на входе D. Следовательно, если сигнал на входе D не изменяется, поступающие импульсы на счетный вход C не оказывают влияния на уровень выходного сигнала. Это свойство D триггера и позволило сделать простой емкостной сенсорный датчик.

Когда емкость антенны, из за приближения к ней тела человека, на входе DD1.3 увеличивается, импульс задерживается и это фиксирует D триггер, изменяя свое выходное состояние. Светодиод HL1 служит для индикации наличия питающего напряжения, а HL2 для индикации приближения к сенсорному датчику.

Схема сенсорного включателя

Схему емкостного сенсорного датчика можно использовать и для работы сенсорного включателя, но с небольшой доработкой, так как ему необходимо не только реагировать на приближение тела человека, но и оставаться в установившемся состоянии после удаления руки. Для решения этой задачи пришлось к выходу сенсорного датчика добавить еще один D триггер, DD2.2, включенный по схеме делителя на два.

Схема емкостного датчика была немного доработана. Для исключения ложных срабатываний, так как человек может подносить и удалять руку медленно, из-за наличия помех датчик может выдавать на счетный вход D триггера несколько импульсов, нарушая необходимый алгоритм работы включателя. Поэтому была добавлена RC цепочка из элементов R4 и C5, которая на небольшое время блокировала возможность переключение D триггера.


Триггер DD2.2 работает так же, как и DD2.1, но сигнал на вход D подается не с других элементов, а с инверсного выхода DD2.2. В результате по положительному фронту импульса, приходящего на вход С сигнал на входе D изменяется на противоположный. Например, если в исходном состоянии на выводе 13 был логический ноль, то поднеся руку к сенсору один раз, триггер переключится и на выводе 13 установится логическая единица. При следующем воздействии на сенсор, на выводе 13 опять установится логический ноль.

Для блокировки включателя при отсутствии человека на унитазе, с сенсора на вход R (установка нуля на выходе триггера вне зависимости от сигналов на всех остальных его входах) микросхемы DD2.2 подается логическая единица. На выходе емкостного выключателя устанавливается логический ноль, который по жгуту подается на базу ключевого транзистора включения электромагнитного клапана в Блоке питания и коммутации.

Резистор R6, при отсутствии блокирующего сигнала с емкостного датчика в случае его отказа или обрыва управляющего провода, блокирует триггер по входу R, тем самым исключает возможность самопроизвольной подачи воды в биде. Конденсатор С6 защищает вход R от помех. Светодиод HL3 служит для индикации подачи воды в биде.

Конструкция и детали емкостных сенсорных датчиков

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

Сенсорного датчика присутствия

По выше опубликованной схеме сделал опытный образец. Детали емкостного датчика собраны на печатной плате, плата размещена в пластмассовой коробке и закрывается крышкой. Для подключения антенны в корпусе установлен одноштырьковый разъем, для подачи питающего напряжения и сигнала установлен четырех контактный разъем РШ2Н. Соединена печатная плата с разъемами пайкой медными проводниками в фторопластовой изоляции.

Сенсорный емкостной датчик собран на двух микросхемах КР561 серии, ЛЕ5 и ТМ2. Вместо микросхемы КР561ЛЕ5 можно применить КР561ЛА7. Подойдут и микросхемы 176 серии, импортные аналоги. Резисторы, конденсаторы и светодиоды подойдут любого типа. Конденсатор С2, для стабильной работы емкостного датчика при эксплуатации в условиях больших колебаниях температуры окружающей среды нужно брать с малым ТКЕ.

Установлен датчик под площадкой унитаза, на которой установлен сливной бачек в месте, куда в случае протечки из бачка вода попасть не сможет. К унитазу корпус датчика приклеен с помощью двустороннего скотча.


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

Для настойки чувствительности сенсорного датчика необходимо после его установки на унитаз, изменяя сопротивление подстроечного резистора R3 добиться, чтобы светодиод HL2 погас. Далее положить руку на крышку унитаза над местом нахождения сенсора, светодиод HL2 должен загораться, если руку убрать, потухнуть. Так как бедро человека по массе больше руки, то при эксплуатации сенсорный датчик, после такой настройки, будет работать гарантировано.

Конструкция и детали емкостного сенсорного включателя

Схема емкостного сенсорного включателя имеет больше деталей и для их размещения понадобился корпус большего размера, да и по эстетическим соображениям, внешний вид корпуса, в котором был размещен сенсорный датчик присутствия не очень подходил для установки на видном месте. Внимание на себя обратила настенная розетка rj-11 для подключения телефона. По размерам она подходила и имела хороший внешний вид. Удалив из розетки все лишнее, разместил в ней печатную плату емкостного сенсорного выключателя.


Для закрепления печатной платы в основании корпуса была установлена короткая стойка и к ней с помощью винта прикручена печатная плата с деталями сенсорного выключателя.


Датчик емкостного сенсора сделал, приклеив ко дну крышки розетки клеем «Момент» лист латуни, предварительно вырезав в них окошко для светодиодов. При закрывании крышки, пружина (взята от кремневой зажигалки) соприкасается с латунным листом и таким образом обеспечивается электрический контакт между схемой и сенсором.


Крепится емкостной сенсорный включатель на стену с помощью одного самореза. Для этого в корпусе предусмотрено отверстие. Далее устанавливается плата, разъем и закрепляется защелками крышка.


Настройка емкостного выключателя практически не отличается от настройки сенсорного датчика присутствия, описанного выше. Для настойки нужно подать питающее напряжение и резистором отрегулировать, чтобы светодиод HL2 загорался, когда к датчику подносится рука, и гас, при ее удалении. Далее нужно активировать сенсорный датчик и поднести и удалить руку к сенсору выключателя. Должен мигнуть светодиод HL2 и загореться красный светодиод HL3. При удалении руки красный светодиод должен продолжать светиться. При повторном поднесении руки или удалении тела от датчика, светодиод HL3 должен погаснуть, то есть выключить подачу воды в биде.

Универсальная печатная плата

Представленные выше емкостные датчики собраны на печатных платах, несколько отличающихся от печатной платы приведенной ниже на фотографии. Это связано с объединением обеих печатных плат в одну универсальную. Если собирать сенсорный включатель, то необходимо только перерезать дорожку под номером 2. Если собирать сенсорный датчик присутствия, то удаляется дорожка номер 1 и не все элементы устанавливаются.


Не устанавливаются элементы, необходимые для работы сенсорного включателя, но мешающие работе датчика присутствия, R4, С5, R6, С6, HL2 и R4. Вместо R4 и С6 запаиваются проволочные перемычки. Цепочку R4, С5 можно оставить. Она не будет влиять на работу.

Ниже приведен рисунок печатной платы для накатки при использовании термического метода нанесения на фольгу дорожек.

Достаточно распечатать рисунок на глянцевой бумаге или кальке и шаблон готов для изготовления печатной платы.

Безотказная работа емкостных датчиков для сенсорной системы управления подачи воды в биде подтверждена на практике в течении трех лет постоянной эксплуатации. Сбоев в работе не зафиксировано.

Однако хочу заметить, что схема чувствительна к мощным импульсным помехам. Мне приходило письмо о помощи в настройке. Оказалось, что во время отладки схемы рядом находился паяльник с тиристорным регулятором температуры. После выключения паяльника схема заработала.

Еще был такой случай. Емкостной датчик был установлен в светильник, который подключался в одну розетку с холодильником. При его включении свет включался и при повторном выключался. Вопрос был решен подключением светильника в другую розетку.

Приходило письмо об успешном применении описанной схемы емкостного датчика для регулировки уровня воды в накопительном баке из пластика. В нижней и верхней части было приклеено силиконом по датчику, которые управляли включением и выключением электрического насоса.

О том, как прикрутить к микроконтроллеру ёмкостный сенсор прикосновения. Эта идея показалась мне довольно перспективной, некоторым приборам сенсорные клавиши подошли бы куда лучше механических. В этой статье я расскажу о своей реализации этой полезной технологии на основе отладочной платы STM32 Discovery.

Итак, только начав осваивать STM32, я решил в качестве упражнения добавить устройству способность определять прикосновения. Начав разбираться с теорией и практикой по вышеупомянутой статье, я повторил схему товарища "a. Она работала идеально, но мне, любителю минимализма, захотелось её упростить, избавившись от лишних элементов. Лишними на мой взгляд оказались внешний резистор и дорожка к питанию. Всё это уже есть в большинстве микроконтроллеров, в том числе в AVR и в STM32. Я имею в виду подтягивающие резисторы портов ввода/вывода. Почему бы не заряжать пластинку и наши пальцы через них? В ожидании подвоха я собрал на макетке схему, которая, к моему удивлению, заработала с первого же раза. Собственно говоря, схемой это называть даже смешно, ведь всё что нам нужно - это просто подсоединить контактную пластинку к ножке отладочной платы. Всю работу на себя возьмёт микроконтроллер.

Что же из себя представляет программа? Во первых две функции:
Первая выводит на ножку сенсора (нулевой пин регистра C) логический «0»

Void Sensor_Ground (void) { GPIOC->CRL = 0x1; GPIOC->BRR |= 0x1; }

Вторая настраивает тот же вывод на вход, с подтяжкой к питанию.

Void Sensor_InPullUp (void) { GPIOC->CRL = 0x8; GPIOC->BSRR |= 0x1; }

Теперь в начале цикла опроса вызовем Sensor_Ground(), и подождём некоторое время чтобы разрядить на землю весь остаточный заряд на сенсоре. Затем обнулим переменную count, которой будем считать время зарядки сенсора и вызовем Sensor_InPullUp().

Sensor_Ground(); Delay(0xFF); //простой пустой счётчик count = 0; Sensor_InPullUp();

Теперь сенсор начинает заряжаться через внутренний подтягивающий резистор номиналом порядка десятков КОм (30..50КОм у STM32). Постоянная времени такой цепи будет равняться считанным тактам, поэтому я поменял кварцевый резонатор на отладочной плате на более быстрый, 20МГц (кстати, я не сразу заметил, что оказывается на STM32 Discovery кварц меняется без пайки). Итак считаем такты процессора, пока на входе не появится логическая единица:

While(!(GPIOC->IDR & 0x1)) { count++; }

После выхода из этого цикла в переменной count будет храниться число, пропорциональное ёмкости сенсорной пластинки. В моём случае с чипом на 20МГц значение count равняется 1 при отсутствии нажатия, 7-10 при самом лёгком касании, 15-20 при нормальном прикосновении. Остаётся лишь сравнить её с пороговым значением и не забыть снова вызвать Sensor_Ground(), чтобы к следующему циклу опроса сенсор уже был разряжен.
Полученной чувствительности хватает для уверенного определения прикосновений к голым металлическим площадкам. При прикрытии сенсора листом бумаги или пластика чувствительность падает в три - четыре раза, хорошо определяются только уверенные нажатия. Чтобы увеличить чувствительность в случае, когда сенсор необходимо прикрыть защитным материалом, можно повысить тактовую частоту микроконтроллера. С чипом серии STM32F103, способном работать на частотах до 72МГц, помехой не будут и миллиметровые преграды между пальцем и сенсором.
По сравнению с реализацией "a, мой подход работает гораздо быстрее (порядка десятка тактов на опрос одного сенсора), поэтому я не стал усложнять программу, настраивая прерывания по таймеру.

Напоследок видео с демонстрацией работы сенсора.

Main.c тестовой программы.

На микроконтроллер

Cпасибо пользователю за очень полезную статью ARM-микроконтроллеры STM32F. Быстрый старт c STM32-Discovery , пользователю за идею и доходчивое теоретическое описание.

UPD. После комментариев "a я решил разобраться с тактированием и обнаружил, что по умолчанию STM32 Discovery настроен на тактовую частоту
(HSE / 2) * 6 = 24 MHz, где HSE - частота внешнего кварца. Соответственно поменяв кварц с 8 на 20 МГц, я заставил бедную STM"ку работать на 60 МГц. Так что во-первых, некоторые из выводов очевидно не совсем верны, во-вторых то чем я занимался может привести к сбоям чипа. На случай таких сбоев в микроконтроллере есть HardFault прерывание, воспользовавшись им, я проверил более высокие частоты. Так вот, сбоить чип начинает только на 70 МГц. Но хотя эту конкретную программу контроллер переваривает на 60МГц, при использовании периферии или работе с Flash памятью он может повести себя непредсказуемо. Вывод: относитесь к данному топику как к эксперименту, повторяйте только на свой страх и риск.



Эта статья также доступна на следующих языках: Тайский

  • Next

    Огромное Вам СПАСИБО за очень полезную информацию в статье. Очень понятно все изложено. Чувствуется, что проделана большая работа по анализу работы магазина eBay

    • Спасибо вам и другим постоянным читателям моего блога. Без вас у меня не было бы достаточной мотивации, чтобы посвящать много времени ведению этого сайта. У меня мозги так устроены: люблю копнуть вглубь, систематизировать разрозненные данные, пробовать то, что раньше до меня никто не делал, либо не смотрел под таким углом зрения. Жаль, что только нашим соотечественникам из-за кризиса в России отнюдь не до шоппинга на eBay. Покупают на Алиэкспрессе из Китая, так как там в разы дешевле товары (часто в ущерб качеству). Но онлайн-аукционы eBay, Amazon, ETSY легко дадут китайцам фору по ассортименту брендовых вещей, винтажных вещей, ручной работы и разных этнических товаров.

      • Next

        В ваших статьях ценно именно ваше личное отношение и анализ темы. Вы этот блог не бросайте, я сюда часто заглядываю. Нас таких много должно быть. Мне на эл. почту пришло недавно предложение о том, что научат торговать на Амазоне и eBay. И я вспомнила про ваши подробные статьи об этих торг. площ. Перечитала все заново и сделала вывод, что курсы- это лохотрон. Сама на eBay еще ничего не покупала. Я не из России , а из Казахстана (г. Алматы). Но нам тоже лишних трат пока не надо. Желаю вам удачи и берегите себя в азиатских краях.

  • Еще приятно, что попытки eBay по руссификации интерфейса для пользователей из России и стран СНГ, начали приносить плоды. Ведь подавляющая часть граждан стран бывшего СССР не сильна познаниями иностранных языков. Английский язык знают не более 5% населения. Среди молодежи — побольше. Поэтому хотя бы интерфейс на русском языке — это большая помощь для онлайн-шоппинга на этой торговой площадке. Ебей не пошел по пути китайского собрата Алиэкспресс, где совершается машинный (очень корявый и непонятный, местами вызывающий смех) перевод описания товаров. Надеюсь, что на более продвинутом этапе развития искусственного интеллекта станет реальностью качественный машинный перевод с любого языка на любой за считанные доли секунды. Пока имеем вот что (профиль одного из продавцов на ебей с русским интерфейсом, но англоязычным описанием):
    https://uploads.disquscdn.com/images/7a52c9a89108b922159a4fad35de0ab0bee0c8804b9731f56d8a1dc659655d60.png