Программирование МК STM32. Урок 88. SD. SPI. FATFS. Часть 1

Поделиться
HTML-код
  • Опубликовано: 25 окт 2024

Комментарии • 38

  • @aabdev
    @aabdev 3 года назад

    Почему вы делаете в микроконтроллерных проектах Bash подобную UART консоль для запуска встроенных юнит тестов, диагностики и ручного управления периферией?

  • @andrewandrosow4797
    @andrewandrosow4797 Год назад

    Хороший урок! Плохо что нету примера работы SD через DMA - скорость чтения сектора у меня вышла около 5,5миллиСек при 15МБит SPI. Пробовал пределывать под DMA - ловлю hard fault....

  • @Sanchogus
    @Sanchogus 7 лет назад

    Тройники! Это же гениально!!!

  • @openFrimeTv
    @openFrimeTv Год назад

    а что не так было с юсб? можно подробнее?

  • @jarosikR
    @jarosikR 5 лет назад

    Спасибо за уроки! В новом CubeMX 5.2.0 и на новом stm32cube_fw_f1_v170 , не работает библиотека fatfs. Заработало только в stm32cube_fw_f1_v160

  • @bhquocanh4598
    @bhquocanh4598 7 лет назад

    Thanks brother. I am wait this tutorial along time :).

  • @merv8543
    @merv8543 5 лет назад

    Не перестаю восхищаться вашим усердием и трудолюбием!!! Огромное спасибо за проделываемый труд. Предполагаются ли уроки по GPS/Glonas/GSM модулям например (Quectel MC90, SIM868E ) c STM32F103? Тут бы и пригодилась работа с SD картами.

    • @narodstream552
      @narodstream552  5 лет назад

      Спасибо!
      Пока в планах нет, но тема действительно актуальна.

  • @АлександрМ-ш8н
    @АлександрМ-ш8н 4 года назад

    Спасибо за работу. Подскажите, как можно записывать данные в энергонезависимую память STM32? К примеру, в ардуино для этого ставится модификатор eeprom и все...

    • @narodstream552
      @narodstream552  4 года назад

      Здесь память уже типа FLASH и делается всё по-другому, мало того, используется пароль. Правда, он постоянный и при использовании HAL всё вшито в библиотеку. Есть примеры в репозитории Cube.

  • @coderlangthang4110
    @coderlangthang4110 6 лет назад

    Hello, Under the Discripstion, can you replace it with English ?
    I can understand your language , tks

  • @BobbyDillan
    @BobbyDillan 5 лет назад

    @narod stream Скажите пожалуйста, когда мы пишем
    #define LD_OFF HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_SET); //RED
    почему тут всё наоборот? Разве LD_OFF который выключает светодиод не должет быть RESET?

    • @narodstream552
      @narodstream552  5 лет назад

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

  • @obuhovmi
    @obuhovmi 7 лет назад +1

    А про FreeRTOS подробные уроки будут? Семафоры, мьютексы, очереди, ожидания и т.д.!

    • @narodstream552
      @narodstream552  7 лет назад +1

      Возможно. Но только когда я сам это всё изучу. Иначе стыдно уроки давать, если сам неуч.

    • @BobbyDillan
      @BobbyDillan 5 лет назад

      ​@@narodstream552 Скажите пожалуйста, когда мы пишем
      #define SS_SD_SELECT() HAL_GPIO_WritePin(CS_SD_GPIO_PORT, CS_SD_PIN, GPIO_PIN_RESET)
      #define LD_OFF HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_SET); //RED
      почему тут всё наоборот? Разве LD_OFF который выключает светодиод не должет быть RESET? То же самое с чипселект. Подскажите пожалуйста

  • @alexey-art-studio
    @alexey-art-studio 7 лет назад

    Здравствуйте. Столкнулся с проблемой необходимости заиметь программный хотя бы uart bootloader. Куча разных затыков. Если не трудно могли бы записать по этому поводу урок. И рассмотреть вообще все варианты бута. Думаю всем будет интересно)

    • @narodstream552
      @narodstream552  7 лет назад

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

  • @megannnn98
    @megannnn98 6 лет назад

    Почему Вы не используете системный таймер от HAL? Очень удобно использовать HAL_GetTick, HAL_Delay и другие. Они позволяют не городить свои таймеры вручную

    • @narodstream552
      @narodstream552  6 лет назад

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

    • @kirillkirichenko
      @kirillkirichenko 6 лет назад

      А если у вас таймер тикнет сразу после сброса счетчика в 0, то вы получите задержку чуть больше 10 mS, а не 20. Тогда уж лучше настраивать на 1mS прерывания, так хоть ближе к требуемому значению будет.

  • @peturkolev9002
    @peturkolev9002 7 лет назад

    супер, давно с етим боролся, спасибо!!!!

  • @bhquocanh4598
    @bhquocanh4598 7 лет назад

    Can you do tutorial about fatfs and flash memory ( any flash memory ICs). I think that is very useful.

  • @thuonghuynhngoc4459
    @thuonghuynhngoc4459 6 лет назад

    thanks you so much, it's best tutorial ever

  • @Alexandr4702
    @Alexandr4702 6 лет назад

    Здраствуйте, а есть ли разница в скорости записи для sdio и spi если писать на FAT?

    • @narodstream552
      @narodstream552  6 лет назад

      Есть. Разница вчетверо. Так как передаётся одновременно 4 бита.

  • @dj_granderzplay7363
    @dj_granderzplay7363 7 лет назад +1

    наконецто не лан ура спасибо

    • @narodstream552
      @narodstream552  7 лет назад

      Пожалуйста!
      Но к LAN мы ещё вернёмся. Только думаю, что с тем модулем, с которым мы прорабатываем знание протоколов, скоро закончим и перейдём на более продвинутый. Возможно, что и отладочную плату сменим.

    • @dj_granderzplay7363
      @dj_granderzplay7363 7 лет назад

      Ну ето понятною Если не секрет то какая плата и какие модули в планах?

    • @narodstream552
      @narodstream552  7 лет назад

      Разные. Например w5500.

  • @ДимаНескажу-п1з
    @ДимаНескажу-п1з 5 лет назад

    Как у STM32F103 нет SDIO?
    RM0008 стр.565 -- Secure digital input/output interface (SDIO).

    • @narodstream552
      @narodstream552  5 лет назад +1

      Только у серий High and XL-density STM32F101x, а также у серий High and XL-density STM32F103xx. К сожалению наш STM32F103C8T6 к таким сериям не относится. Он Medium-density.
      Тот же самый RM0008, только раздел 1 Overview of the manual, Table 1. Sections related to each STM32F10xxx product, строка Section 31: Secure digital input/output interface (SDIO)

  • @НиколайПровоторов-и3д

    Вопрос может глупый. Играю на f4discovery , выбрал длинные имена и далее в Keil откомпилил проект. Ошибок нет, но если подключаешь ccsbcs.с, появляются ошибки связанные именно с этим файлом.
    Стоит ли вообще его подключать?
    Если не подключить, есть смысл идти дальше по уроку с SD?
    Спасибо.

  • @juansebastianquijano3898
    @juansebastianquijano3898 5 лет назад +1

    Я люблю тебя

  • @АндрейИ-ф3л
    @АндрейИ-ф3л 5 лет назад +1

    5:08 По SD урок был 44, этот 88, значит следующий будет 0xСС.