13.02.2013, 22:00
|
#2371
|
Вид на жительство
Регистрация: 26.07.2007
Сообщений: 483
Сказал спасибо: 18
Сказали Спасибо 107 раз(а) в 68 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Ну, возможно, но у меня плохой опыт дрыгать пином на АРМ-ах. на 24MHz STM32F100 максимальная скорость была около 1MHz в основном цикле. При полном отсутствии другого кода. Принимая во внимание сколько процессорного времени занимает простое передрыгивание....
В моем случае нужен один шаговик. Таким образом я полностью включаю/выключаю таймер. А в случае 3 (X/Y/Z) Можно менять значение скважности 0%/50% соответствующего канала и по этому значению делать инкремент/декремент соответствующей координаты. Таким образом полностью избавиться от задержек переключения GPIO периферии. Разгон/торможение - если система связанная (скажем CNC) через тот-же прескалер, по другому таймеру либо по какому нибудь замысловатому алгоритму из того-же.
|
|
|
|
13.02.2013, 22:06
|
#2372
|
Почётный гражданин KAZUS.RU
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Да вот глянул прям щас что по чем
|
|
|
|
13.02.2013, 22:08
|
#2373
|
Почётный гражданин KAZUS.RU
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Повторюсь с вопросом - какая частота импульсов на двигатель ?
|
|
|
|
13.02.2013, 22:18
|
#2374
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от Boba_spb
|
Да вот глянул прям щас что по чем
|
Так вот и я об том же. А у Промкомплекта цены - не "без НДС" указаны?
__________________
There's always more than one way to skin a cat.
|
|
|
|
13.02.2013, 22:29
|
#2375
|
Почётный гражданин KAZUS.RU
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от nerozero
|
Ну, возможно, но у меня плохой опыт дрыгать пином на АРМ-ах. на 24MHz STM32F100 максимальная скорость была около 1MHz в основном цикле.
|
У stm32f0 - 48 МГц.
PHP код:
|
if(!CntStep) return;
stpm_tim_irq:
0x800070c: 0x485e LDR.N R0, ??DataTable19_3 ; upr
0x800070e: 0x6941 LDR R1, [R0, #0x14]
0x8000710: 0x2900 CMP R1, #0
0x8000712: 0xd00c BEQ.N ??stpm_tim_irq_0 ; 0x800072e
CntStep--;
0x8000714: 0x1e49 SUBS R1, R1, #1
0x8000716: 0x6141 STR R1, [R0, #0x14]
GPIOB-›BRR=3;
0x8000718: 0x2103 MOVS R1, #3
0x800071a: 0x4a5c LDR.N R2, ??DataTable19_4 ; GPIOB_BSRR
0x800071c: 0x8211 STRH R1, [R2, #0x10]
GPIOB-›BSRR=upr[uk++];
0x800071e: 0x6903 LDR R3, [R0, #0x10]
0x8000720: 0x009b LSLS R3, R3, #2
0x8000722: 0x58c3 LDR R3, [R0, R3]
0x8000724: 0x6013 STR R3, [R2]
uk&=3;
0x8000726: 0x6902 LDR R2, [R0, #0x10]
0x8000728: 0x1c52 ADDS R2, R2, #1
0x800072a: 0x4011 ANDS R1, R1, R2
0x800072c: 0x6101 STR R1, [R0, #0x10]
}
??stpm_tim_irq_0:
0x800072e: 0x4770 BX LR
|
Всего 18 команд на 48 МГц + вход выход из прерывания
Последний раз редактировалось dosikus; 13.02.2013 в 22:48.
|
|
|
|
13.02.2013, 22:31
|
#2376
|
Почётный гражданин KAZUS.RU
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от tempora
|
Так вот и я об том же. А у Промкомплекта цены - не "без НДС" указаны?
|
НЕ будем мелочиться за полтинник
Есть еще дешевле в розницу www.efind.ru гляньте
|
|
|
|
13.02.2013, 22:38
|
#2377
|
Почётный гражданин KAZUS.RU
Регистрация: 10.01.2007
Сообщений: 3,412
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от Boba_spb
|
НЕ будем мелочиться за полтинник
|
Разумеется не будем, меня слова "чуть больше рубля" удивили - надо было хоть в кавычки рубль взять, что ли, чтоб не путать доверчивых форумчан.
__________________
There's always more than one way to skin a cat.
|
|
|
|
13.02.2013, 22:45
|
#2378
|
Вид на жительство
Регистрация: 26.07.2007
Сообщений: 483
Сказал спасибо: 18
Сказали Спасибо 107 раз(а) в 68 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от Boba_spb
|
У stm32f0 - 48 МГц.
Всего 18 команд на 48 МГц + вход выход из прерывания
|
Это-же не AVR, У периферии свой тактовый генератор. весь ваш код пролетит за ха-тьфу, и увязнет в переключении периферии.
|
|
|
|
13.02.2013, 22:57
|
#2379
|
Почётный гражданин KAZUS.RU
Регистрация: 08.06.2008
Сообщений: 1,394
Сказал спасибо: 4
Сказали Спасибо 183 раз(а) в 167 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Сообщение от nerozero
|
Это-же не AVR, У периферии свой тактовый генератор. весь ваш код пролетит за ха-тьфу, и увязнет в переключении периферии.
|
Это Вы о чем?
#define GPIO_HIGH(a,b) a-›BSRR = b
#define GPIO_LOW(a,b) a-›BRR = b
#define GPIO_TOGGLE(a,b) a-›ODR ^= b
#define CLC_ON GPIO_HIGH(GPIOC, P_CLC)
#define CLC_OFF GPIO_LOW(GPIOC, P_CLC)
///
....
CLC_ON;
CLC_OFF;
....
Это из работающей программы Clock дергаю ногой.
В субботу гляну "мутным глазом" какая у него длительность.
|
|
|
|
13.02.2013, 23:03
|
#2380
|
Вид на жительство
Регистрация: 26.07.2007
Сообщений: 483
Сказал спасибо: 18
Сказали Спасибо 107 раз(а) в 68 сообщении(ях)
|
Re: Изучаем STM32 Cortex M3
Boba_spb, попробуйте просто поставить сей код в основной цикл и сравнить частоту на пине с частотой ядра.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 01:46.
|
|