Jump to content
  • ×   Pasted as rich text.   Restore formatting

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Content

    • By admin
      Внимание всем участникам форума, авторов статей и участников нашей группы в VK!
      Научно-производственная компания КРОКС для конкурса любезно предоставила нам три спектроанализатора Arinst SSA-TG LC (цена одного составляет 18500 руб). Подробные характеристики здесь.

      Каждый из трех призов будет разыгран в разных местах:
      Данный форум.  Первый экземпляр Arinst SSA-TG LC достанется лучшему и самому полезному пользователю форума. Пользователь будет выбран путём всеобщего голосования. В ответе к данной теме пишем от одного до трёх ников пользователей, которые по вашему мнению наиболее достойны данного приза! Просьба писать ники с значком @ как ниже
      Просьба всем без исключения потратить 5 минут времени и проголосовать!
      P.S. К голосованию допускаются пользователи зарегистрированные не позднее 01.11.17 и имеющие не менее 5-ти сообщений на форуме. Сайт cxem.net. Второй экземпляр Arinst SSA-TG LC достанется лучшему автору по итогам рейтинга статей за декабрь. Как опубликовать статью читаем здесь. Группа "Паяльник" в VK (где уже почти 100к участников). Третий экземпляр Arinst SSA-TG LC достанется лучшему и самому полезному участнику группы. Помогайте пользователям, пишите полезные сообщения и возможно приз достанется Вам! У каждого есть шанс! [линк будет позже] Конкурсы продлятся до конца 2017 года! К участию допускаются пользователи всех стран где есть почта!
      P.S. Приборы Arinst SSA-TG LC производятся в России, характеристики здесь.
    • By admin
      Прием материалов на конкурс лето 2017 завершен. Все конкурсные статьи опубликованы
      Хотелось бы провести голосование, чтобы увидеть точку зрения пользователей 
    • By admin
      С 1 января по 1 апреля 2017 г. проводится конкурс на самые лучшие радиолюбительские материалы! Призовой фонд - более 40 тыс. рублей! На текущий момент кол-во призовых мест - 10!
      Спонсоры конкурса: 
      compacttool ПроДиэлКом ekits.ru УмныеЭлементы Призы: 

      Магазин compacttool предоставил 3 приза для трех участников на общую сумму 10500 руб:
      Электронный конструктор ARDUINO стартовый набор разработчика V2 (5200 руб) Джойстик Esplora (3350 руб) Модуль беспроводный WIFI На UART черный (1940 руб) Победителей выбирает спонсор
       
       

      Два приза двум участником на сумму ~9700 руб от магазина ПроДиэлКом:
      Мини паяльная станция (Япония), Goot PX-501, 85 Вт 220В + два сменных жала на выбор клиента (8960 руб) Беспаечаная макетная плата + модуль питания к ней + набор гибких перемычек (700 руб) Победителей выбирает спонсор
       

      Наборы выводных и ЧИП-резисторов, конденсаторов, материалов для радиолюбительского творчества от интернет-магазина ekits.ru на общую сумму 8800 руб
       

      Три набора "сделай сам" разной комплектации для 3-х участников на общую сумму ~8000 руб от магазина УмныеЭлементы
       
       
      Компактный осциллограф DSO Nano V3 (Seeed) от нашего сайта для участников группы VK. Стоимость ~6000 руб
      Ссылка розыгрыша в ВК
       
      Donate от пользователей. В зависимости от итоговой суммы будет 1 или несколько призовых мест. Внести любую сумму в копилку конкурса можно здесь.
      В примечании можете написать все что угодно - на конкурс и т.д., это не важно, все поступившие суммы пойдут в призовой фонд.
      Текущая сумма от пользователей - 0 руб. (будет обновляться по мере поступления)
       
      Условия участия
      Для участия в конкурсе принимаются следующие виды материалов:
      статья на сайт блог авторское видео для канала Паяльник TV В качестве материалов могут выступать ваши авторские разработки и конструкции (текстовый или видео-материал), обзоры и тесты электронных устройств (примеры) и просто интересные блоги обо всем. Все материалы должны быть авторскими, ранее не опубликованными (см. подробнее правила публикаци). При этом все текстовые материалы как и раньше участвуют дополнительно в ежемесячных конкурсах
      Видео-материал должен быть уникальным и присылаться в виде файла (закачивайте на любой обл. сервис: Google диск, Яндекс.Диск, Cloud Mail.ru и т.д.). Публикация осуществляется на канале Паяльник TV. В ролике должно быть голосом оговорено, что видео предназначено для конкурса на сайте Паяльник.
      В качестве обзоров (хоть текстовый, хоть видео-материал, или в блог) могут выступать тесты и обзоры измерительного/паяльного оборудования, сборка конструкторов с Али/Мастеркит (анализ недоработок, нюансы сборки, доработка, выводы и т.д.), обзор приспособлений и инструментов, работа и подключение модулей, шилдов, датчиков и т.д.
       
      Формат проведения конкурса
      Конкурс начнется 1.1.2017 и закончится 1.04.2017, т.е. продлится ровно 3 месяца.
      Выбор победителя будет осуществляться по одной части призов представителями спонсоров, а по другой голосованием на форуме.

       
      В данной теме можете задавать любые вопросы по проведению конкурса
       
    • By admin
      В связи с открытием данного форума объявляется новый конкурс на лучшую тему.
      В конкурсе будут участвовать все опубликованные здесь темы до 1.12.2015. Можете публиковать ваши обзоры, тесты, отзывы о товарах, разоблачения поддельной продукции и просто похвастушки о ваших приобретениях на Ali, eBay, banggood, tinydeal, dl и других интернет-магазинах.
      Призы:
      Мультиметр Mastech MS8239C
      Тестер ESR, полупроводников, резисторов, индуктивностей
      Arduino UNO
      Количество тем на одного участника не ограничено.
      Для участия в конкурсе, после создания темы необходимо заполнить форму заявки на нашем сайте если на конкурс 2 и более темы, то добавьте одну заявку в форму, а также оставьте заявку здесь (где все темы перечислите)
      Перед созданием темы ознакомьтесь с правилами подфорума

    • By admin
      Опубликуй фотографию своего рабочего места электронщика и сможешь выиграть мультиметр Uni-T UT136B!

      Чтобы стать участником конкурса необходимо:
      Сделать фотографию рабочего места с распечатанным логотипом сайта cxem.net или с открытым сайтом cxem.net в браузере ПК.
      Опубликовать фотографию в альбоме группы VK: Наши рабочие места
      Заполнить заявку на участие. Прикрепить то же фото, что и в группе в VK
      Быть подписчиком нашего канала Паяльник TV
      Итоги конкурса будут подведены 10-го мая. Хозяину самого оригинального рабочего места отправится мультиметр Uni-T UT136B.



  • Сообщения

    • Надо ещё  --12В линию посмотреть  маловероятно,но возможно 1 диод 12В линии ушол в обрыв,фигово чтоб проверить отпаять придётся
    • Подцепил нагрузку по линии 12, 3.3 ,5 в одновременно. Никаких изменений не произошло.
    • Приведу цитату из анекдота: Компреме?
    • - Дорогой, ты мне изменяешь? - С чего ты взяла, дорогая? - Тебя постоянно окружают умные и красивые женщины. - Мне не нужны умные и красивые женщины, мне нужна ты.     - Мам, дай денег. - На что? - Если я тебе скажу на что, ты не дашь! - Если ты не скажешь, то тем более не дам! - Тогда уж точно не скажу на что! Через 10 минут. - Так все-таки, на что тебе нужны были деньги? - Дашь денег - скажу.    Жила-была девушка, звали ее Мария. И был у нее парень, а звали его Хулио. Но не нравилось Марии, что он некрасив, оставила она его. Познакомилась Мария с другим парнем, а звали его тоже Хулио. Но не нравилось Марии, что он недостаточно богат. Рассталась она с ним. И стала Мария встречаться с другим, и звали его Хулио. Но недовольна была Мария... Посмотрел на это Господь и воскликнул: - Так какого же Хулио тебе надо, Мария?!   Поручика Ржевского приняли на радио говорить точное время, договорившись, что непотребщину будут забивать бипами. И вот теперь каждый час мы слышим шесть гудков.  
    • А почему бы не ответить ему? За геноцид своего народа, к примеру?
    • Добрый день, уважаемые форумчане. Столкнулся со странной проблемой в работе связки ADC-DMA В проекте используется 2 канала DMA1. Канал 1 для циклического чтения регулярных регистров ADC И канал 4 для вывода буфера в USART. (После добавления этого канала в работу и начались чудеса ADC по преобразует сигналы и дергает DMA, который последовательно раскладывает значения в буфер uint16_t signal[6] Все работало длительное время пока я не решил задействовать DMA Для вывода в USART. Например: ADC1- Канал1 - записывался в нулевой элемент массива signal[ 0 ] ADC1- Канал2 - записывался в первый элемент массива signal[ 1 ] ADC1- Канал3 - записывался во второй элемент массива signal[ 2 ] После вывода буфера по каналу 4, на канале 1 происходит смещение индекса массива и данные от ADC начинают записываться  по другим адресам. Например: ADC1- Канал1 - записывался во второй элемент массива signal[ 2 ] ADC1- Канал2 - записывался в третий элемент массива signal[ 3 ] ADC1- Канал3 - записывался во четвертый элемент массива signal[ 4 ] Каким образом DMA->Канал4 может вносить проблемы на работу DMA->Канал1? Ниже привожу инит и вывод  Инициализация и запуск циклического считывания значений в массив  arrSignal[] void Init_ADC_DMA(void) { uint32_t pin; // Включаем тактирование GPIOA, AFIO, ADC1 RCC->APB2ENR |= RCC_APB2ENR_IOPAEN | RCC_APB2ENR_AFIOEN | RCC_APB2ENR_ADC1EN; RCC->CFGR |= RCC_CFGR_ADCPRE_DIV8; //Предделитель АЦП 72/6 = 12 МГц // Очистим настройки пинов. Нулевое значение соответствует Input Analog GPIOA->CRL &= ~( GPIO_CRL_CNF0 | GPIO_CRL_MODE0 | GPIO_CRL_CNF1 | GPIO_CRL_MODE1 | GPIO_CRL_CNF5 | GPIO_CRL_MODE5 | GPIO_CRL_CNF6 | GPIO_CRL_MODE6 | GPIO_CRL_CNF7 | GPIO_CRL_MODE7 ); // Настройка DMA1 RCC->AHBENR |= RCC_AHBENR_DMA1EN; // Включаем тактирование DMA1 // Deinit DMA1 Channel1 DMA1_Channel1->CCR &= ~DMA_CCR1_EN; // Отключаем DMA1 CH1 //DMA1_Channel1->CCR = 0; // Reset DMA1 Channel1 control register DMA1->IFCR |= DMA_ISR_GIF1 | DMA_ISR_TCIF1 | DMA_ISR_HTIF1 | DMA_ISR_TEIF1; // Reset interrupt pending bits for DMA1 Channel1 // Настраиваем DMA DMA1_Channel1->CNDTR = ADC_COUNT; // Количество передаваемых данных DMA1_Channel1->CPAR = (uint32_t) &(ADC1->DR );// Адрес перифирии DMA1_Channel1->CMAR = (uint32_t) arrSignal; // Адрес памяти DMA1_Channel1->CCR |= DMA_CCR1_MINC // Инкремент памяти | DMA_CCR1_PSIZE_0 // Режим периферии 16 бит | DMA_CCR1_MSIZE_0 // Режим памяти 16 бит | DMA_CCR1_PL_1 // Channel Priority level hight | DMA_CCR1_CIRC // Circular mode | DMA_CCR1_TEIE; // Transfer error interrupt enable DMA1_Channel1->CCR |= DMA_CCR1_EN; // Включаем DMA1 Channel3 // Очистим настройки ADC1 ADC1->CR1 = 0; ADC1->CR2 = 0; ADC1->SMPR2 = 0; ADC1->SQR1 = 0; ADC1->SQR2 = 0; ADC1->SQR3 = 0; // Настраиваем ADC1 ADC1->CR1 |= ADC_CR1_SCAN; // Scan mode ADC1->CR2 |= ADC_CR2_CONT; // Continuous Conversion ADC1->CR2 |= ADC_CR2_DMA; // DMA mode ADC1->CR2 |= ADC_CR2_TSVREFE; // Temperature Sensor and VREFINT Enable ADC1->CR2 &= ~ADC_CR2_ALIGN; // Data Alignment ADC1->SQR1 |= ((uint32_t)(ADC_COUNT - 1) << 20); // Сканируем 6 каналов (6-1 = 5) // Настройка семплирования. Номер канала совпадает с номером пина ADC1->SMPR2 |= ADC_SMPR2_SMP0; // Channel 0 Sample time selection 111: 239.5 cycles ADC1->SMPR2 |= ADC_SMPR2_SMP1; // Channel 1 Sample time selection 111: 239.5 cycles ADC1->SMPR2 |= ADC_SMPR2_SMP5; // Channel 2 Sample time selection 111: 239.5 cycles ADC1->SMPR2 |= ADC_SMPR2_SMP6; // Channel 3 Sample time selection 111: 239.5 cycles ADC1->SMPR2 |= ADC_SMPR2_SMP7; // Channel 4 Sample time selection 111: 239.5 cycles ADC1->SMPR1 |= ADC_SMPR1_SMP16; // Channel 5 Sample time selection 111: 239.5 cycles // Настройка пинов pin = 0x00; ADC1->SQR3 |= (pin << (5 * 0)); // Pin0 pin = 0x01; ADC1->SQR3 |= (pin << (5 * 1)); // Pin1 pin = 0x06; ADC1->SQR3 |= (pin << (5 * 2)); // Pin5 pin = 0x07; ADC1->SQR3 |= (pin << (5 * 3)); // Pin6 pin = 0x05; ADC1->SQR3 |= (pin << (5 * 4)); // Pin7 pin = 0x10; ADC1->SQR3 |= (pin << (5 * 5)); // Pin16 - Температурный сенсор ADC1->CR2 |= ADC_CR2_ADON; // A/D Converter ON / OFF // Обнуляем калибровку ADC1->CR2 |= ADC_CR2_RSTCAL; while (ADC1->CR2 & ADC_CR2_RSTCAL); //запускаем калибровку и ждем ее завершение ADC1->CR2 |= ADC_CR2_CAL; while (ADC1->CR2 & ADC_CR2_CAL); ADC1->CR2 |= ADC_CR2_EXTTRIG; //ADC_CR2_SWSTART; ADC1->CR2 |= ADC_CR2_DMA; // DMA mode }   Вывод буфера в usart  //################################################################## // function Передача буфера в USART1 по DMA1 Ch4 // argument buf - указатель на буфер char* // len - длина буфера // return void //################################################################## void DMA1Ch4_SendBuf8(const char* buf, uint32_t len) { // Deinit DMA1 Channel4 DMA1_Channel4->CCR &= ~DMA_CCR4_EN; // Отключаем DMA1 CH2 //DMA1_Channel4->CCR = 0; // Reset DMA1 Channel4 control register DMA1->IFCR |= DMA_ISR_GIF4 | DMA_ISR_TCIF4 | DMA_ISR_HTIF4 | DMA_ISR_TEIF4; // Reset interrupt pending bits for DMA1 Channel4 // Настраиваем DMA1 Channel4 DMA1_Channel4->CNDTR = len; // Количество передаваемых данных DMA1_Channel4->CPAR = (uint32_t) &(USART1->DR); // Адрес перифирии DMA1_Channel4->CMAR = (uint32_t) buf; // Адрес памяти DMA1_Channel4->CCR |= DMA_CCR4_MINC // Инкремент памяти //| DMA_CCR4_PL_0 // Channel Priority level Medium | DMA_CCR4_DIR //Data transfer direction. 0 - from peripheria 1 - from memory | DMA_CCR4_TCIE; // Transfer complete interrupt enable //DMA1_Channel4->CCR |= DMA_CCR4_TEIE; // Transfer error interrupt enable DMA1_Channel4->CCR |= DMA_CCR4_EN; // Включаем DMA1 Channel5 }   По окончании передачи формируется прерывание в котором просто отключаем DMA1->Channel4 //################################################################## //function Прерывание по окончании передачи по DMA CH4 # //argument none # //return void # //################################################################## void DMA1_Channel4_IRQHandler(void) { if ((DMA1->ISR & DMA_ISR_TCIF4)) { // Transfer Complete flag DMA1_Channel4->CCR &= ~DMA_CCR4_EN; // Отключаем DMA. DMA1->IFCR |= DMA_IFCR_CTCIF4; // Channel4 Transfer Complete clear usart.Status_Tx = Tx_None; xSemaphoreGiveFromISR(mtxUsart, 0); } } Есть у кого мысли в чем может быть проблема? Второй день поисков - не дает результата. Понимаю, что можно обойти путем пересинхронизации ADC-DMA после каждого вызова отправки буфера по 4 каналу ДМА. Но это костыль получается.
    • @Beliy_voron @Владимир Белов Это ЕГЭ 
×
×
  • Create New...