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 One _ moment
      Здравствуйте. Нужно разобраться с принципом работы интерфейса I2C на Stm32. понимаю, что материала в интернете много, но почему-то даже просто структура, где определяются параметры, у меня другая.
      Моя вот такая:
      typedef struct
      {
        uint32_t I2C_Timing;  
        uint32_t I2C_AnalogFilter;      
        uint32_t I2C_DigitalFilter; 
        uint32_t I2C_Mode;  
        uint32_t I2C_OwnAddress1;
        uint32_t I2C_Ack;
        uint32_t I2C_AcknowledgedAddress;
      }I2C_InitTypeDef;
      Те, что даются в примерах, в статьях, такая:
      typedef struct
      {
        uint32_t I2C_ClockSpeed;          
       
        uint16_t I2C_Mode;                
       
        uint16_t I2C_DutyCycle;           
       
        uint16_t I2C_OwnAddress1;         
       
        uint16_t I2C_Ack;                 
       
        uint16_t I2C_AcknowledgedAddress; 
      }I2C_InitTypeDef;
       
      Найдя пример на этом форуме (https://forum.cxem.net/index.php?/topic/202586-i2c-%D0%B2-stm32f030/) увидел, что используются параметры такие же, что и у меня, но теперь не понятно, откуда такие значения берут и по какой логике. 
      Прошу не пинать ногами и кидать в меня гнилые помидоры, а помочь разобраться в этом всём или подсказать, где можно найти исчерпывающую информацию, где хорошо и по полочкам всё разложено.
      Программирую в keil uVision v5
      Отладочная плата stm32f0 disco
      МК stm32f0030r8
      Благодарю заранее.
    • Guest User1324
      By Guest User1324
      Здравствуйте, помогите подключить USB-флешку к STM32F103RCT6, нужна дополнить принципиальную схему. Если есть возможность нарисовать.
    • By Tokes
      Здравствуйте.
      CUBEMX + CUBEIDE + PUTTY + STLINK V2
      Есть blue pill. Создал новый проект в CUBEMX. Включил там USB как COM порт. Завёл приём сообщений (модифицировал static CDC_Receive_FS функцию). Всё хорошо работает ровно до тех пор, пока в CUBEIDE не нажимаю F11 (build + flash + debug). После этого необходимо руками вытаскивать и засовывать кабель, чтобы можно было продолжать пользоваться терминалом. В то же время достаточно коснуться контакта "USB-" - и происходит тот самый желанный реконнект, после которого достаточно нажать restart session в терминале и всё продолжает работать нормально. 
      Вопрос - как сделать программно, чтобы при старте устройство ("com port" или "usb com emulator") само себя "переподключало"?
    • By Стальной
      Здравствуйте!
      Интересует мнение коллег по правильному питанию мощных МК. Имеется STM32F722VCT6. Делаю для себя новый отладочный стенд. На нем будут обкатываться различные задачи, поставлю плюсом к МК всякую периферию, обязательно i2c память (из серии AT24Cxx), MAX3485, возможно какой-то дисплей, SD-карту, может быть SIM900 и NAND. Первичный источник - думаю, USB хватит.
      Вопрос - как организовать питание МК? Имеет ли смысл цифровую часть (а мб и часть периферийного зоопарка) питать импульсной системой, а аналоговую часть кренкой? Или всё кренкой запитать? Какие идеи?
      Спасибо)
      ЗЫ Сейчас использую стенд на STM32F407VET6, сделанный на коленках, все кренкой питается. Но там периферия изготавливается по мере необходимости и надевается отдельно на гребенки.
    • By befrikpa
      Добрый день товарищи!
      У меня такая проблема:
      Я хочу сделать штуку которая будет замыкать реле через определённое время(после подачи питания на него), реле времени так сказать. В принципе устройство работает, но у меня не получается сделать так, что бы светодиод (HL_4) мигал каждые пол секунды пока не включено реле, а после включения соответственно  светодиод горел постоянно.
      Сейчас у меня условие находится в бесконечном цикле, и при включении устройства, светодиод просто горит постоянно и всё.
      Скажу честно, я в программировании пока что зелёный, так что не судите строго за код))
      Прикрепил код:

       
  • Сообщения

    • Не, оно ещё бывает Аритмийным- капиталистическим, чуждым русскому мышлению, и социалистическим, которое наш народ только приветствует. Думаю, помнишь, пословицу СССР? Ты здесь хозяин, а не гость, тащи с работы каждый гвоздь? Просто ты её по другому понимаешь. В союзе всего было досыть, как сказал бы наш брат Тиралидс. Ну много всего было! И спизженная тобой пачка гвоздей- абсолютно ни как не отражалась ни на чём. Т.е. не наносила урону никому. Просто в магазин рабочему же идти надо, то-сё, денег то не жалко-жалко время на поход в магазин. Оградки на кладбище- опять же, если ты трудился на производстве- тебе всегда бесплатно выписывались. Выписывались и тёще твоей, которая на пенсии, и никогда не трудилась на производстве. Всего было дофига, и хватало всем! А у кого-то и излишки были. А ты, опять поддерживаешь нелегитимный в нашей стране капитализм!
    • Не может амплитуда в ограничении быть выше, чем уже была. Что-то не то с Вашим генератором. Подайте с него сигнал напрямую на осциллограф.
    • Серёг, ты просто прикинь, до чего уже народ довели? И это всё только начинается, дальше будет намного круче. А более, я в этой теме не могу сказать- опять Анатолий баню устроит.
    • Стоит 1:1 и мультиметром проверил тоже самое.
    • Делитель на осциллографе правильно стоИт?  
    • switch (PLACE) { case 0: PORTB &= 0b11000011; PORTC &= 0b11000000; PORTD &= 0b11111100; PORTC |= (DIG[L0]&0b00111111); if (MODE==1) PORTC.5=0; PORTD |= ((DIG[L0]&0b11000000)>>6); A0=1; break; case 1: PORTB &= 0b11000011; PORTC &= 0b11000000; PORTD &= 0b11111100; PORTC |= (DIG[L1]&0b00111111); PORTD |= ((DIG[L1]&0b11000000)>>6); A1=1; break; case 2: PORTB &= 0b11000011; PORTC &= 0b11000000; PORTD &= 0b11111100; PORTC |= (DIG[L2]&0b00111111); PORTD |= ((DIG[L2]&0b11000000)>>6); A2=1; break; case 3: PORTB &= 0b11000011; PORTC &= 0b11000000; PORTD &= 0b11111100; PORTC |= (DIG[L3]&0b00111111); PORTD |= ((DIG[L3]&0b11000000)>>6); A3=1; break;  
    • В видео рассматривается проект простого устройства для тестирования напряжения пробоя стабилитронов. Используемый сервис для заказа печатных плат: https://www.pcbway.ru/ Видео в VK: https://vk.com/video-33116400_456240859 Исправленный проект печатной платы: https://www.pcbway.com/project/shareproject/Zener_Diod_Tester.html Исходники схемы и печатной платы: https://easyeda.com/naym1993/zener_diod_tester Электроника шаг за шагом 11 выпуск (про стабилитроны): https://youtu.be/81Q8lIRtT9k Часы на газоразрядных индикаторах: https://youtu.be/la1bnXnCRWY
×
×
  • Create New...