Меню

Генератор сигналов на stm32f103c8t6 своими руками

О радостях и трудностях первого знакомства с STM32 после AVR. Как я реализовывал простейшую задачу — передачу данных на ПК.
5f1bdb09e04b4acb8f0b8a06df379738.JPG
Имея некий опыт работы с AVR, хочется сравнить приехавшие контроллеры (которые по отдельности стоят 1.7$/шт) с близкими к ним по цене ATMEGA328 (1.4 $/шт).

ATMEGA328 STM32F103C8T6 Выигрыш, раз
Flash, кБ 32 64 2
ОЗУ, кБ 2 20 10
Максимальная частота, МГц 20 72 3.6
Скорость АЦП, kSPS 15 2*1000 (можно разогнать) 133

На фоне роста показателей производительности в 10-100 раз, Flash увеличилась всего в 2 раза. Причём, эти 64 кБ расходуются чуть ли не быстрей, чем 32 на AVR. Логично применять такие контроллеры там, где нужна высокая производительность, но нет кодоёмких алгоритмов… например, осциллограф.

Чем программировать

Сред программирования STM32 великое множество — IAR, Keil, Coocox… поначалу кажется, что это хорошо и точно найдёшь что-то подходящее. Потом приходит понимание как такой зоопарк образовался. Просто кто-то сделал не очень хорошую IDE. Остальные на это посмотрели и решили, что они могут сделать лучше. И сделали. В чём-то получилось лучше, в чём-то хуже. Почитав обзоры и попробовав IAR, остановился на Coocox.

Есть ещё одна программа — STM32CubeMX. Дело в том, что периферии в STM32 гораздо больше, чем в AVR. Инициализировать её гораздо сложнее. STM32CubeMX позволяет выбрать контроллер, потыкать мышкой и сгенерировать код инициализации. Даже если мы не хотим использовать этот сгенерированный код, в STM32CubeMX удобно посмотреть распиновку и схему тактирования, подобрать делители, множители и вручную их прописать в своём коде! Очень рекомендую всем начинающим!

STMStudio — программа позволяющая в реальном времени наблюдать значения переменных в МК.

В качестве программатора решил использовать дешёвый ST-Link V2 за 2.6$.
Подключается всё очень просто. Берём распиновку JTAG,
a5f9089dc1804f7ba79a8dd0fb17a8c4.jpg

смотрим рисунок на ST-Link,
70f1e91f547944d89b761d15eb977082.JPG

и соединяем одноимённые выводы. Запускаем CoIDE, пишем

Blink

#include "stm32f10x.h"
int main(void)
{
        RCC->APB2ENR |= RCC_APB2Periph_GPIOC; // включаем тактирование порта
        GPIOC->CRH |= (0x3 << 20); // ставим частоту 50 МГц
        GPIOC->CRH &= (~(0xC << 20)); // переводим ногу в режим выхода тяни-толкай
        volatile long i = 0;
        while(1)
        {
                GPIOC->BSRR = GPIO_BSRR_BR13;
                for(i = 0; i < 1000*1000*5; i++){;};
                GPIOC->BSRR = GPIO_BSRR_BS13;
                for(i = 0; i < 1000*1000*5; i++){;};
        }
}

Не сильно сложней, чем в AVR, однако, занимает программа 2264 байта во Flash… Это при том, что на AVR весь код металлоискателя занимал меньше.
Ради интереса удалил весь код и скомпилировал пустую программу — 2176 байт.
Отключил STDLIB — 1476 байт.


компилируем, прошиваем… и всё сразу заработало! Безо всяких танцев с бубном! Даже внутрисхемный отладчик заработал! Запускаем STMStudio — и она работает. Строит графики переменных во время работы МК! На плате есть перемычки, но ничего переключать, чтобы запрограммировать/запустить МК не надо! Прям как с Arduino! Ну не может же быть всё так хорошо… да не может.

Начинаем делать осциллограф


В моих мечтах осциллограф должен был работать следующим образом:
Оба АЦП одновременно обрабатывают сигнал со скоростью 1-2 MSPS. Далее 2 варианта:

  1. Всё это в реальном времени передаётся на ПК по USB и там принимается решение о том, что с этим делать (запомнить, построить график, как-то обработать, …);
  2. После каждого преобразования происходит прерывание. В обработчике прерываний мы принимаем решение: ждать ещё или начать запоминать данные (например, хотим чтобы сигнал на экране начинался с некого уровня, как в аналоговом осциллографе, или чуть раньше этого уровня). В этом же обработчике складируем данные в буфер и по его заполнению отправляем на ПК.

Оба эти варианта реализовать не удалось.
Первый потому, что я не смог запустить USB. Вернее смог только сгенерировав проект в STM32CubeMX. Но после экспорта его в CoIDE потребовалось перемычками менять загрузчик для программирования/работы, что не удобно. Поэтому от этого варианта отказался. Ну и вдобавок скорость USB всего 12 МБит/с. Данные на высокой скорости в реальном времени всё равно не влезут. Чтобы хоть как-то передавать данные на комп, подключил преобразователь USB UART
69978e86b4084852813ab740c01b73a5.JPG
купленный в своё время для программирования Arduino Pro Mini.

Второй вариант накрылся т.к. обработчик прерывания работает дольше, чем АЦП. Скорость ограничилась всего 340-500 kSPS, что в разы меньше ожидаемой.

Единственным рабочим высокоскоростным вариантом оказался такой: АЦП непрерывно работают, когда нам нужен замер, включаем DMA, ждём наполнения буфера, отключаем DMA и потихоньку передаём данные на ПК через USART. Этот вариант превзошёл все ожидания. МК можно разогнать так, что получается 9 MSPS с двух АЦП! Т.е. в 4.5 раза больше, чем по документации! При этом достаточно комфортно наблюдать сигнал частотой до 1 МГц. По сравнению с тем, что удалось достичь раньше на Arduino (10 kSPS) результат очень хороший — скорость увеличил в 900 раз!

Однако, с разгоном не всё так радостно. В дальнейшем, чтобы мог работать USB, частоту придётся снизить в 16/9 = 1.8 раз и тогда получится всего 5 MSPS.

Пока пытался разобраться с USB и прочей периферией осознал существенный недостаток этих контроллеров — очень мало информации в интернете. Если на AVR есть куча всего, то тут найти пример одновременной работы двух АЦП в режиме Fast interleaved оказалось не так просто.

В качестве генератора сигналов для теста осциллографа был выбран… Arduino UNO! Не потому что он хороший или ещё что… просто это очень быстро.

Написать 8 строк:

 void setup() {
  pinMode(2, OUTPUT);  
  long d = 10;
  for(;;){
    PORTD = 255;
    delayMicroseconds(d);
    PORTD = 0;  
    delayMicroseconds(d);
  }
}

void loop() {
  
}


Подключить USB + 1 проводок (чтобы 3.3 вольтный STM32 не умер от 5 вольтного сигнала, сигнал подан через резистор в 2 кОм) и готово!

Получилось следующее (под каждым изображением фотография этого же сигнала на экране аналогового осциллографа):
20aa2637bd004af795612b816daff450.png
5c765030d3f84f47bf296b1d5884fb16.JPG
Период сигнала 0.9 мкс. 1 замер = 10 пикселей. На осциллографе 1 деление = 0.5мкс.

cf1142f854b7475c86103aee9e2080f1.png
ebd9326e95f94941a67fdb61ec94353b.JPG
Период сигнала 10 мкс. 1 замер = 5 пикселей. На осциллографе 1 деление = 2мкс. Верхушки обрублены из-за превышения сигналом опорного напряжения АЦП.

Что дальше


В планах:

  1. Победить USB, чтобы отказаться от преобразователя USB <-> USART;
  2. Доделать аналоговую часть, чтобы диапазон входных напряжений был не 0 — 3.3 В, а более приличным;
  3. Сделать многоканальный режим;
  4. Реализовать управление с ПК;
  5. Сделать законченное устройство в корпусе.

В заключение обращаю внимание на два вскрывшихся недостатка STM32 по сравнению с AVR:

  1. Повышенный расход Flash памяти;
  2. Сложная инициализация периферии, которая усугубляется нехваткой материалов.

На случай, если кому понадобится: проект CoIDE и рисовалка графика на C#. Код везде сырой. Не знаю как, но на такую простую задачу, ушло 31 кБ Flash.

© Geektimes

Способный одновременно генерировать сигналы прямоугольной и пилообразной формы, обычно состоит из двух частей (рис. 36.1):

♦ неинвертирующего триггера Шмитта на микросхеме DA1;

♦ интегратора на микросхеме DA2.

При С 1=4,7 нФ частота генерации — 30 кГц, при 0=47 нФ —

20 Гц. Напряжение питания генератора может варьироваться в пределах 4,5-18 В.

Учитывая высокую актуальность функциональных генераторов, были созданы специализированные микросхемы таких генераторов. Примером является ICL8038 фирмы Harris Semiconductor.

Напряжение питания ±(5-15) В при двуполярном питании или 10-30 В — при однополярном. Потребляемый микросхемой ток не превышает 20 мА (номинальный — 12 мА) при напряжении питания ±10 В. Амплитуда выходного напряжения треугольной формы на сопротивлении нагрузки 100 кОм достигает 1/3 от напряжения питания, для сигнала синусоидальной формы — до 0,22 от напряжения питания.

Варианты подключения внешних элементов регулировки режима работы микросхемы ICL8038 приведены на рис. 36.6.

При использовании микросхемы ICL8038 (рис. 36.7) удобно

Рис. 36.6. Варианты подключения резистивных элементов к микросхеме ICL8038

Рис. 36.7. Вариант включения микросхемы ICL8038 с частотной модуляцией генерируемых сигналов

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

Для уменьшения искажений сигнала синусоидальной формы применяют регулировки, предусмотренные схемным решением, представленным на рис. 36.8.

Рис. 36.8. включения микросхемы ICL8038 с минимизацией искажения сигнала синусоидальной формы

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

микросхемы ОУ; для приведенного случая нагрузки не должно быть менее 1 кОм.

Рис. 36.9. на микросхеме ICL8038 с повышенной нагрузочной способностью для сигнала синусоидальной формы

Рис. 36Л0. на микросхеме ICL8038 с регулировкой частоты от 20 Гц до 20 кГц

Практическая широкодиапазонного , перекрывающего весь диапазон звуковых частот, приведена на рис. 36.10. Потенциометром R7 минимизируют искажения сигнала синусоидальной формы. R3 предназначен для регулировки соотношения импульс/ пауза (или симметрии) генерируемых сигналов. Потенциометром R10 регулируют частоту генерируемых сигналов.

Аддитивный формирователь сигналов треугольной формы

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

DA1-DA3 собран LR- сигналов синусоидальной формы, с выходов которого снимаются сдвинутые по фазе на угол 90° сигналы (точки А и В). Эти сигналы подаются на входы двух прецизионных выпрямителей, выполненных DA4, DA5 и DA6, DA7, соответственно. Сигналы с выходов выпрямителей (точки С и D) смешиваются на резистивном сумматоре-делителе напряжения R13, R15, R16 (точка Е). Выходной сигнал (точка Е) имеет треугольную форму с отклонением от линейности до 3 %.

Рабочая частота генератора определяется номиналами частотозадающих цепей — индуктивностей LI, L2, сдвоенного потенциометра R9, R10 и резисторов R7, R8. Для указанных номиналов диапазон частоты перестройки составляет 3300-4000 Гц.

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

Рис. 36.11. беземкостного перестраиваемого генератора сигналов треугольной формы

R7/R9=R8/R10 становится заметной выраженная зависимость амплитуды выходного сигнала от частоты. Для исключения этого недостатка необходимо либо сузить диапазон перестройки генератора, либо использовать промежуточные усилители с автоматической регулировкой усиления.

Инверсного построения

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

С. И. Семенова — прецизионные двухполупериодные выпрямители (микросхемы DA4, DA5 и DA9, DA10), выходные сигналы которых складываются в противофазе, формируя тем самым сигнал треугольной формы. Сигнал треугольной формы поступает затем на схему формирования биполярных импульсов прямоугольной формы (микросхемы DA6-DA8).

Диаграммы сигналов в различных точках устройства показаны на рис. 36.12.

Работает в диапазоне частот: для сигналов синусоидальной формы — 50-500 Гц, для сигналов треугольной и прямоугольной формы (с удвоением исходной частоты) — 100-1000 Гц. Рабочую частоту плавно меняют перестройкой сдвоенного потенциометра R9, R10. Ступенчатое переключение диапазона генерируемых частот вплоть до субгерцовых может быть обеспечено переключением частотозадающих конденсаторов С2 и СЗ. Так, при уменьшении емкостей конденсаторов С2 и СЗ в 10 раз, т. е. до 3,3 нФ, диапазон генерируемых частот составляет 1000-10000 Гц по пилообразному и прямоугольному сигналам; по синусоидальному — 500-5000 Гц.

Шустов М. А., Схемотехника. 500 устройств на аналоговых микросхемах. — СПб.: Наука и Техника, 2013. -352 с.

Генераторы сигналов на ICL8038.

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

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

На выходе TL071 установлен резистивный делитель напряжения, что позволяет иметь выходной сигнал нормального и высокого уровня. Так же возможна регулировка усиления с помощью потенциометра номиналом 100 кОм. Между самим генератором и усилителем установлен галетный переключатель на 3 положения, посредством которого выбирается форма выходного сигнала.

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

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

Микросхема ICL8038 способна генерить сигналы частотой от 0.001 Hz до 300 kHz. Даташит на нее вы сможете найти в архиве для скачивания.

Питание схемы двуполярное, реализуется с помощью двух интегральных стабилизаторов 7812 и 7912. На плате расположен диодный мост, собранный на 1N4007 или им подобных диодах, и сглаживающими емкостями номиналом 2200 mF. На клеммы питания подается переменка с трансформатора, напряжение может быть от 2 х 10 до 2 х 15 Вольт.

Исходники печатной платы следующие:

Исходник платы, вид со стороны элементов:

Ну и как обычно, наша переделка изображений в формат LAY6:

Фото-вид LAY6 формата:

Плата генератора на ICL8038 + TL071 в сборе:

Формы выходных сигналов генератора показаны на следующем изображении:

Есть еще одна очень похожая схема, отличие в том, что в ней применен операционный усилитель LM741, смотри следующее изображение:

Исходники платы следующие:

Плата этого варианта генератора, преобразованная в формат LAY6:

Фото-вид платы LAY6 формата:

Обращаем ваше внимание, при сборке второго варианта генератора не забудьте поставить перемычки между точками “A” и “В”, смотрите снимки ниже:

Плата генератора на ICL8038 + LM741 в сборе:

Принципиальные схемы функциональных генераторов на ICL8038, даташит на микросхему генератора, а также печатные платы обоих вариантов можно скачать одним файлом по прямой ссылке с нашего сайта, которая появится на этой же странице после клика по любой строке рекламного блока ниже кроме строки “Оплаченная реклама”. Размер архива – 3 Mb.

Доброго дня уважаемые радиолюбители! Приветствую вас на сайте “ “

Собираем генератор сигналов – функциональный генератор. Часть 1.

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

Почему данный прибор называется функциональный генератор, а не просто генератор (генератор низкой частоты, генератор высокой частоты). Прибор, который мы изготовим, генерирует на своих выходах сразу три различных сигнала: синусоидальный, прямоугольный и пилообразный. За основу конструкции мы возьмем схему С. Андреева, которая опубликована на сайте в разделе: Схемы – Генераторы
.

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

Конечно, цена изделия зависит и от производителя, и от возможностей магазина, и от многих других факторов, но в данном случае мы преследуем одну цель: найти необходимую радиодеталь, которая была бы приемлемого качества и главное – по карману. Вы наверное заметили, что цена микросхемы сильно зависит от ее маркировки (АС, ВС и СС). Чем дешевле микросхема, тем хуже ее характеристики. Я бы порекомендовал остановить свой выбор на микросхеме “ВС”. У нее характеристики не очень сильно отличаются от “АС”, но намного лучше чем у “СС”. Но в принципе, конечно, пойдет и эта микросхема.

Собираем простой функциональный генератор для лаборатории начинающего радиолюбителя

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

А так же выкладываю даташит (техническое описание) микросхем ICL8038 и КР140УД806:

(151.5 KiB, 6,062 hits)

(130.7 KiB, 3,494 hits)

Я уже собрал необходимые детали для сборки генератора (часть у меня была – постоянные сопротивления и полярные конденсаторы, остальные куплены в магазине радиодеталей):

Самыми дорогими деталями оказались микросхема ICL8038 – 145 рублей и переключатели на 5 и 3 положения – 150 рублей. В общей сложности на эту схему придется потратить около 500 рублей. Как видно на фотографии, переключатель на пять положений – двухсекционный (односекционного не было), но это не страшно, лучше больше, чем меньше, тем более, что вторая секция нам возможно пригодится. Кстати, эти переключатели абсолютно одинаковые, а количество положений определяется специальным стопором, который можно установить на нужное число положений самому. На фотографии у меня два выходных разъема, хотя по идее их должно быть три: общий, 1:1 и 1:10
. Но можно поставить небольшой переключатель (один выход, два входа) и коммутировать нужный выход на один разъем. Кроме того хочу обратить внимание на постоянный резистор R6. Номинала в 7,72 МОм в линейке мегаомных сопротивлений нет, ближайший номинал – 7,5 МОм. Для того, чтобы получить нужный номинал придется использовать второй резистор на 220 кОм, соединив их последовательно.

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

Во второй части занятия мы с вами изучим очередной способ изготовления печатных плат – методом ЛУТ (лазерно-утюжный). Саму плату мы будем создавать в популярной радиолюбительской программе для создания печатных плат
SPRINT LAYOUT
.

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

Собираем простой функциональный генератор для лаборатории начинающего радиолюбителя

Доброго дня уважаемые радиолюбители! Приветствую вас на сайте “Радиолюбитель

Собираем генератор сигналов – функциональный генератор. Часть 2.

Доброго дня уважаемые радиолюбители! На сегодняшнем занятии в Школе начинающего радиолюбителя мы продолжим собирать функциональный генератор. Как я уже говорил раннее, сегодняшнее занятие мы посвятим изучению популярной радиолюбительской программы Sprint Layout и изготовлению печатной платы функционального генератора методом ЛУТ (лазерно-утюжная технология).

Перед началом занятия я рекомендую вам скачать файл под названием “Proekt” а также, если кто еще не скачал себе  программу Sprint Layout, скачать с сайта в разделе “Программы” и ее. Занятие будет проходить на пятой версии программы.

Генератор сигналов на stm32f103c8t6 своими руками  Proekt (10.9 KiB, 3,394 hits)

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

1-й вопрос. Программа Sprint Layout. Я предлагаю вам просмотреть видео по работе с данной программой. Сразу хочу оговориться, я (к сожалению) не профессиональный преподаватель, поэтому если заметите какие-то огрехи в видеоуроке прошу сильно не гневаться. Если после самостоятельного изучения программы и просмотра видео у вас еще возникнут какие-либо вопросы по работе с программой, вы можете задать их в комментариях к занятию, а еще лучше на форуме. Подписчикам Школы начинающего радиолюбителя будет дана возможность скачать это занятие себе на компьютер и просмотреть его в более лучшем качестве.

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

2-й вопрос. Изготовление печатной платы методом ЛУТ (лазерно-утюжным).

Собирая лабораторный блок питания мы с вами рассмотрели вопрос изготовления печатной платы старым “дедовским” способом – рисование дорожек на плате вручную. Данная технология оправдана и имеет смысл, когда схема очень проста и нет нужды использовать какую-либо программу для создания печатной платы. Если схема более сложная, имеется много деталей и соединений, то в ручную ее уже не сделать, а если и получиться, то на это уйдет очень много времени. В таком случае конечно, лучше прибегать к помощи специализированной программы для создания печатных плат. Но тогда встает вопрос: как перенести дорожки платы с программы на реальную заготовку? Существует несколько способов. Один из них – перенос дорожек на плату с использованием лазерного принтера и обычного бытового утюга. Подробно с данным способом вы можете ознакомиться на сайте в разделе “Технологии”.

Здесь я хочу поделиться с вами несколькими   моими наблюдениями при использовании данного способа:

Первое – при распечатке слой тонера на бумаге должен быть как можно толще (черный цвет распечатываемой картинки и максимальные установки принтера).

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

Третье – процесс переноса тонера на фольгу. Самый творческий этап в изготовлении платы. В сети можно найти много рекомендаций по этому процессу, но в этом способе много нюансов: используемый утюг, используемая бумага, возможности принтера, как подготовлена фольга и т.д. Поэтому вам необходимо выработать ваш личный процесс переноса тонера на фольгу. Несколько рекомендаций. Определитесь с бумагой, которую вы будете использовать для переноса и старайтесь всегда пользоваться ей; определитесь с утюгом и также старайтесь пользоваться только им, выставляя всегда одну и туже температуру; используйте один и тот-же способ подготовки платы (можно ее просто обезжирить, а можно, к примеру, пройтись нулевкой); вычислите хотя-бы примерное время, достаточное для переноса тонера; уточните силу прижимания утюга (и нужно ли вообще его прижимать, может быть достаточно и самого веса утюга) к плате. А самое главное не бойтесь экспериментировать. Понадобиться тридцать попыток, значит тридцать, больше значит больше, главное вы должны выйти на нужный результат, только тогда вы будете всегда уверены в качестве изготовления вашей платы. Плате по большому счету большого вреда при ваших пробах не будет, а неудачный перенос тонера легко исправляется его удалением с помощью растворителя. Поэтому здесь я хочу вам пожелать настойчивости и конечно, достижения результата. Для приблизительного примера, расскажу как переносил тонер я. Заготовку я распечатал на листе глянцевого журнала (даже не очень и гламурного, особого выбора у меня не было), фольгу платы зачистил нулевкой, протер медь ватным тампоном, приложил заготовку тонером к фольге, а чтобы она не сбилась, подклеил ее в двух местах двумя каплями “Момента” к плате, накрыл чистым листом стандартной бумаги, положил сверху утюг (все это я проделывал на гладильной доске), поставил максимальную температуру и включил его в сеть, после прогрева, секунд 15-20 “гладил плату” (как обычно гладят белье, не прилагая особых усилий, затем в течении где-то одной минуты утюг у меня лежал на плате, и в конце я еще раз в течении 15-20 секунд “прогладил” плату. После этого обязательно дал плате остыть. Все.

Будем считать, что этап переноса тонера на фольгу платы вы выработали. Идем дальше. После того как плата остыла, под струей теплой воды снимаем нашу бумажную заготовку, простым ее скатыванием пальцами с платы. За тонер не бойтесь с ним ничего не случится:

Генератор сигналов на stm32f103c8t6 своими руками

Генератор сигналов на stm32f103c8t6 своими руками

Белесый налет от бумаги, который будет между дорожками платы и на дорожках удаляем аккуратно деревянной палочкой (в крайнем случае можно как всегда использовать ваши ногти):

Генератор сигналов на stm32f103c8t6 своими руками

Генератор сигналов на stm32f103c8t6 своими руками

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

После этого приступаем к травлению платы. Какой раствор применить при травлении платы решать вам. Некоторые рекомендации. Самый распространенный способ – это травление в растворе хлорного железа. Но у этого способа есть один недостаток – этот раствор “грязнуля”. Как бы аккуратно вы им не пользовались, всегда есть вероятность куда-нибудь капнуть, а если раствор попадет на одежду, то смыть его будет практически не возможно. Водный раствор аммония персульфата (я пользуюсь именно им). Скорость травления и результаты как и с раствором хлорного железа, но есть два плюса: первый – порошок дешевле хлорного железа, и второй: ни окружающие предметы, ни ваша одежда не пострадают. Раствор медного купороса и поваренной соли в вводе. Самый доступный и менее затратный способ. Минус – уж очень долго ждать окончания процесса (порой несколько часов). Со всеми способами травления платы вы можете более подробно ознакомиться на сайте в разделе “Технологии”

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

Генератор сигналов на stm32f103c8t6 своими руками

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

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



Страницы: 1 2 3

Skip Navigation LinksГлавная

Радиодетали

Активные элементы

Микросхемы

STM32F103C8T6 (микроконтроллер на базе ядра ARM 32 Cortex-M3)

Описание

Микроконтроллер STM32F103C8T6. Высокопроизводительный 32-разрядный микроконтроллер фирмы STMictoelectronics, Cortex-M3 RISC процессор. Максимальная тактовая частота 72 МГц. 64 КБайт Flash. 20 КБайт ОЗУ. Корпус LQFP48 с шагом 0.5 мм.

Память

  • 64 КБайт Flash памяти программ;
  • 20 КБайт SRAM оперативная память;

Питание, часы, подключение и режимы

  • От 2.0 до 3.6 В напряжение питания и ввода/вывода;
  • POR, PDR и PVD программируемый детектор напряжения;
  • Кварцевый генератор от 4 до 16 МГц;
  • Внутренний 8 МГц заводской RC;
  • Внутренний 40 кГц RC;
  • PLL для часов процессора;
  • Генератор 32 кГц для RTC с калибровкой;
  • Малая мощность;
  • Режимы Sleep, Stop and Standby;
  • VBAT для RTC и резервных регистров;

АЦП

  • 2 x 12-разрядных АЦП, 1 мкс, до 16 каналов;
  • Диапазон конверсии: от 0 до 3.6 В;
  • Возможность двойной выборки и удержания;
  • Датчик температуры;

Прямой доступ к памяти

  • 7-канальный контроллер DMA;
  • Поддерживаемые периферийные устройства: таймеры, АЦП, SPI, I2C и USART;
  • До 37 быстрых портов ввода/вывода;
  • Все вводы/выводы отображаются на 16 внешних векторов прерываний и почти все толерантны к 5В;

Режим отладки

  • Интерфейсы отладки SWD и JTAG

Таймеры/счетчики

  • Три 16-разрядных таймера;
  • 16-разрядный таймер PWM управления двигателем с отключением времени и аварийной остановкой;
  • 2 сторожевых таймера (независимый и оконный);
  • 24-разрядный таймер SysTick;

Интерфейсы

  • До 2 x I2C интерфейсов;
  • До 3 USART;
  • До 2 SPI (до 18 Мбит/с);
  • Интерфейс CAN (2.0B Active);
  • Интерфейс USB 2.0 с полной скоростью;

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *