- 
	
- Если уж говнокодить самому, то можно и свой startup изобразить. Чтобы не разбираться с чужим говнокодом. Вы будете смеяться, но это 100 строк или меньше. - SciFi(01.05.2016 12:29)
			
- Всё заработало. Было, как всегда, всё просто. По привычке в ИАРе проект для плюсов сварганил, ну и сишные и асмовые фиче не работали. Переставил крыжик в компилере на "Си" и всё поехало. Ладно, буду теперь думать как к плюсам прерывания прикрутить. - Звероящер(04.05.2016 13:54)
					
- Подброшу: VVB(6781 знак., 05.05.2016 12:29 - 15:26)
 - extern "C" {} - =AlexD=(04.05.2016 14:33)
							
- Обработчики прерываний должны быть членами класса... - Звероящер(04.05.2016 15:27)
									
- Статическими членами класса. Тогда указатели на них можно вставлять прямиком в таблицу векторов. - SciFi(04.05.2016 15:34)
											
- Cortex позволяет создавать альтернативные таблицы векторов. - misyachniy(04.05.2016 20:46)
 - Да. Всё верно. - Звероящер(04.05.2016 15:35)
													
- Сделай проще. В обработчики прерываний вставь простые Сишные ф-ии, которые уже пусть вызывают методы любых классов, хоть статические, хоть виртуальные, всё равно. - =AlexD=(04.05.2016 15:38)
															
- Он ведь взял на себя повышенное обязательство - писАть на Цэ++. Теперь голый си даже десятиместровой палкой трогать противно :-) - SciFi(04.05.2016 15:41)
																	
- Ну почему-же. Просто привык как-то так писать... Понятно всё и удобно.  Звероящер(6095 знак., 04.05.2016 15:57)
																			
- А каков сакральный смысл писать на си++, если  Oman(217 знак., 05.05.2016 09:18)
																					
- Cpp против макроса #define MY_UART(x) UART3##x - VL(05.05.2016 10:58, 
)
																							- Брюзжание: за дефиницию MY_ в определении макросов нужно заставлять зубной щеткой драить плац. - Скрипач(05.05.2016 11:01)
																									
- Полностью солидарен! В оригинале вместо MY название блока. - VL(05.05.2016 14:00, 
) - За слово "дефиниция" - пожизненный эцих с гвоздями. - SciFi(05.05.2016 11:05)
																											
- "раскрывающая содержание (смысл) имени посредством описания". Что смущает? - Скрипач(05.05.2016 11:09)
 
 
 - Полностью солидарен! В оригинале вместо MY название блока. - VL(05.05.2016 14:00, 
 
 - Брюзжание: за дефиницию MY_ в определении макросов нужно заставлять зубной щеткой драить плац. - Скрипач(05.05.2016 11:01)
																									
 
 - Cpp против макроса #define MY_UART(x) UART3##x - VL(05.05.2016 10:58, 
 
 - А каков сакральный смысл писать на си++, если  Oman(217 знак., 05.05.2016 09:18)
																					
 - А не надо голого Си, extern "C" {} обеспечит совместимость с АСМом статических функций. - =AlexD=(04.05.2016 15:44)
 
 - Ну почему-же. Просто привык как-то так писать... Понятно всё и удобно.  Звероящер(6095 знак., 04.05.2016 15:57)
																			
 
 - Он ведь взял на себя повышенное обязательство - писАть на Цэ++. Теперь голый си даже десятиместровой палкой трогать противно :-) - SciFi(04.05.2016 15:41)
																	
 
 - Сделай проще. В обработчики прерываний вставь простые Сишные ф-ии, которые уже пусть вызывают методы любых классов, хоть статические, хоть виртуальные, всё равно. - =AlexD=(04.05.2016 15:38)
															
 
 
 - Статическими членами класса. Тогда указатели на них можно вставлять прямиком в таблицу векторов. - SciFi(04.05.2016 15:34)
											
 
 - Обработчики прерываний должны быть членами класса... - Звероящер(04.05.2016 15:27)
									
 
 
 - Всё заработало. Было, как всегда, всё просто. По привычке в ИАРе проект для плюсов сварганил, ну и сишные и асмовые фиче не работали. Переставил крыжик в компилере на "Си" и всё поехало. Ладно, буду теперь думать как к плюсам прерывания прикрутить. - Звероящер(04.05.2016 13:54)
					
 - После такого вопроса возникает только один встречный - ты и**от или притворяешься? Куб тебе генерит полный проект - берешь оттуда что дано и пользуешься.  Hives(119 знак., 01.05.2016 05:58, 
)
			- Нахуй - это прямо и потом направо. Проследуйте, пожалуйста - Звероящер(01.05.2016 12:06)
					
- Похоже что не притворяешься... - Hives(01.05.2016 17:59, 
)
							- И тебе Аллах рад... - Звероящер(01.05.2016 19:03)
									
- Перевожу, что этот проходящий и мягко скажем не в меру воспитанный хотел сказать, для мелких проектов наверное ты прав, но где куча работы с периферией, стеками и остальной фигней и два пуда кода - зачем велосипед изобретать? Это типа микромягкая  Make_Pic(42 знак., 02.05.2016 12:58)
											
- Вот если честно, то ни разу не видел ни в одном проекте кучи работы с периферией. Весь говнокод сидит наверху и не знает вообще, чо такое периферия. И вот те типы, которые написали куб для СТМ, были такие же говнокодеры верхнего уровня, которые  Звероящер(25 знак., 03.05.2016 19:00)
													
- Но CMSIS придумывали не они, и там стартапы почему-то на асме. - Vit(03.05.2016 19:11, ссылка)
															
- Стартап для кортекс на асме - это трэш, угар и содомия. Всех расстрелять, адназначна. - SciFi(03.05.2016 19:47)
																	
- Вот нормальный стартап - Крок(04.05.2016 14:54, ссылка)
																			
- Как порой тяжело без бизнес-ангелов. Хотя бы одной дивизии... - Скрипач(04.05.2016 15:02)
 
 - Я для ARM7 писал на асме, и обработчик прерываний тоже. А он там, в отличии от жалких кортексов, достаточно замороченный. fk0(5638 знак., 03.05.2016 21:54)
 - :) - Vit(03.05.2016 21:37, youtube)
 - Сказал "А", говори "Б" и выкладывай правильный Стартап. - misyachniy(03.05.2016 19:50)
																			
- А мне не жалко:  SciFi(734 знак., 03.05.2016 20:02)
																					
- Ну и куда Reset_Handler из таблицы пропал? - misyachniy(03.05.2016 20:13)
																							
- Он в скрипте линкера. Как и адрес верхушки стека. SciFi(120 знак., 03.05.2016 20:15)
 
 
 - Ну и куда Reset_Handler из таблицы пропал? - misyachniy(03.05.2016 20:13)
																							
 
 - А мне не жалко:  SciFi(734 знак., 03.05.2016 20:02)
																					
 
 - Вот нормальный стартап - Крок(04.05.2016 14:54, ссылка)
																			
 
 - Стартап для кортекс на асме - это трэш, угар и содомия. Всех расстрелять, адназначна. - SciFi(03.05.2016 19:47)
																	
 
 - Но CMSIS придумывали не они, и там стартапы почему-то на асме. - Vit(03.05.2016 19:11, ссылка)
															
 
 - Вот если честно, то ни разу не видел ни в одном проекте кучи работы с периферией. Весь говнокод сидит наверху и не знает вообще, чо такое периферия. И вот те типы, которые написали куб для СТМ, были такие же говнокодеры верхнего уровня, которые  Звероящер(25 знак., 03.05.2016 19:00)
													
 
 - Перевожу, что этот проходящий и мягко скажем не в меру воспитанный хотел сказать, для мелких проектов наверное ты прав, но где куча работы с периферией, стеками и остальной фигней и два пуда кода - зачем велосипед изобретать? Это типа микромягкая  Make_Pic(42 знак., 02.05.2016 12:58)
											
 
 - И тебе Аллах рад... - Звероящер(01.05.2016 19:03)
									
 
 - Похоже что не притворяешься... - Hives(01.05.2016 17:59, 
 
 - Нахуй - это прямо и потом направо. Проследуйте, пожалуйста - Звероящер(01.05.2016 12:06)
					
 - наверно после __weak void SysTick_Handler( void ) { while (1) {} } надо добавить  Vit(97 знак., 01.05.2016 00:04)
			
- Не. { while (1) {} } -  заглушки, чтобы там залипать. - Звероящер(01.05.2016 00:20)
					
- __weak значит "слабый". функция, описанная таким способом, будет заменена другой с тем же именем, если она без атрибута __weak. - Vit(01.05.2016 00:33)
							
- Никакого эффекта вообще. Я уже что только не перепробовал. Самое смешное, если закоментить обработчик, то размер кода уменьшается на 4 байта. - Звероящер(01.05.2016 00:42)
									
- а чем родной стартап, который вроде как на асме, не угодил? - Vit(01.05.2016 00:44)
											
- А там интересное тоже происходит. Таблица векторов появляется, а вот обработчики - нет. Да и асм как-то некошерно. - Звероящер(01.05.2016 12:32)
													
- всё-таки extern объявлений функций быть не должно - Vit(01.05.2016 14:43, ссылка)
 - Я бы не стал сам писать на на асме, но готовым стартапом от ИАРа не брезгую. И типа всё работает. Только что проверил - когда пишешь свой SysTick_Handler, прерывание попадает в него, а если его закомментировать, но разрешить прерывание по SysTick,  йцукен(167 знак., 01.05.2016 14:16, 
) 
 
 - А там интересное тоже происходит. Таблица векторов появляется, а вот обработчики - нет. Да и асм как-то некошерно. - Звероящер(01.05.2016 12:32)
													
 
 - а чем родной стартап, который вроде как на асме, не угодил? - Vit(01.05.2016 00:44)
											
 
 - Никакого эффекта вообще. Я уже что только не перепробовал. Самое смешное, если закоментить обработчик, то размер кода уменьшается на 4 байта. - Звероящер(01.05.2016 00:42)
									
 
 - __weak значит "слабый". функция, описанная таким способом, будет заменена другой с тем же именем, если она без атрибута __weak. - Vit(01.05.2016 00:33)
							
 
 - Не. { while (1) {} } -  заглушки, чтобы там залипать. - Звероящер(01.05.2016 00:20)
					
 
 - Если уж говнокодить самому, то можно и свой startup изобразить. Чтобы не разбираться с чужим говнокодом. Вы будете смеяться, но это 100 строк или меньше. - SciFi(01.05.2016 12:29)