Мой Апокалипсис

1 мес. 1 нед. назад
ENCARNALIUM_NOSFERATUM
Модератор
Модератор
Сообщений: 287
Больше
Автор темы
Мой Апокалипсис #266375

на stm32 только только начал в самом кубе,так на ардуинках баловался.

CubeMX это только конфигуратор. А дальше куда? Каил?

Слова, вызывающие бурю - самые тихие; Мысли, приходящие кротко, как голубь - правят миром...
Тема заблокирована.
1 мес. 1 нед. назад 1 мес. 1 нед. назад от berendey.
berendey
Живу я здесь
Живу я здесь
Сообщений: 404
Больше
Мой Апокалипсис #266377
на С
да,наверное моих знаний ещё совсем не достаточно для настоящего кода.
будем учиться.
Тема заблокирована.
1 мес. 1 нед. назад 1 мес. 1 нед. назад от ENCARNALIUM_NOSFERATUM.
ENCARNALIUM_NOSFERATUM
Модератор
Модератор
Сообщений: 287
Больше
Автор темы
Мой Апокалипсис #266379

на С
да,наверное моих знаний ещё совсем не достаточно для настоящего кода.
будем учиться.

Для низкоуровневого управления нужно в совершенстве знать, как работает микроконтроллер его периферия и вся прочая обвязка.
Знать, именно на уровне разработчиков.

Просто для примера, настройка модуля RCC (тактирование Ядра ARM Cortex на частоту 480 МГц), Микроконтроллер STM32H743IIT6.
Этот программный код настраивает только систему тактирования, представляешь сколько там ещё всего, что бы хотя бы вывести микроконтроллер в рабочий режим? На минималки.

AREA RCC_SECTION, CODE, READONLY

INCLUDE pmm_stm32h743xx.inc

EXPORT RCC_Init

RCC_Init PROC

LDR R0, = RCC

; RCC > CR
LDR R1, [R0, #RCC_CR]
ORR R1, #(1 << 16)
STR R1, [R0, #RCC_CR]
HSERDY
LDR R1, [R0, #RCC_CR]
TST R1, #(1 << 17)
BEQ HSERDY

; RCC > PLLCKSELR

LDR R1, [R0, #RCC_PLLCKSELR]
ORR R1, #(2 << 0)
STR R1, [R0, #RCC_PLLCKSELR]

; RCC > PLLCFGR

LDR R1, [R0, #RCC_PLLCFGR]
ORR R1, #(1 << 16)
ORR R1, #(1 << 21)
ORR R1, #(1 << 24)
STR R1, [R0, #RCC_PLLCFGR]

; RCC > PLLCFGR

LDR R1, [R0, #RCC_PLLCFGR]
BFC R1, #2, #2
ORR R1, #(3 << 2)
STR R1, [R0, #RCC_PLLCFGR]

; RCC > PLLCKSELR

LDR R1, [R0, #RCC_PLLCKSELR]
BFC R1, #4, #6
ORR R1, #(1 << 4)
STR R1, [R0, #RCC_PLLCKSELR]

; RCC > PLL1DIVR

LDR R1, [R0, #RCC_PLL1DIVR]
BFC R1, #0, #9
ORR R1, #(119 << 0)
BFC R1, #9, #21
ORR R1, #(1 << 9)
ORR R1, #(1 << 16)
ORR R1, #(1 << 24)
STR R1, [R0, #RCC_PLL1DIVR]

; RCC > CR

LDR R1, [R0, #RCC_CR]
ORR R1, #(1 << 24)
STR R1, [R0, #RCC_CR]
PLL1RDY
LDR R1, [R0, #RCC_CR]
TST R1, #(1 << 25)
BEQ PLL1RDY

; RCC > D1CFGR

LDR R1, [R0, #RCC_D1CFGR]
BFC R1, #0, #12
LDR R2, =0x00000808
ORR R1, R2
STR R1, [R0, #RCC_D1CFGR]

DSB
ISB

; RCC > CFGR

LDR R1, [R0, #RCC_CFGR]
BFC R1, #0, #3
ORR R1, #(3 << 0)
STR R1, [R0, #RCC_CFGR]
SWS
LDR R1, [R0, #RCC_CFGR]
AND R1, #0x38
CMP R1, #(3 << 3)
BNE SWS

; RCC > D2CFGR

LDR R1, [R0, #RCC_D2CFGR]
BFC R1, #4, #3
ORR R1, #(4 << 4)
STR R1, [R0, #RCC_D2CFGR]

LDR R1, [R0, #RCC_D2CFGR]
BFC R1, #8, #3
ORR R1, #(4 << 8 )
STR R1, [R0, #RCC_D2CFGR]

; RCC > D1CFGR

LDR R1, [R0, #RCC_D1CFGR]
BFC R1, #4, #3
ORR R1, #(4 << 4)
STR R1, [R0, #RCC_D1CFGR]

; RCC > D3CFGR

LDR R1, [R0, #RCC_D3CFGR]
BFC R1, #4, #3
ORR R1, #(4 << 4)
STR R1, [R0, #RCC_D3CFGR]

RCC_DELAY

LDR R2, = 250

RCC_DL

SUBS R2, #1
BNE RCC_DL

; RCC > PLLCFGR

LDR R1, [R0, #RCC_PLLCFGR]
BFC R1, #6, #2
ORR R1, #(3 << 6)
STR R1, [R0, #RCC_PLLCFGR]

; RCC > PLLCKSELR

LDR R1, [R0, #RCC_PLLCKSELR]
BFC R1, #12, #6
ORR R1, #(2 << 12)
STR R1, [R0, #RCC_PLLCKSELR]

; RCC > PLL2DIVR

LDR R1, [R0, #RCC_PLL2DIVR]
BFC R1, #0, #9
ORR R1, #(49 << 0)
BFC R1, #9, #21
ORR R1, #(1 << 9)
ORR R1, #(1 << 16)
ORR R1, #(1 << 24)
STR R1, [R0, #RCC_PLL2DIVR]

; RCC > CR

LDR R1, [R0, #RCC_CR]
ORR R1, #(1 << 26)
STR R1, [R0, #RCC_CR]
PLL2RDY
LDR R1, [R0, #RCC_CR]
TST R1, #(1 << 27)
BEQ PLL2RDY

; RCC > PLLCFGR

LDR R1, [R0, #RCC_PLLCFGR]
BFC R1, #10, #2
ORR R1, #(3 << 10)
STR R1, [R0, #RCC_PLLCFGR]

; RCC > PLLCKSELR

LDR R1, [R0, #RCC_PLLCKSELR]
BFC R1, #20, #6
ORR R1, #(1 << 20)
STR R1, [R0, #RCC_PLLCKSELR]

; RCC > PLL3DIVR

LDR R1, [R0, #RCC_PLL3DIVR]
BFC R1, #0, #9
ORR R1, #(59 << 0)
BFC R1, #9, #15
ORR R1, #(1 << 9)
ORR R1, #(1 << 16)
STR R1, [R0, #RCC_PLL3DIVR]

; RCC > PLL3DIVR

LDR R1, [R0, #RCC_PLL3DIVR]
BFC R1, #24, #7
ORR R1, #(11 << 24)
STR R1, [R0, #RCC_PLL3DIVR]

; RCC > CR

LDR R1, [R0, #RCC_CR]
ORR R1, #(1 << 28)
STR R1, [R0, #RCC_CR]
PLL3RDY
LDR R1, [R0, #RCC_CR]
TST R1, #(1 << 29)
BEQ PLL3RDY

; RCC > D1CCIPR

LDR R1, [R0, #RCC_D1CCIPR]
BFC R1, #0, #2
ORR R1, #(2 << 0)
STR R1, [R0, #RCC_D1CCIPR]

BX LR

ENDP

ALIGN

END

P.S. Не знаю, как длинный текст спрятать под спойлер.

Слова, вызывающие бурю - самые тихие; Мысли, приходящие кротко, как голубь - правят миром...
Тема заблокирована.
1 мес. 1 нед. назад
zilk
Живу я здесь
Живу я здесь
Сообщений: 427
Больше
Мой Апокалипсис #266380


P.S. Не знаю, как длинный текст спрятать под спойлер.

Вот в этом и есть вся суть - он пишет на чистом ассемблере и не знает, как текст спрятать под спойлер! :lol: :lol: :lol:

Ну, таких гонщиков еще не встречал... стм32 на 480 мгц, чистый ассемблер, и всё это, чтобы обсчитать контур.. :lol:

БТГ, на который ВЫ заслужили (_!_)
Тема заблокирована.
1 мес. 1 нед. назад 1 мес. 1 нед. назад от Rus.
Rus
Давно я тут
Давно я тут
Сообщений: 115
Больше
Мой Апокалипсис #266381


P.S. Не знаю, как длинный текст спрятать под спойлер.

Вот в этом и есть вся суть - он пишет на чистом ассемблере и не знает, как текст спрятать под спойлер! :lol: :lol: :lol:

Ну, таких гонщиков еще не встречал... стм32 на 480 мгц, чистый ассемблер, и всё это, чтобы обсчитать контур.. :lol:
да уж, тут и маленького G431 за глаза хватит, графика от него нужна только извращенцам, зато аналоговых компараторов и оперов у него больше.

*___ Выбирайте STM32H743IIT6, если вам нужно делать устройство с большим цветным экраном, графическим интерфейсом, сетевыми функциями (Ethernet/USB), или если вы обрабатываете потоковое видео/аудио.

*___ Выбирайте STM32G431, если вы делаете контроллер мотора (квадрокоптер, электросамокат), цифровой блок питания, сварочный аппарат или систему, где критически важно быстро и дешево обрабатывать сигналы с датчиков тока и напряжения с помощью встроенных ОУ и компараторов.
Тема заблокирована.
1 мес. 1 нед. назад
zilk
Живу я здесь
Живу я здесь
Сообщений: 427
Больше
Мой Апокалипсис #266382


P.S. Не знаю, как длинный текст спрятать под спойлер.

Вот в этом и есть вся суть - он пишет на чистом ассемблере и не знает, как текст спрятать под спойлер! :lol: :lol: :lol:

Ну, таких гонщиков еще не встречал... стм32 на 480 мгц, чистый ассемблер, и всё это, чтобы обсчитать контур.. :lol:
да уж, тут и маленького G431 за глаза хватит, графика от него нужна только извращенцам, зато аналоговых компараторов и оперов у него больше.

Я тебе больше скажу это делается легко на attiny424, но товарищ же не лох - ему для этого и xilinx virtex маловато будет... :lol: :lol:

БТГ, на который ВЫ заслужили (_!_)
Спасибо сказали Alfic
Тема заблокирована.
1 мес. 1 нед. назад
Rus
Давно я тут
Давно я тут
Сообщений: 115
Больше
Мой Апокалипсис #266385


P.S. Не знаю, как длинный текст спрятать под спойлер.

Вот в этом и есть вся суть - он пишет на чистом ассемблере и не знает, как текст спрятать под спойлер! :lol: :lol: :lol:

Ну, таких гонщиков еще не встречал... стм32 на 480 мгц, чистый ассемблер, и всё это, чтобы обсчитать контур.. :lol:
да уж, тут и маленького G431 за глаза хватит, графика от него нужна только извращенцам, зато аналоговых компараторов и оперов у него больше.

Я тебе больше скажу это делается легко на attiny424, но товарищ же не лох - ему для этого и xilinx virtex маловато будет... :lol: :lol:
Не знаю, не силен)), но просто привык к компараторам, особенно скоростным.
Тема заблокирована.
1 мес. 1 нед. назад 1 мес. 1 нед. назад от ENCARNALIUM_NOSFERATUM.
ENCARNALIUM_NOSFERATUM
Модератор
Модератор
Сообщений: 287
Больше
Автор темы
Мой Апокалипсис #266393


P.S. Не знаю, как длинный текст спрятать под спойлер.

Вот в этом и есть вся суть - он пишет на чистом ассемблере и не знает, как текст спрятать под спойлер! :lol: :lol: :lol:

Ну, таких гонщиков еще не встречал... стм32 на 480 мгц, чистый ассемблер, и всё это, чтобы обсчитать контур.. :lol:

Как смешно, ёб вашу мать... ))) Аж уссаться со смеху можно.
Детский сад "Зелёные сопельки".
Видимо, не к чему больше было придраться.

Нах мне это знать? Это вы тут сидите, хернёй занимаетесь...

МК не контур обсчитывает, а управляет вообще всей доской.

Слова, вызывающие бурю - самые тихие; Мысли, приходящие кротко, как голубь - правят миром...
Тема заблокирована.
1 мес. 1 нед. назад
ENCARNALIUM_NOSFERATUM
Модератор
Модератор
Сообщений: 287
Больше
Автор темы
Мой Апокалипсис #266394


P.S. Не знаю, как длинный текст спрятать под спойлер.

Вот в этом и есть вся суть - он пишет на чистом ассемблере и не знает, как текст спрятать под спойлер! :lol: :lol: :lol:

Ну, таких гонщиков еще не встречал... стм32 на 480 мгц, чистый ассемблер, и всё это, чтобы обсчитать контур.. :lol:
да уж, тут и маленького G431 за глаза хватит, графика от него нужна только извращенцам, зато аналоговых компараторов и оперов у него больше.

*___ Выбирайте STM32H743IIT6, если вам нужно делать устройство с большим цветным экраном, графическим интерфейсом, сетевыми функциями (Ethernet/USB), или если вы обрабатываете потоковое видео/аудио.

*___ Выбирайте STM32G431, если вы делаете контроллер мотора (квадрокоптер, электросамокат), цифровой блок питания, сварочный аппарат или систему, где критически важно быстро и дешево обрабатывать сигналы с датчиков тока и напряжения с помощью встроенных ОУ и компараторов.

Ты понимаешь фразу "для примера"?! Или даже это тебе надо объяснять?
Запусти в STM32G431 HRTIM и пришли код. Посмотрю, как ты будешь работать с периферией, которой там отродясь не было.

Слова, вызывающие бурю - самые тихие; Мысли, приходящие кротко, как голубь - правят миром...
Тема заблокирована.
1 мес. 1 нед. назад 1 мес. 1 нед. назад от ENCARNALIUM_NOSFERATUM.
ENCARNALIUM_NOSFERATUM
Модератор
Модератор
Сообщений: 287
Больше
Автор темы
Мой Апокалипсис #266396


P.S. Не знаю, как длинный текст спрятать под спойлер.

Вот в этом и есть вся суть - он пишет на чистом ассемблере и не знает, как текст спрятать под спойлер! :lol: :lol: :lol:

Ну, таких гонщиков еще не встречал... стм32 на 480 мгц, чистый ассемблер, и всё это, чтобы обсчитать контур.. :lol:
да уж, тут и маленького G431 за глаза хватит, графика от него нужна только извращенцам, зато аналоговых компараторов и оперов у него больше.

Я тебе больше скажу это делается легко на attiny424, но товарищ же не лох - ему для этого и xilinx virtex маловато будет... :lol: :lol:

Если как вы, нихера не делать - то и attiny13 тоже вполне сойдёт.
У меня G473 управляет 12 фазами, одна из которых молотит от 1,8 МГц и выше с очень маленьким шагом подстройки длительности импульса и сдвигом фазы.

Твоей 8 битной аттинькой с 255 шагами дискретности - там нехер делать

Слова, вызывающие бурю - самые тихие; Мысли, приходящие кротко, как голубь - правят миром...
Тема заблокирована.
Модераторы: ENCARNALIUM_NOSFERATUM
Время создания страницы: 0.127 секунд