Буфер данных Stm32f103c8
Re: Буфер данных Stm32f103c8
Не устраивает что? Практически все Оси имеют системный таймер на 1mS . Если нужны интервалы меньше, вменяемо юзать аппаратные решения а не задержки процессорного времени.
- Реклама
Re: Буфер данных Stm32f103c8
Разберусь - скажу что не устраивает.
Re: Буфер данных Stm32f103c8
А кто-нибудь использует этот SysTick в мирных целях? Мне он всегда казался страшно неудобным, отчего я так его ни разу и не попользовал.
Re: Буфер данных Stm32f103c8
я использую для нетребовательных вещей флаги выставлять - динамическую индикацию переключать, пакеты modbus-а обрабатывать, антидребезг, такое вот все.
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18590
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: Буфер данных Stm32f103c8
[uquote="dosikus",url="/forum/viewtopic.php?p=3435837#p3435837"]ау ARV[/uquote]ку-ку, досикус.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
- Реклама
Re: Буфер данных Stm32f103c8
[uquote="a5021",url="/forum/viewtopic.php?p=3436082#p3436082"]А кто-нибудь использует этот SysTick в мирных целях? Мне он всегда казался страшно неудобным, отчего я так его ни разу и не попользовал.[/uquote]
То есть тут я, похоже, не дурак. Это лыжи не едут.... Блин, ну хоть что-то хорошее...
Добавлено after 1 minute 2 seconds:
Я-то думаю, почему я его не могу подогнать под себя.
Добавлено after 1 minute 37 seconds:
[uquote="ARV",url="/forum/viewtopic.php?p=3436133#p3436133"][uquote="dosikus",url="/forum/viewtopic.php?p=3435837#p3435837"]ау ARV[/uquote]
ку-ку, досикус.[/uquote]
То есть тут я, похоже, не дурак. Это лыжи не едут.... Блин, ну хоть что-то хорошее...
Добавлено after 1 minute 2 seconds:
Я-то думаю, почему я его не могу подогнать под себя.
Добавлено after 1 minute 37 seconds:
[uquote="ARV",url="/forum/viewtopic.php?p=3436133#p3436133"][uquote="dosikus",url="/forum/viewtopic.php?p=3435837#p3435837"]ау ARV[/uquote]
ку-ку, досикус.[/uquote]
Re: Буфер данных Stm32f103c8
khch, systick изначально задумывался как источник этих самых тиков для RTOS. Он является частью ядра контроллера, а не "периферии". А RTOS использует этот таймер "в тёмную" и многих мало интересует, что там происходит.
Иван Сусанин - первый полупроводник 
Re: Буфер данных Stm32f103c8
[uquote="khch",url="/forum/viewtopic.php?p=3436155#p3436155"]Я-то думаю, почему я его не могу подогнать под себя[/uquote]
а что там "подгонять"? Это самый тупой из возможных таймеров. Единственное, что он умеет - выдавать прерывание раз в n-цать тактов.
а что там "подгонять"? Это самый тупой из возможных таймеров. Единственное, что он умеет - выдавать прерывание раз в n-цать тактов.
Re: Буфер данных Stm32f103c8
Я посмотрел в HAL_Delay, там был этот систик. Може я что-то упустил - это характерно.
как я понимаю, мне надо изучать таймеры? Мне нужны микросекундные интервалы. Сейчас я этим и занят.
как я понимаю, мне надо изучать таймеры? Мне нужны микросекундные интервалы. Сейчас я этим и занят.
Re: Буфер данных Stm32f103c8
Да, таймеры. Их там несколько разновидностей (по количеству функционала). Самые продвинутые так и называются Advanced timers. В зависимости от контроллера их может быть до двух, это TIM1, TIM8. Ими можно и импульсы микросекундные захватывать и трехфазные моторы крутить, плюс аппаратно объединять их.
Иван Сусанин - первый полупроводник 
Re: Буфер данных Stm32f103c8
Если мой таймер сидит на шине с частотой 32,000,000, значит на одну микросекунду мне надо записать в регистр ARR число 32. Я правильно считаю??
Оставим в сторону точность работы кварца.
Оставим в сторону точность работы кварца.
Re: Буфер данных Stm32f103c8
Системный таймер самый простой. Про другие прочитайте. http://robocraft.ru/blog/ARM/722.htmlkhch писал(а):Я-то думаю, почему я его не могу подогнать под себя.
http://robocraft.ru/blog/ARM/739.html
Для этого не обязательно использовать таймер.khch писал(а):мне надо изучать таймеры? Мне нужны микросекундные интервалы.
По аналогии с кодом выше. https://radiokot.ru/forum/viewtopic.php ... 7#p3435257
Код: Выделить всё
void DWT_Delay_us(uint32_t us)
{
uint32_t Count = DWT->CYCCNT;
us = us * (SystemCoreClock / 1000000);
while((DWT->CYCCNT - Count) < us);
}32-1, т. е. 31.khch писал(а):Если мой таймер сидит на шине с частотой 32,000,000, значит на одну микросекунду мне надо записать в регистр ARR число 32. Я правильно считаю??
Последний раз редактировалось Мурик Вс авг 12, 2018 15:57:10, всего редактировалось 8 раз.
Re: Буфер данных Stm32f103c8
Да я уже с переменным успехом с утра .....Системный таймер самый простой. Про другие прочитайте.
Добавлено after 1 minute 5 seconds:
void mcsDelay (uint32_t time_in_mcsec)
{
TIM_TypeDef * Timer;
uint16_t diviser = time_in_mcsec*(32-1);
Timer->ARR=diviser;
}
Как-то так....
Добавлено after 4 minutes 2 seconds:
[uquote="Myp3ik",url="/forum/viewtopic.php?p=3436179#p3436179"]32 - 1[/uquote]
Ну да... Он же и нуль считает.
Мне, почему-то, кажется, что 31,,,32 небольшая разница будет.
При погрешности кварца в десять миллионых номинала это уже 3.
Re: Буфер данных Stm32f103c8
На что указывает TIM_TypeDef * Timer;?
Прога в HardFault улетит.
Прога в HardFault улетит.
Re: Буфер данных Stm32f103c8
Все таймеры уже определены глобально. Не надо их внутри функции переопределять. Берите и пользуйте.
TIM1->ARR = xxx;
TIM1->ARR = xxx;
Re: Буфер данных Stm32f103c8
[uquote="Мурик",url="/forum/viewtopic.php?p=3436183#p3436183"]На что указывает TIM_TypeDef * Timer;?
Прога в HardFault улетит.[/uquote]
Я не знаю что такое HardFault, но то, что я сделал - неправильно...
да!!! Это должен быть
#define TIM1 ((TIM_TypeDef *)TIM1_BASE)
Надо же.... я учусь
Прога в HardFault улетит.[/uquote]
Я не знаю что такое HardFault, но то, что я сделал - неправильно...
да!!! Это должен быть
#define TIM1 ((TIM_TypeDef *)TIM1_BASE)
Надо же.... я учусь
Re: Буфер данных Stm32f103c8
Почему вы не хотите подключить заголовочные файлы, где это уже определено?
Re: Буфер данных Stm32f103c8
Понимаю, выглядело глупо... Теперь сам понял.
Добавлено after 51 second:
[uquote="a5021",url="/forum/viewtopic.php?p=3436195#p3436195"]Почему вы не хотите подключить заголовочные файлы, где это уже определено?[/uquote]
Да все там подключено.
Просто я сделал по-своему, а вышло как обычно
Добавлено after 51 second:
[uquote="a5021",url="/forum/viewtopic.php?p=3436195#p3436195"]Почему вы не хотите подключить заголовочные файлы, где это уже определено?[/uquote]
Да все там подключено.
Просто я сделал по-своему, а вышло как обычно
Re: Буфер данных Stm32f103c8
http://infocenter.arm.com/help/index.js ... 12s01.htmlkhch писал(а):Я не знаю что такое HardFault
Об одной из причин попадания программы в обработчик HardFault. http://purebasic.mybb.ru/viewtopic.php?id=564#p7599


