delayMicroseconds не работает на STM32F103C8T6
Из-за поддельного модуля STM32F103C8T6 на рынке функция delayMicroseconds работает быстрее, чем ожидалось, когда я ожидаю задержку в 1000 мкс, я получаю задержку в 500 мкс. Есть ли лучший метод, например, создать отдельный модуль для подсчета микросекунд с помощью микротаймера? Или есть другие правильные загрузчики, кроме этого. Я использую Arduino IDE для программирования STM32F103C8T6
@Sourabh Misal, 👍0
Обсуждение1 ответ
▲ -1
Рассматривали ли вы возможность использования RTC? Что-то вроде прорыва DS1307 с коммуникациями I2C предоставит вам точное время. https://www.bobmixon.com/2020/03/часы реального времени -и-ардуино/
,
@Bob
Как бы вы сделали задержку в 1000 мкс с DS1307?, @Edgar Bonet
Хороший вопрос ... ОП написал «мкс», а я прочитал «мс». ржу не могу, @Bob
Смотрите также:
- распиновка для stm32duino с bluepill
- STM32f4 Предупреждение: ядро заблокировано
- STM32 ST LINK не работает в Linux
- программирование STM32 с проблемами Arduino IDE
- «Черная таблетка» STM32 не может надежно войти в режим DFU
- Как извлечь бинарник из микроконтроллера STM32
- Разница между (*(volatile unsigned int *) и (volatile unsigned int)?
- Как использовать прерывание АЦП на синей таблетке STM32
Отклонение в 2 раза кажется слишком большим. У меня нет опыта работы с процессорами ARM, но я видел такие проблемы с микроконтроллерами на базе AVR, когда частота, установленная фьюзами, отличалась от той, что была установлена в Arduino IDE. Так что микроконтроллер работал на другой частоте. Вы уверены, что работаете на правильной частоте?, @chrisl