Да кто же спорит, тем более с вами? На ардуино.ру вас вообще обвинили в переписывании инфы с других источников с выдачей за своё. Видать там тоже одни завистники и фэйкомёты.a5021 писал(а):Продолжайте. Мне это нравится.
STM32 новичку в ARM что к чему
Re: STM32 новичку в ARM что к чему
- Реклама
Re: STM32 новичку в ARM что к чему
Еще один "изобретатель" фактов явился. Ссылочкой на "обвинения" не поделитесь?
Re: STM32 новичку в ARM что к чему
Ну вот, только начал читать опусы 51'ого Наполеона, дык ардуино.сру зависло...
a5021, весьма примечательная у вас там компашка ардуино-адептов, вечных_незнаек.
Смотрю и дигер там и птр ...

a5021, весьма примечательная у вас там компашка ардуино-адептов, вечных_незнаек.
Смотрю и дигер там и птр ...
Re: STM32 новичку в ARM что к чему
Досикус, так вы ж первый незнайка и есть. Последние ваши программерские потуги этому прямое свидетельство. Вы ж байт в порт вытолкнуть правильно не можете, да функции к пинам волшебными цифрами привязываете. Это же лютый позор. Кстати, упомянутые персонажи скорее относятся к вашей компании, т.к. мои взаимоотношения с ними там, практически соответствуют взаимоотношениям с вами тут. Так что оне ваши молочные братья -- такие же безграмотные понторезы и не стоит вам самоотстраняться.
Re: STM32 новичку в ARM что к чему
Продолжаем читать опусы Наполеона, о "помехоустойчивости" -это просто шедевр , 51ый клоун во всей красе.
Снова неуместные выжимки из документации, не осознаные и непонятые ...

Снова неуместные выжимки из документации, не осознаные и непонятые ...
- Реклама
Re: STM32 новичку в ARM что к чему
Вы бы переводили свой сумбур. Никто ж не поймет.
- Alexey_N
- Сверлит текстолит когтями
- Сообщения: 1273
- Зарегистрирован: Вт фев 01, 2011 17:56:40
- Откуда: г. Жуковка, Брянская обл.
Re: STM32 новичку в ARM что к чему
Ну вы тут развели ...
По теме: пользуюсь fasmarm, там есть директива processor, которой указывается список (битами) возможностей мк, под который программируешь. Так вот, под cortex-m3 я нашел, что это 0x37DA2FE, т.е.
CPU32_CAPABILITY_V1
CPU32_CAPABILITY_V2
CPU32_CAPABILITY_A
CPU32_CAPABILITY_V3
CPU32_CAPABILITY_M
CPU32_CAPABILITY_V4
CPU32_CAPABILITY_V4T
CPU32_CAPABILITY_V5T
CPU32_CAPABILITY_X
CPU32_CAPABILITY_V6T
CPU32_CAPABILITY_ALIGN
CPU32_CAPABILITY_Z
CPU32_CAPABILITY_6M
CPU32_CAPABILITY_7M
CPU32_CAPABILITY_T2
CPU32_CAPABILITY_V7
CPU32_CAPABILITY_DIV
CPU32_CAPABILITY_T2EE
Возникает вопрос, какие значения должны быть для cortex-m0? В частности буду использовать stm32f030f4p6.
По теме: пользуюсь fasmarm, там есть директива processor, которой указывается список (битами) возможностей мк, под который программируешь. Так вот, под cortex-m3 я нашел, что это 0x37DA2FE, т.е.
CPU32_CAPABILITY_V1
CPU32_CAPABILITY_V2
CPU32_CAPABILITY_A
CPU32_CAPABILITY_V3
CPU32_CAPABILITY_M
CPU32_CAPABILITY_V4
CPU32_CAPABILITY_V4T
CPU32_CAPABILITY_V5T
CPU32_CAPABILITY_X
CPU32_CAPABILITY_V6T
CPU32_CAPABILITY_ALIGN
CPU32_CAPABILITY_Z
CPU32_CAPABILITY_6M
CPU32_CAPABILITY_7M
CPU32_CAPABILITY_T2
CPU32_CAPABILITY_V7
CPU32_CAPABILITY_DIV
CPU32_CAPABILITY_T2EE
Возникает вопрос, какие значения должны быть для cortex-m0? В частности буду использовать stm32f030f4p6.
Индукционный нагреватель - 20% (наладка). TIG сварка - 10% (детальки)
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: STM32 новичку в ARM что к чему
может поможет - пример когдато для фасма скачал:
Спойлер
Код: Выделить всё
CPU_CAPABILITY_26BIT = 1 shl 00
CPU_CAPABILITY_V1 = 1 shl 01
CPU_CAPABILITY_V2 = 1 shl 02
CPU_CAPABILITY_A = 1 shl 03
CPU_CAPABILITY_V3 = 1 shl 04
CPU_CAPABILITY_M = 1 shl 05
CPU_CAPABILITY_V4 = 1 shl 06
CPU_CAPABILITY_V4T = 1 shl 07
CPU_CAPABILITY_V5 = 1 shl 08
CPU_CAPABILITY_V5T = 1 shl 09
CPU_CAPABILITY_E = 1 shl 10
CPU_CAPABILITY_P = 1 shl 11
CPU_CAPABILITY_J = 1 shl 12
CPU_CAPABILITY_X = 1 shl 13
CPU_CAPABILITY_V6 = 1 shl 14
CPU_CAPABILITY_V6T = 1 shl 15
CPU_CAPABILITY_ALIGN = 1 shl 16
CPU_CAPABILITY_K = 1 shl 17
CPU_CAPABILITY_Z = 1 shl 18
CPU_CAPABILITY_6M = 1 shl 19
CPU_CAPABILITY_7M = 1 shl 20
CPU_CAPABILITY_T2 = 1 shl 21
CPU_CAPABILITY_V7 = 1 shl 22
CPU_CAPABILITY_SYNC = 1 shl 23
CPU_CAPABILITY_DIV = 1 shl 24
CPU_CAPABILITY_T2EE = 1 shl 25
CPU_CAPABILITY_MP = 1 shl 26
CPU_CAPABILITY_VE = 1 shl 27
cortex_m0 = (CPU_CAPABILITY_6M) + \
(CPU_CAPABILITY_V6T) + \
(CPU_CAPABILITY_V6) + \
(CPU_CAPABILITY_V4T) + \
(CPU_CAPABILITY_V5T) + \
(CPU_CAPABILITY_ALIGN)- Alexey_N
- Сверлит текстолит когтями
- Сообщения: 1273
- Зарегистрирован: Вт фев 01, 2011 17:56:40
- Откуда: г. Жуковка, Брянская обл.
Re: STM32 новичку в ARM что к чему
О! то что нужно, благодарю!
Индукционный нагреватель - 20% (наладка). TIG сварка - 10% (детальки)
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
- Andrew Martin
- Вымогатель припоя
- Сообщения: 606
- Зарегистрирован: Вт июн 25, 2013 18:45:07
Re: STM32 новичку в ARM что к чему
Сейчас это выглядит вот так:
CPU_CAPABILITY_V6 для THUMB не применяется.
Просто положу это сюда. Может быть кому-то пригодится.
Код: Выделить всё
CPU_CAPABILITY_26BIT = 1 shl 00
CPU_CAPABILITY_V1 = 1 shl 01
CPU_CAPABILITY_V2 = 1 shl 02
CPU_CAPABILITY_A = 1 shl 03
CPU_CAPABILITY_V3 = 1 shl 04
CPU_CAPABILITY_M = 1 shl 05
CPU_CAPABILITY_V4 = 1 shl 06
CPU_CAPABILITY_V4T = 1 shl 07
CPU_CAPABILITY_V5 = 1 shl 08
CPU_CAPABILITY_V5T = 1 shl 09
CPU_CAPABILITY_E = 1 shl 10
CPU_CAPABILITY_P = 1 shl 11
CPU_CAPABILITY_J = 1 shl 12
CPU_CAPABILITY_X = 1 shl 13
CPU_CAPABILITY_V6 = 1 shl 14
CPU_CAPABILITY_V6T = 1 shl 15
CPU_CAPABILITY_ALIGN = 1 shl 16
CPU_CAPABILITY_K = 1 shl 17
CPU_CAPABILITY_Z = 1 shl 18
CPU_CAPABILITY_6M = 1 shl 19
CPU_CAPABILITY_7M = 1 shl 20
CPU_CAPABILITY_T2 = 1 shl 21
CPU_CAPABILITY_V7 = 1 shl 22
CPU_CAPABILITY_SYNC = 1 shl 23
CPU_CAPABILITY_DIV = 1 shl 24
CPU_CAPABILITY_T2EE = 1 shl 25
CPU_CAPABILITY_MP = 1 shl 26
CPU_CAPABILITY_VE = 1 shl 27
processor CPU_CAPABILITY_V4T+\
CPU_CAPABILITY_V5T+\
CPU_CAPABILITY_6M+\
CPU_CAPABILITY_ALIGN+\
CPU_CAPABILITY_V6T
Просто положу это сюда. Может быть кому-то пригодится.
- Вложения
-
- stm32f0_include.zip
- (33.77 КБ) 169 скачиваний
- Alexey_N
- Сверлит текстолит когтями
- Сообщения: 1273
- Зарегистрирован: Вт фев 01, 2011 17:56:40
- Откуда: г. Жуковка, Брянская обл.
Re: STM32 новичку в ARM что к чему
Конечно пригодится!
Посмотрел, да, действительно, инструкций V6 у cm0 нет, это арм инструкции.
Индукционный нагреватель - 20% (наладка). TIG сварка - 10% (детальки)
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
- Andrew Martin
- Вымогатель припоя
- Сообщения: 606
- Зарегистрирован: Вт июн 25, 2013 18:45:07
Re: STM32 новичку в ARM что к чему
Возможно кому-нибудь пригодится, если выложите свои include для fasmarm под М3. Перевод сишных хедеров - кропотливое дело.
- Alexey_N
- Сверлит текстолит когтями
- Сообщения: 1273
- Зарегистрирован: Вт фев 01, 2011 17:56:40
- Откуда: г. Жуковка, Брянская обл.
Re: STM32 новичку в ARM что к чему
Вот под m3 мой, перед директивой include с ним необходимо объявить один из символов
; STM32F10X_LD - STM32 Low density devices
; STM32F10X_LD_VL - STM32 Low density Value Line devices
; STM32F10X_MD - STM32 Medium density devices
; STM32F10X_MD_VL - STM32 Medium density Value Line devices
; STM32F10X_HD - STM32 High density devices
; STM32F10X_HD_VL - STM32 High density value line devices
; STM32F10X_XL - STM32 XL-density devices
; STM32F10X_CL - STM32 Connectivity line devices
Например для STM32F103CBT6:
define STM32F10X_MD 1
include 'include\equates\stm32f10x.inc'
; STM32F10X_LD - STM32 Low density devices
; STM32F10X_LD_VL - STM32 Low density Value Line devices
; STM32F10X_MD - STM32 Medium density devices
; STM32F10X_MD_VL - STM32 Medium density Value Line devices
; STM32F10X_HD - STM32 High density devices
; STM32F10X_HD_VL - STM32 High density value line devices
; STM32F10X_XL - STM32 XL-density devices
; STM32F10X_CL - STM32 Connectivity line devices
Например для STM32F103CBT6:
define STM32F10X_MD 1
include 'include\equates\stm32f10x.inc'
- Вложения
-
- stm32f10x.zip
- (51.45 КБ) 160 скачиваний
Индукционный нагреватель - 20% (наладка). TIG сварка - 10% (детальки)
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
ВЧ генератор 150МГц - 80% (наладка). Мостовой ИИП - 40% (подкл. ОС).
Re: STM32 новичку в ARM что к чему
И снова я с УАРТом...
В снипетсах и в даташите в приложении есть такой код:
Поясните пожалуйста, в чем смысл ожидания флага TC в ISR после включения УАРТ?
Читаю даташит RM0360 - там на стр. 601 есть диаграмма как все эти биты ставятся. Так вот ТС сразу после включения равен 0. С таким кодом как бы долго прождать можно
И что за пустой фрейм там может передаваться, который надо ждать? Откуда и при каких обстоятельствах он появляется?
Можно ли СТАВИТЬ бит UE в CR1 одной командой с другими битами этого регистра? Или же лучше сначала поставить биты, а потом отдельной командой включить УАРТ?
В снипетсах и в даташите в приложении есть такой код:
Код: Выделить всё
USART1->CR1 = USART_CR1_TE | USART_CR1_RXNEIE | USART_CR1_RE | USART_CR1_UE; /* (3) */
while((USART1->ISR & USART_ISR_TC) != USART_ISR_TC)/* polling idle frame Transmission */
{
/* add time out here for a robust application */
}
USART1->ICR |= USART_ICR_TCCF;/* Clear TC flag */
USART1->CR1 |= USART_CR1_TCIE;/* Enable TC interrupt */Читаю даташит RM0360 - там на стр. 601 есть диаграмма как все эти биты ставятся. Так вот ТС сразу после включения равен 0. С таким кодом как бы долго прождать можно
Можно ли СТАВИТЬ бит UE в CR1 одной командой с другими битами этого регистра? Или же лучше сначала поставить биты, а потом отдельной командой включить УАРТ?
Последний раз редактировалось aam Пт ноя 04, 2016 19:41:03, всего редактировалось 1 раз.
Re: STM32 новичку в ARM что к чему
Smart Card Interface
Как такое http://zkread.com/article/581417.html сделать на f407vg?
Как такое http://zkread.com/article/581417.html сделать на f407vg?
- oleg110592
- Друг Кота
- Сообщения: 3832
- Зарегистрирован: Сб сен 10, 2011 17:46:25
Re: STM32 новичку в ARM что к чему
Виноват, и вправду
Но про остальное вопрос открыт. Откуда может браться пустой фрейм?
Но про остальное вопрос открыт. Откуда может браться пустой фрейм?
Re: STM32 новичку в ARM что к чему
Пустой фрейм передается при каждом включении трансмиттера (бит TE). Может быть использован для пробуждения приемной стороны, если та спит.
Re: STM32 новичку в ARM что к чему
В общем, завел я этот УАРТ пользуясь чисто регистрами и дефайнами из stm32f0xx.h. Если разобраться, не так уж и сложно все оказывается. Только даташит читать муторно очень. При этом памяти ушло около 1700 байт и видно что вообще в проце происходит. Также очень помогли снипетсы с оф. сайта. С SPL чуть ли не 3500 выходило. Да еще вопрос в чем проще разобраться - в даташите или в этой SPL. По мне так в даташите проще. По приколу пробовал посмотреть размер кода на HAL, выдаваемого CubeMX (UART, АЦП, SPI) - с максимальной оптимизацией по размеру выходило 7,5 Кб (без "полезного" пользовательского кода) 
Re: STM32 новичку в ARM что к чему
aam писал(а):По приколу пробовал посмотреть размер кода на HAL, выдаваемого CubeMX (UART, АЦП, SPI) - с максимальной оптимизацией по размеру выходило 7,5 Кб (без "полезного" пользовательского кода)
Видимо у нас разные компиляторы. Проделал тоже самое (тоже по приколу
Код: Выделить всё
Program size (bytes): 3556
Data size (bytes): 12
BSS size (bytes): 1856
Total size (bytes): 5424 (R/W Memory: 1868)

