Jump to content
  • Blog Entries

    • By zhevak in CH32V
         2
      Продолжаю публикацию материалов на тему работы с таймером.
      У таймеров, которые встроены в CH32V003, имеется один полезный режим -- режим одиночного импульса (OPM, One Pulse Mode).
      Этот режим работы характеризуется тем, что таймер создаёт одиночный кусочек времени, а не генерирует периодический сигнал. Иначе говоря, мы стартуем таймер, он один раз отрабатывает заданное время  и на этом всё заканчивается. Чтобы повторить процедуру, нужно ещё раз стартануть таймер.
      В задаче, код которой приведён ниже, таймер отрабатывает промежуток времени, равный 500 мс. По окончании этого промежутка таймер поднимает флаг UIF и возбуждает прерывание.
      Кроме этого, у таймера, как по аналогии с предыдущей статьёй, также задействованы два канала захвата/сравнения -- 3-й и 4-й. Они также отрабатывают промежутки времени 75 и 125 мс.
      На этот раз управление светодиодами (которые используются для диагностики и отладки) несколько изменилось. Добавился третий светодиод, который индицирует отрабатываемый таймером промежуток времени (500 мс).
       
      Код обработчика прерывания выглядит следующим образом:
       
      __attribute__((interrupt("WCH-Interrupt-fast"))) void TIM2_IRQHandler(void) { // Отрабатываю период if ((TIM2->DMAINTENR & TIM_UIE) && (TIM2->INTFR & TIM_UIF)) { TIM2->INTFR &= ~TIM_UIF; // Очищаю флаг UIF led0_off(); // Гашу светодиод (500 мс) ... // Выполняю другую полезную работу, связанную с окончанием полного периода } // Отрабатываю короткий промежуток врмени if ((TIM2->DMAINTENR & TIM_CC3IE) && (TIM2->INTFR & TIM_CC3IF)) { TIM2->INTFR &= ~TIM_CC3IF; // Очищаю флаг CC3IF led2_off(); // Гашу светодиод (75 мс) ... // Выполняю другую полезную работу, связанную с окончанием короткого промежутка времени } // Отрабатываю длинный промежуток времени if ((TIM2->DMAINTENR & TIM_CC4IE) && (TIM2->INTFR & TIM_CC4IF)) { TIM2->INTFR &= ~TIM_CC4IF; // Очищаю флаг CC4IF led1_off(); // Гашу светодиод (125 мс) ... // Выполняю другую полезную работу, связанную с окончанием длинного промежутка времени } }  
      Светодиоды включаются в функции запуска таймера:
      void tim2_start(void) { TIM2->CTLR1 |= TIM_CEN; // Запускаю формирование одиночного импульса // Включаю все светодиоды led0_on(); led1_on(); led2_on(); }  
      Функция инициализации таймера (по сравнению с примером из предыдущей статьи) тоже изменилась.
       
      void tim2_init(void) { RCC->APB1PCENR |= RCC_TIM2EN; // Включаю тактирование модуля таймера TIM2->CTLR1 = TIM_OPM; // Режим одиночного импульса TIM2->PSC = 24000 - 1; // Таймер будет считать со скоростью 1 кГц TIM2->ATRLR = 500; // Период 500 мс TIM2->CH3CVR = 25; // Короткий импульс 25 мс TIM2->CH4CVR = 125; // Длинный импульс 125 мс TIM2->INTFR = 0; // Сбрасываю все флаги // Разрешаю прерывания от 3-го и 4-го каналов, а также по окончанию счёта таймера TIM2->DMAINTENR |= (TIM_CC4IE | TIM_CC3IE | TIM_UIE); NVIC_EnableIRQ(TIM2_IRQn); // Разрешаю в системе прерывание от таймера TIM2 } Как видите, режим одиночного импульса задаётся с помощью установки флага OPM в управляющем регистре CTLR1.
      Теперь функция main() должна выглядеть как-то так:
       
      int main(void) { uint32_t flag = 0; system_init(); leds_init(); tim2_init(); // Настраиваю таймер TIM2 на генерацию одиночных импульсов __enable_irq(); while (true) { if (system_1s() == 1) { // Сюда мы попадаем один раз в секунду if (flag == 1) { flag = 0; led4_off(); } else { flag = 1; led4_on(); tim2_start(); // Запускаю таймер } } } }
      В начале функции main() происходит инициализация таймера на работу в режиме одиночных импульсов. В главном цикле программы периодически вызывается функция system_1s(), которая возвращает признак истечения односекундного интервала времени. Эта функция в этой статье не описана. Секундные интервалы времени для этой функции вырабатываются системным таймером SysTick. Согласно этим интервалам меняется значение переменной flag и через каждые две секунду происходит запуск таймера TIM2.
      Вообще это не принципиально по какому критерию запускать таймер TIM2. Можно, например, по нажатию кнопки, а интервалы формировать с целью подавления дребезга.
       
       
       
    • By Yanshun in Копии схем и печатных плат устройств попавшие ко мне
         9
      Попросили знакомые сделать схему  БП на TH2167.1 с домофона. Найти документацию на микросхему мне не удалось, даже общаясь с разработчиками данной микросхемы, они ее не дали, наверное только компаниям предоставляют, но благо данную микросхему можно заменить на UC3842, как утверждают на форумах. Данный БП на 15В 2А. Количество витков на трансформаторе мне не известно.
      Данный материал предоставлен исключительно в ознакомительных целях.
      Схема в Spl7, Pcb Lay6.
       










      БП на TH2167.1.rar
  1. Вопрос-Ответ. Для начинающих

    1. Песочница (Q&A)

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

      452.8k
      posts
    2. Дайте схему!

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

      62.3k
      posts
    3. Школьникам и студентам

      Помощь в решении задач и контрольных. Темы для дипломов и курсовых. Физика и электротехника.

      28.6k
      posts
    4. Начинающим

      Форум для начинающих радиолюбителей. Теоретические вопросы.

      210.6k
      posts
    5. Паяльник TV

      Анонсы новых видео и их обсуждение с канала Паяльник TV. Крупнейший канал по радиоэлектронике! Сотни видео и десятки тысяч подписчиков

      3.5k
      posts
    6. Обсуждение материалов с сайта

      Обсуждение статей и схем опубликованных на сайте Паяльник. Любой желающий может опубликовать свою статью на сайте.

      17.3k
      posts
  2. Радиоэлектроника для профессионалов

    1. admin

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

      88.8k
      posts
    2. 342.7k
      posts
    3. 138.9k
      posts
    4. Системы охраны и наблюдения. Личная безопасность

      Устройства аудио и видеонаблюдения. Системы охранной и пожарной сигнализации. GSM сигнализации. Персональная безопасность

      16.6k
      posts
    5. Роботы и модели на ДУ-управлении

      Моделирование и конструирование роботов, машинок на ДУ управлении (по радио, Bluetooth, Wi-Fi, ИК и др каналам связи), самолетов, вертолетов, катеров и т.д. Квадрокоптеры.

      14.7k
      posts
    6. Световые эффекты и LED

      Мигалки, стробоскопы, лазерные эффекты, елочные гирлянды, цветомузыка и т.п. спецэффекты. LED и светодиоды. Питание.

      37k
      posts
    7. Самодельные устройства к компьютеру

      Устройства для ПК своими руками, интерфейсы, моддинг и др. Кроме софта и ремонта! Ремонт в соответствующем разделе.

      28.7k
      posts
    8. Программное обеспечение

      ПО по электронике. Использование, настройка, работа с программами для электроники. Разработка и программирование под ПК. CAD (САПР) системы.

      14.6k
      posts
    9. Металлоискатели

      Металлодетекторы и металлоискатели. Обсуждение схем и устройств для поиска кладов, реликвий, сокровищ и т.п.

      46k
      posts
    10. Автоматика

      Автоматика в быту. Все то, что облегчает нам жизнь и работу. Умный дом.

      24.9k
      posts
    11. Электрика

      Электроснабжение, энергоучет, электропроводка, электроосвещение, автоматы защиты и УЗО, нормативные акты и документы.

      13.6k
      posts
    12. Промышленная электроника

      Станки с ЧПУ, ПЛК (Simatic, Овен, Logo! и т.п.), частотники, электродвигатели, АСУ, интерфейсы связи (Modbus, Profibus, BACnet, RS-485 и т.п.)

      14.7k
      posts
    13. Измерительная техника

      DIY измерительные приборы. Вопросы по работе с измерительным оборудованием. Обсуждение схем и ремонта тестеров, мультиметров, осциллографов и т.д.

      36.7k
      posts
    14. Мастерская радиолюбителя

      Вопросы конструирования, пайки, сверления, работа с металлом, деревом, пластмассой. Изготовление корпусов, панелей. Печатные платы - изготовление, травление. Рабочее место радиолюбителя. Приспособления.

      43.1k
      posts
    15. КВ и УКВ радиосвязь

      Любительская КВ/УКВ связь и другие типы связи. Радиоприемники, радиоуправление, радиостанции.

      58.7k
      posts
    16. Радиопередатчики

      Все про радиомикрофоны и радиопередатчики

      47.4k
      posts
    17. Сотовая связь

      Все про мобильные телефоны и сотовую связь. Кроме ремонта!
      Секреты мобильных телефонов. DATA-кабели, зарядники, гаджеты и т.п. Устройства из сотовых, применение ЖК-экранов от сотовых.

      9.2k
      posts
    18. Спутниковое ТВ

      Спутниковое телевидение, ресиверы, тарелки, skystar. Просмотр закрытых каналов, НТВ+, кодировок и др. Перепрошивка ресиверов, карточек.

      8.7k
      posts
    19. Телефония и фрикинг

      Телефония, фрикинг, устройства к телефонам, АОНы, CallerID, SIM-карты и пр.

      8.1k
      posts
    20. Высокое напряжение

      High Voltage - различные высоковольтные игрушки и эффекты. Катушки Теслы, Ван де Граафы, Гаусс Ган и др.

      4.2k
      posts
    21. Идеи и технологии будущего

      Новые горизонты науки и техники, то что сегодня кажется фантастикой. Источники энергии будущего, работы Теслы, Бедини и их последователей.

      16.6k
      posts
    22. Справочная радиоэлементов

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

      33.1k
      posts
    23. Литература

      В данном форуме выкладываются ссылки для скачивния на книги и журналы по радиоэлектронике, интересные статьи и пр.

      2k
      posts
    24. Схемотехника для профессионалов

      Только для профессионалов! Для новичков есть свой соответствующий раздел

      321
      posts
    25. Разное

      Все, что не вошло в предыдущие разделы.

      24.7k
      posts
  3. Аудио

    1. FAQ, Технологии и компоненты

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

      7.4k
      posts
    2. Для начинающих

      Раздел для чайников в аудио-технике. Вопросы по теории аудио техники от начинающих.

      44.2k
      posts
    3. Источники звука

      ЦАП, АЦП, CD-проигрыватели, винил.

      13.8k
      posts
    4. Предусилители, темброблоки, фильтры

      Обработка звука перед УНЧ: предварительные усилители, фильтры, эквалайзеры, регуляторы тембра, баланса, громкости и т.п. Активные фильтры.

      25k
      posts
    5. Питание аудио аппаратуры   (224755 visits to this link)

      Блоки питания, трансформаторы, преобразователи и стабилизаторы напряжения для аудио-техники. Кроме питания ламповой и авто-аудио техники!

    6. 365.1k
      posts
    7. Акустические системы

      Вопросы по динамикам, сабвуферам, акустике. Ремонт, перемотка, доработка, самостоятельное изготовление, защита и т.п. Пассивные фильтры: ФНЧ, ФВЧ и т.п.

      83.5k
      posts
    8. Авто-аудио

      Аудиотехника для автомобиля. Обсуждение УНЧ, сабвуферов, акустики и другой аудиотехники только для авто!

      19.5k
      posts
    9. Ламповая техника

      Ламповая звукотехника: ламповые усилители мощности и предусилители. Все про лампы. Hi-End.

      67.9k
      posts
    10. Гитарное оборудование

      Примочки для электрогитары, комбики, преампы, эффекты.

      11.3k
      posts
    11. Прочее

      Все, что не вошло в предыдущие разделы по аудио-технике.

      24k
      posts
  4. Микроконтроллеры

    1. МК для начинающих

      Форум для новичков в микроконтроллерах. Изучение МК, видеокурс, простые схемы для повторения, с чего начать, простые вопросы от начинающих

      30k
      posts
    2. admin

      Платформа Arduino, ESP8266, ESP32, одноплатные миниПК на базе Raspberry Pi. Обсуждение схемотехники, программирование, шилды, модули и периферия.

      6.4k
      posts
    3. AVR

      Микроконтроллеры фирмы Atmel.

      37.9k
      posts
    4. STM32

      Микроконтроллеры семейства STM32 компании STMicroelectronics, основанные на ядрах ARM Cortex

      9.3k
      posts
    5. PIC

      Микроконтроллеры PIC фирмы Microchip.

      14k
      posts
    6. ПЛИС

      Программируемые логические интегральные схемы (ПЛИС или PLD) - проектирование, программирование, работа. Обсуждение языков Verilog, VHDL.

      1.6k
      posts
    7. 1.7k
      posts
    8. Алгоритмы

      Обсуждение алгоритмов для МК

      3k
      posts
    9. Программаторы и отладочные модули

      Обсуждение программаторов для всех типов МК и модулей памяти, как промышленных, так и самодельных, а также ПО к ним.

      7.6k
      posts
    10. Периферия и внешние устройства

      Работа МК с внешними устройствами: ЦАП/АЦП, индикаторы и дисплеи, Wi-Fi, Bluetooth, SPI и I2C устройства, энкодеры, внешняя память, устройства ввода и т.д.

      8.2k
      posts
    11. Разное

      То, что не вошло в другие разделы по МК

      4.7k
      posts
  5. Товары и услуги

    1. Коммерческие предложения

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

      621
      posts
    2. Продам-Отдам, Услуги

      Продажа радиодеталей, аппаратуры, комплектующих и др. Обмен, дарение. Услуги по изготовлению устройств, PCB, корпусов. Разрешены только частные объявления! Читайте правила

      96.8k
      posts
    3. Куплю

      Покупка аппаратуры, комплектующих, радиодеталей, печатных плат и т.п.

      13.3k
      posts
    4. Уголок потребителя

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

      15.2k
      posts
    5. Вакансии и разовая работа

      Предложения по трудоустройству. Вакансии по электронике. Разработка устройств на заказ. Шабашки

      14.3k
      posts
    6. Наши обзоры и тесты

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

      352
      posts
  6. Разное

    1. Конкурсы сайта с призами

      Обсуждение проходящих на сайте конкурсов. Выбор победителей, голосования. Идеи и предложения по конкурсам. Спонсорские конкурсы.
      Архив прошедших конкурсов.

      5.9k
      posts
    2. Сайт Паяльник и форум

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

      8.8k
      posts
    3. Курилка

      Место для общения на самые разные темы.

      191.4k
      posts
    4. Технический английский (English)

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

      544
      posts
    5. Наши проекты для Android и Web

      Темы поддержки для проектов Паяльника в сфере разработок ПО. Android-приложения, web-приложения и др.

      83
      posts
    6. 1.1k
      posts
    7. Личные блоги

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

      4.2k
      posts
    8. Корзина

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

      36.3k
      posts
    9. Вопросы с VK

      Автоматический импорт сообщений из группы VK

      171.2k
      posts
×
×
  • Create New...