Почему вы делаете в микроконтроллерных проектах Bash подобную UART консоль для запуска встроенных юнит тестов, диагностики и ручного управления периферией?
Хороший урок! Плохо что нету примера работы SD через DMA - скорость чтения сектора у меня вышла около 5,5миллиСек при 15МБит SPI. Пробовал пределывать под DMA - ловлю hard fault....
Спасибо за работу. Подскажите, как можно записывать данные в энергонезависимую память STM32? К примеру, в ардуино для этого ставится модификатор eeprom и все...
Здесь память уже типа FLASH и делается всё по-другому, мало того, используется пароль. Правда, он постоянный и при использовании HAL всё вшито в библиотеку. Есть примеры в репозитории Cube.
Не перестаю восхищаться вашим усердием и трудолюбием!!! Огромное спасибо за проделываемый труд. Предполагаются ли уроки по GPS/Glonas/GSM модулям например (Quectel MC90, SIM868E ) c STM32F103? Тут бы и пригодилась работа с SD картами.
@narod stream Скажите пожалуйста, когда мы пишем #define LD_OFF HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_SET); //RED почему тут всё наоборот? Разве LD_OFF который выключает светодиод не должет быть RESET?
Должно быть наоборот, когда светодиод подключен к ножке порта анодом, а катод сидит на общем проводе, а у нас подключен катодом, а анод сидит на питании.
@@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? То же самое с чипселект. Подскажите пожалуйста
Почему Вы не используете системный таймер от HAL? Очень удобно использовать HAL_GetTick, HAL_Delay и другие. Они позволяют не городить свои таймеры вручную
Такая вот у меня политика в программировании. И не только у меня. В основном потому что его используют многие сторонние библиотеки которые мы в любой момент можем подключить.
А если у вас таймер тикнет сразу после сброса счетчика в 0, то вы получите задержку чуть больше 10 mS, а не 20. Тогда уж лучше настраивать на 1mS прерывания, так хоть ближе к требуемому значению будет.
Здравствуйте. Столкнулся с проблемой необходимости заиметь программный хотя бы uart bootloader. Куча разных затыков. Если не трудно могли бы записать по этому поводу урок. И рассмотреть вообще все варианты бута. Думаю всем будет интересно)
Здравствуйте! Тут дело в том, что уроки дают те, кто знает больше тех, кому они дают урок. А тут похоже ситуация выглядит с точностью до наоборот. Вы знаете по этому вопросу больше меня. Я о таком способе загрузки только слышал краем уха.
Только у серий 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)
Вопрос может глупый. Играю на f4discovery , выбрал длинные имена и далее в Keil откомпилил проект. Ошибок нет, но если подключаешь ccsbcs.с, появляются ошибки связанные именно с этим файлом. Стоит ли вообще его подключать? Если не подключить, есть смысл идти дальше по уроку с SD? Спасибо.
Пожалуйста! Но к LAN мы ещё вернёмся. Только думаю, что с тем модулем, с которым мы прорабатываем знание протоколов, скоро закончим и перейдём на более продвинутый. Возможно, что и отладочную плату сменим.
Почему вы делаете в микроконтроллерных проектах Bash подобную UART консоль для запуска встроенных юнит тестов, диагностики и ручного управления периферией?
Тройники! Это же гениально!!!
Хороший урок! Плохо что нету примера работы SD через DMA - скорость чтения сектора у меня вышла около 5,5миллиСек при 15МБит SPI. Пробовал пределывать под DMA - ловлю hard fault....
а что не так было с юсб? можно подробнее?
Спасибо за уроки! В новом CubeMX 5.2.0 и на новом stm32cube_fw_f1_v170 , не работает библиотека fatfs. Заработало только в stm32cube_fw_f1_v160
Thanks brother. I am wait this tutorial along time :).
Спасибо за работу. Подскажите, как можно записывать данные в энергонезависимую память STM32? К примеру, в ардуино для этого ставится модификатор eeprom и все...
Здесь память уже типа FLASH и делается всё по-другому, мало того, используется пароль. Правда, он постоянный и при использовании HAL всё вшито в библиотеку. Есть примеры в репозитории Cube.
Не перестаю восхищаться вашим усердием и трудолюбием!!! Огромное спасибо за проделываемый труд. Предполагаются ли уроки по GPS/Glonas/GSM модулям например (Quectel MC90, SIM868E ) c STM32F103? Тут бы и пригодилась работа с SD картами.
Спасибо!
Пока в планах нет, но тема действительно актуальна.
@narod stream Скажите пожалуйста, когда мы пишем
#define LD_OFF HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_SET); //RED
почему тут всё наоборот? Разве LD_OFF который выключает светодиод не должет быть RESET?
Должно быть наоборот, когда светодиод подключен к ножке порта анодом, а катод сидит на общем проводе, а у нас подключен катодом, а анод сидит на питании.
А про FreeRTOS подробные уроки будут? Семафоры, мьютексы, очереди, ожидания и т.д.!
Возможно. Но только когда я сам это всё изучу. Иначе стыдно уроки давать, если сам неуч.
@@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? То же самое с чипселект. Подскажите пожалуйста
Почему Вы не используете системный таймер от HAL? Очень удобно использовать HAL_GetTick, HAL_Delay и другие. Они позволяют не городить свои таймеры вручную
Такая вот у меня политика в программировании. И не только у меня. В основном потому что его используют многие сторонние библиотеки которые мы в любой момент можем подключить.
А если у вас таймер тикнет сразу после сброса счетчика в 0, то вы получите задержку чуть больше 10 mS, а не 20. Тогда уж лучше настраивать на 1mS прерывания, так хоть ближе к требуемому значению будет.
супер, давно с етим боролся, спасибо!!!!
Здравствуйте. Столкнулся с проблемой необходимости заиметь программный хотя бы uart bootloader. Куча разных затыков. Если не трудно могли бы записать по этому поводу урок. И рассмотреть вообще все варианты бута. Думаю всем будет интересно)
Здравствуйте!
Тут дело в том, что уроки дают те, кто знает больше тех, кому они дают урок. А тут похоже ситуация выглядит с точностью до наоборот. Вы знаете по этому вопросу больше меня. Я о таком способе загрузки только слышал краем уха.
Hello, Under the Discripstion, can you replace it with English ?
I can understand your language , tks
Can you do tutorial about fatfs and flash memory ( any flash memory ICs). I think that is very useful.
thanks you so much, it's best tutorial ever
Здраствуйте, а есть ли разница в скорости записи для sdio и spi если писать на FAT?
Есть. Разница вчетверо. Так как передаётся одновременно 4 бита.
Как у STM32F103 нет SDIO?
RM0008 стр.565 -- Secure digital input/output interface (SDIO).
Только у серий 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)
Вопрос может глупый. Играю на f4discovery , выбрал длинные имена и далее в Keil откомпилил проект. Ошибок нет, но если подключаешь ccsbcs.с, появляются ошибки связанные именно с этим файлом.
Стоит ли вообще его подключать?
Если не подключить, есть смысл идти дальше по уроку с SD?
Спасибо.
Можно не подключать, но тогда нужно отключить длинные имена
Спасибо
наконецто не лан ура спасибо
Пожалуйста!
Но к LAN мы ещё вернёмся. Только думаю, что с тем модулем, с которым мы прорабатываем знание протоколов, скоро закончим и перейдём на более продвинутый. Возможно, что и отладочную плату сменим.
Ну ето понятною Если не секрет то какая плата и какие модули в планах?
Разные. Например w5500.
5:08 По SD урок был 44, этот 88, значит следующий будет 0xСС.
Я люблю тебя