Изучение уязвимостей электронных систем.
 
key programming immo tools emergency start device программаторы ключа заводилки Кодграббер штатных охранных систем, toyota, lexus, subaru.

Вернуться   Изучение уязвимостей электронных систем > Программирование микроконтроллеров > ARM

Результаты опроса: Ну и как Вам HAL + MDK-Professional Middleware? Си визуальник
Просто А-ХУ-ЕТЬ !!! Бегу осваивать 17 56.67%
HAL хорошо, но почитать по нему нечего 6 20.00%
Хватит нам и StdPeriph ! а STM и ARM и ты - идиоты... 0 0%
Знать не хотим ибо только ASM !, только ДЖИХАД ! 7 23.33%
Голосовавшие: 30. Вы ещё не голосовали в этом опросе

Ответ
 
Опции темы
Старый 29.01.2015, 14:47   #1
AliStark
Модератор
 
Аватар для AliStark
 
Регистрация: 16.08.2014
Адрес: Красное море
Сообщений: 255
Поблагодарил: 23
Поблагодарили 139 раз в 93 сообщениях
AliStark имеет захватывающую ауруAliStark имеет захватывающую ауруAliStark имеет захватывающую ауру
По умолчанию Инициализация GPIO на HAL + Keil5 или Учебник по HAL ARM / STM32F4 HAL

Вот я и освоил модный HAL дровпакет!

Тот самый мега крутой, который упорно внедряет и ST и ARM Keil и др.

Да пора уже ! видимо разработчики наших ныне любимых камней не идиоты
что забросили StdPeriph и кричат - MIGRATE To Stm32Cube !!!


А к новому Keil5 без HAL дровпакета и подходить нечего! ибо
его главной супер-мега изюминой RTX RTOS (много потоковая писанина ака мультизадачка)
И еще более крученному пакету Midleware - визуальная настройка Kernel, цветной графики и сложно периферии типа USB OTG, FAT, NET и.т.п.
(вообще места идиота лентяя халявщика)
[Ссылки могут видеть только зарегистрированные пользователи. ]
- ОБАЛДЕЕТЕ !!! лично испытал !!!
цветная графика и работа с USB, причем в 3 потока
всго за 1 час !
Да чего говорить >




Ну да хватит пиара HAL
Короче что бы моя ебля не прошла даром - вот вам мой код
смачно снабженный ПОДРОБНЕЙШИМИ комментариями НА РУССКОМ +
Вполне может претендовать на серьезную статью

Смысл проги специально простейший - классический ногмырг
Важно что инициализация на HALе с НУЛЯ
-------------------------------------------------------------------------------------------------------------------------------
итак : код MAIN.C
main.c инициализация STM32F407 на HAL

=================================================== =======
================================================== ========
================================================== ========



/*-================================================== ===========================
* Name: My_MCU_Inint.c
* Autor: AliStark Phreaker.us всея Руси и Египта
* Rev.: 1.00
*----------------------------------------------------------------------------*/

#include "stm32f4xx_hal.h" //Подрубаем ету штуку, а она же в свою очередь подрубит ВЕСЬ HAL - дровпакет
//т.е. нам не нужно подрубать периф. библы по один штук как в StdPeriph, типа #include stm32f4xx_hal_gpio.c, типа еще что нить stm32f4xx_hal_usart.c и.т.д


//int32_t GPIO_Init(void) //Так правильней в HALе
void GPIO_Init(void) //Но есди лень - можно и так !
{
//Как водиться во всех ARMовских переферийных дровпакетах - порты инициализируються ПАЧКАМИ, по сходжими параметрами IN/OUT e.t.c.
GPIO_InitTypeDef My_LED_GPIO_Init; //Как и в StdPeriph выдумываем init структуру, для иниц какойто "пачки" портов одного типа, к примеру на выход.
//т.е. для разных "пачек" портов(ног) со сходными режимами - разные структуры My_GPIO_Init_2(будут для выхода) My_GPIO_Init_3 (для ADC) и.т.п.

//Первое, что нужно сделать - залезть в ф-цию работы с портами, ака stm32f4xx_hal_gpio.c и найти ### How to use this driver ###
//и первое что увидим - Enable the GPIO AHB clock using the following function: __GPIOx_CLK_ENABLE(). т.е. врубить тактирование такой то ф-цией. Врубаем

__GPIOD_CLK_ENABLE(); //Врубаем RCC на порту D, так сейчас инициализируем порт D, там у нас LEDы

//А дальше просто до усрачки !!! - вбиваем имя ВЫШЕ ПРИДУМАННОЙ инит структуры (My_LED_GPIO_Init) Ctrl+C, Ctrl+V и тупо давим "ТОЧКУ" "."
//В выпавшем списке давим на Mode - пояиться My_LED_GPIO_Init.Mode, после чего правой кнопкой на этой "Mode" > GoToDefinition, что бы посмотреть какие бывают режимы
//А если вдруг не отпарвит на нужное место, то хотя бы появиться в Sorce Browser-е , торкаем на Mode в бровсере и точно окажимся там где нужно - в stm32f4xx_hal_gpio.h

My_LED_GPIO_Init.Mode = GPIO_MODE_OUTPUT_PP; //Находим там (d stm32f4xx_hal_gpio.h) подходящий режим для Mode, для LEDов это будет GPIO_MODE_OUTPUT_PP
//и.т. далее столько скоько нужно типа подскальзнулся упал на нож и так 38 раз ))))

My_LED_GPIO_Init.Pull = GPIO_NOPULL;
My_LED_GPIO_Init.Pin = GPIO_PIN_12 | GPIO_PIN_13 | GPIO_PIN_14 | GPIO_PIN_15; //У нас же 4 LED-а, значит через лог запятЭ " | " Шоб не ебаться )
My_LED_GPIO_Init.Speed = GPIO_SPEED_LOW; //Скорость по меньше, че зря дрочить судьбу ?
// My_LED_GPIO_Init.Alternate //т.к. у нас обычный порт под ногдрыг, а не AF(типа USART/SPI и.т.д) то нах не нужен это параметр !

//Далее опять смотрим в stm32f4xx_hal_gpio.c ### How to use this driver ### и видим что осталась хуйня делов, а именно РВУБИТЬ всю щнягу
//Вот такой виагрой - HAL_GPIO_Init() Опять на нее правой кнокой мыши и Go To Defenition и смотрим как устроена
//Или проще ! > вбиваем HAL_GPIO_Init( (жмем скобку) и появитьс подсказка
HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init)
//вбиваем первый параметр, это # порта (PORTD), жмем " , " опять появиться памятка. Вбиваем след параметр, символ указателя на структуру "&"
//и наша ВЫШЕ ВЫДУМАННАЯ структура My_LED_GPIO_Init

HAL_GPIO_Init(GPIOD, &My_LED_GPIO_Init);

//Усе! Пиздец!!! сказал отец и дети положили ложки ))
//Осталось узнать как дрыгать или что вы там собрались творить с ногой. Опять же лезим в библу stm32f4xx_hal_gpio.c и читаем ### How to use this driver ###
//и видим HAL_GPIO_WritePin() / HAL_GPIO_TogglePin() / HAL_GPIO_ReadPin(). есть еще всякие прерывания типа HAL_NVIC_SetPriority() и HAL_NVIC_EnableIRQ()
//И емли есть в мозгах не полный порожняк - выбрать нужную не составит труда )) Read - читать из порта, WritePin ясен хуй писать в порт
//А если не вкуриваете английского языка, то советую поисдеть в тюрьме на Кипре как автор и 100% заговорите ))) потом займетесь Си


//Вот и вся иницаиализация, в нужном месте (в main.c ) дергаете эту ф-цию а потом уже манипуляции cо свеже инициализироваными портам.
}


int main(void)
{
while (1)
{
uint32_t i;

GPIO_Init(); //Вызываем вышесозданную ф-цию инициализации
// и дальше творим что хотим с благополочно настроеноыми ногами

//В к примеру включим две LED мырг
//Значит берем подходящуюю ф-цию и жмете скобку HAL_GPIO_WritePin( всплывт подсказка ИЛИ првой кнопкой GoToDefenition и смотрите как она устроена

HAL_GPIO_WritePin(GPIOD, GPIO_PIN_12 | GPIO_PIN_13, GPIO_PIN_SET); //т.е. SET будет как =1;
for (i=0;i<2000000;i++) {i++;}
HAL_GPIO_WritePin(GPIOD, GPIO_PIN_12 | GPIO_PIN_13, GPIO_PIN_RESET); //GPIO_PIN_RESET то же что = 0;
for (i=0;i<2000000;i++) {i++;}
}
}



=================================================== =======
================================================== ========
================================================== ========


И поверьте ! будет мыргать !!!
На любом ARM контроллере с подключенным HAL (я тестил на stm32f 407, 429, 401)


Вот еще вам скриншот к учебнику (в коментах) - как удобнее лазить по библам stm32f4xx_hal_gpio.h

================================================== ========

А фотка с ЖК - эт другая прога, но тоже на HAL библах !
там с Midleware да еще и с мультизадачкой Keil RTOS
см. [Ссылки могут видеть только зарегистрированные пользователи. ]
Миниатюры
IMG_20150127_091640.jpg   HAL_GPIO_Init, режимы GPIO.jpg   IMG_20150128_062525.jpg  
Вложения
Тип файла: zip main.zip (2.8 Кб, 75 просмотров)


Если вас провцируют на НЕ содержательный разговор, сообщениями
НЕ несущими смысловой нагрузки, КОРМЯ провокационной

- НЕ ОТВЕЧАЙТЕ !, пишите нам !
тыкнуть "БАН" проще чем чистить грязь !


Хочется срача ? / Инет принимаете за реальную жизнь ?
- соц сети ваш выбор !
AliStark вне форума   Ответить с цитированием
Старый 29.01.2015, 15:33   #2
AliStark
Модератор
 
Аватар для AliStark
 
Регистрация: 16.08.2014
Адрес: Красное море
Сообщений: 255
Поблагодарил: 23
Поблагодарили 139 раз в 93 сообщениях
AliStark имеет захватывающую ауруAliStark имеет захватывающую ауруAliStark имеет захватывающую ауру
По умолчанию

так же - если подрубать мой MAIN.C
то в меню Edit > Configuration > Encode in UTF-8 !!!
иначе будите видеть каракули
по дефолту в Keil 5 стоит не рус ANSI



Настоятельно рекомендую посмотреть видео по этой ссылке
я просто охуел >

[Ссылки могут видеть только зарегистрированные пользователи. ]


Но 5ка нужна с PRO лицензией
Лицензию можно активировать на 7 дней - халяву
Можно купить
А можно как и 99% в РФ - взломать
Да за такую сказку можно и купить ;

Хотя я на зло кондуктору решил купить за 2000$ ))
ну а как же проф. фрикерам ? ... пираткой чтоль пользоваться ?!
Пираткой пусть пользуются "честные" и "правильные"
А мы с h2 закон о копирайте уважаем!


Если вас провцируют на НЕ содержательный разговор, сообщениями
НЕ несущими смысловой нагрузки, КОРМЯ провокационной

- НЕ ОТВЕЧАЙТЕ !, пишите нам !
тыкнуть "БАН" проще чем чистить грязь !


Хочется срача ? / Инет принимаете за реальную жизнь ?
- соц сети ваш выбор !
AliStark вне форума   Ответить с цитированием
Старый 24.02.2015, 10:32   #3
nana007
случайно влез
 
Регистрация: 03.11.2014
Сообщений: 21
Поблагодарил: 7
Поблагодарили 6 раз в 3 сообщениях
nana007 стоит на развилке
По умолчанию

хочу научиться , всему этому , скажите , профессионалы с чего начать ?
nana007 вне форума   Ответить с цитированием
Старый 03.03.2015, 08:09   #4
AliStark
Модератор
 
Аватар для AliStark
 
Регистрация: 16.08.2014
Адрес: Красное море
Сообщений: 255
Поблагодарил: 23
Поблагодарили 139 раз в 93 сообщениях
AliStark имеет захватывающую ауруAliStark имеет захватывающую ауруAliStark имеет захватывающую ауру
По умолчанию

Лет 10 назад я бы посоветовал с AVR
Но поверь было ужасно =))

- Пайка программ торов научным тыком, (или покупка за 250$)
распайка микроконтроллера без понятия как куда и от куда
документации нет, почитать нечего, писать не на чем, один АСМ
а его попробуй освой, да и ничего на нем толком не на пишешь
- оооочень долгий был процесс

================================================== ===
В наше время все очень просто !
и советую начинать сразу именно с STM32 и Си ! (проще не несравненно мощнее с PIC/AVR и быстрее в плане освоения... )

Все го то нужно Купить отладочную плату stm32f4discovery !!!
На ней ЕСТЬ ВСЕ НЕОБХОДИМОЕ для старта !, софт лежит на сайте производителя.
и программатор и блок питания, и главное ХАЛЯВНЫЙ отладчик, он же дебагер
Для других типов микроконтроллеров PIC / AVR - это роскош !
И под нее, именно под плату на 407ом STM32 сейчас больше всего инфы
и в РУнете и в инте

Если есть деньги то возьми еще и stm32f429 discovery - она с цветным ЖК
и под нее заточен MDK Keil 5
На нем за пол дня можно написать приличный девайс с USB и графическим ЖК

Ну или совсем круто чтоб было и потом не докупать и вообще ближайший год не паять ни чего - закажи комплект Open-407 (тут есть пост)
Там сходу и видеокамеры столь нужные скиммеро - строителям
и сети и чип ключи и черт в ступе

Ну по порядку :
(видимо нужно сделать отдельный пост)
================================================== ======
1. Закажи дисковери плату
вот таким образом
яндекс > stm32f4discovery купить

Можно на [Ссылки могут видеть только зарегистрированные пользователи. ] но ждать месяц,
если не иметься (как мне к примеру) - возьми в [Ссылки могут видеть только зарегистрированные пользователи. ]
- привезут на крайний север прямо домой уже на второй день (я тут брал 4 штуки)

2. + USB провод ! как на многочисленных картинках про
дисковери (MiniUSB Type2, как зарядник для Алькателя и моторол)

3. Скачай среду для программирования и отладки.

Советую не юродствовать как не которые типа - "да я компилю в блокнотике" или "собираем свою IDE" а просто скачать лучшую среду тут
[Ссылки могут видеть только зарегистрированные пользователи. ]
- качай обе 4ую, поверх 5ую
с торента возьмешь крак
в поиске - "MDK 5 торрент arm"
или сразу [Ссылки могут видеть только зарегистрированные пользователи. ]

4. Воткни провод, поставь дрова с ST.COM
и залей любой пример
от сюда
[Ссылки могут видеть только зарегистрированные пользователи. ]

ну все PDFки от сюда
[Ссылки могут видеть только зарегистрированные пользователи. ]

5. Обязательно скачай ВИЗУАЛЬНЫЙ ГЕНЕРАТОР ПРОЕКТА

[Ссылки могут видеть только зарегистрированные пользователи. ]

пару кликом мышки, пару строчек на Си
и готово

Ээээх везет же вам !


===============================================
Ну и можешь начинать работать
научный тык + ютуб + книженка по Си + заходи по чаще,
интересуйся - подскажем !

На первых порах поможем онлайн

Пост с лучшими не наш взгляд сайтами, форумами, книгами, документациям
- сделаем в ближ время.


Если вас провцируют на НЕ содержательный разговор, сообщениями
НЕ несущими смысловой нагрузки, КОРМЯ провокационной

- НЕ ОТВЕЧАЙТЕ !, пишите нам !
тыкнуть "БАН" проще чем чистить грязь !


Хочется срача ? / Инет принимаете за реальную жизнь ?
- соц сети ваш выбор !
AliStark вне форума   Ответить с цитированием
Старый 27.11.2015, 14:00   #5
olega85
случайно влез
 
Регистрация: 13.06.2015
Сообщений: 33
Поблагодарил: 0
Поблагодарили 2 раз в 2 сообщениях
olega85 стоит на развилке
По умолчанию

5 кб кода чтоб отослать в уарт "Helo word".
olega85 вне форума   Ответить с цитированием
Старый 01.12.2015, 12:21   #6
AliStark
Модератор
 
Аватар для AliStark
 
Регистрация: 16.08.2014
Адрес: Красное море
Сообщений: 255
Поблагодарил: 23
Поблагодарили 139 раз в 93 сообщениях
AliStark имеет захватывающую ауруAliStark имеет захватывающую ауруAliStark имеет захватывающую ауру
По умолчанию

Да и так же 6 кб кода
что бы вывести цветную графику на LCD,.

Мозги авто контроллера 23кб, где
7 таймеров, под 40 GPIO, LCD с тачскрном
SPI, CAN, USB + самопальный 8 параллельный интерфейс.

Че арДУРинщик чтоль ? че тебе эти 6 кб то ?
тебе 1мб флэши и от 128 RAM мало ?

Можно отключить HAL, возможно станет чуть меньше, для простого кода,
сможешь написать велосипед оптимальней инженеров разрабатывавших сам камень ?


Если вас провцируют на НЕ содержательный разговор, сообщениями
НЕ несущими смысловой нагрузки, КОРМЯ провокационной

- НЕ ОТВЕЧАЙТЕ !, пишите нам !
тыкнуть "БАН" проще чем чистить грязь !


Хочется срача ? / Инет принимаете за реальную жизнь ?
- соц сети ваш выбор !
AliStark вне форума   Ответить с цитированием
Старый 01.12.2015, 21:02   #7
olega85
случайно влез
 
Регистрация: 13.06.2015
Сообщений: 33
Поблагодарил: 0
Поблагодарили 2 раз в 2 сообщениях
olega85 стоит на развилке
По умолчанию

Нет, просто на замену атмега 8 купил stm32f031 который типа как в 4 раза круче и охуел что замена произошла неудачно.
olega85 вне форума   Ответить с цитированием
Старый 07.12.2015, 05:32   #8
AliStark
Модератор
 
Аватар для AliStark
 
Регистрация: 16.08.2014
Адрес: Красное море
Сообщений: 255
Поблагодарил: 23
Поблагодарили 139 раз в 93 сообщениях
AliStark имеет захватывающую ауруAliStark имеет захватывающую ауруAliStark имеет захватывающую ауру
По умолчанию

На чем под avr писал ?
что за проблемам то ? в ARM слона и трудоемка только инициализация,
в остальном небо и земля.

А с STM так вообще проблемм не вижу
CubeMX мышкой поклацал, проект автоматом создал,
Вот перед тобой main
и твори что хошь!

Подробней трабл опиши.


Если вас провцируют на НЕ содержательный разговор, сообщениями
НЕ несущими смысловой нагрузки, КОРМЯ провокационной

- НЕ ОТВЕЧАЙТЕ !, пишите нам !
тыкнуть "БАН" проще чем чистить грязь !


Хочется срача ? / Инет принимаете за реальную жизнь ?
- соц сети ваш выбор !
AliStark вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
STM32F4 + LCD 16x2 SPL / HAL AliStark ARM 3 26.02.2016 23:55
ПИНПАД 4х4 STM32F4 HAL AliStark ARM 6 29.03.2015 19:24
ЭБУ на stm32f4 russian239 Программирование микроконтроллеров 2 03.03.2015 11:30
Инициализация GPIO в STM32F4xx авто подстановщиком значений MDK-Keil СКРИНШОТЫ ! AliStark ARM 1 21.01.2015 08:01
Где найти учебник? Nata Новички 5 18.12.2013 04:43


Текущее время: 06:06. Часовой пояс GMT +4.


Перевод: zCarot