|
проблемы с байтовым инструкциями, stm32f767 |
|
|
|
Feb 12 2017, 23:22
|

бессмертным стать можно тремя способами
    
Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912

|
Здравствуюйте. Начал осваивать F7 компилятор генерит код: Код NOP(); 08000684: nop 08000686: ldrb r5, [r6, #0] 08000688: orr.w r4, r5, #1 0800068c: strb r4, [r6, #0] 08000684: nop содержание регистров r4,r5,r6 Цитата r4 268436096 r5 640 r6 0x40026010 (Hex) байтовая инструкция ldrb r5, [r6, #0] вызывает вываливание в hard fault? в тоже время переписанный код который организован как чтение слова по томуже адресу не вызывает исключительной ситуации. чтение регистра DMA_CR. при этом же такое же байтовое чтение модификация записm проканывает с регистром RCC AHB1 так должно быть - неможеn он байтовый кусок вычитать из переферийного адреса?
|
|
|
|
|
 |
Ответов
|
Feb 13 2017, 22:02
|

бессмертным стать можно тремя способами
    
Группа: Свой
Сообщений: 1 405
Регистрация: 9-05-06
Из: Москва
Пользователь №: 16 912

|
Цитата(KRS @ Feb 13 2017, 20:20)  IAR - делает! но у него запись битовых полей в 32 разрядные регистры не приводит к байтовым операциям! ну я еще придумаю как это обустроить  зачем это надо? при расписывании полей можно указать тип этого поля и в перечислении все его допустимые значения. в таком виде при написании кода пропадает возможность наступить на мои любимые грабли - записать задефайненый бит одного похоженго регистра в другой похожий регистр или перепутать флаги ... в случае с битовыми полями компилятор обнаружит несоответствие типов и ругнется застатвив все сделать правильно. например теперь невозможно записать в поля номера канала регистра DMAx_STREAMy.channel канал которого нет - его не будет в перечислении велосипед вещь фундаментальная как инь и янь! подозреваю что велосипед это средство перемещения в будующее где у тебя уже будет опыт им не пользоватся
|
|
|
|
Сообщений в этой теме
klen проблемы с байтовым инструкциями Feb 12 2017, 23:22 Genadi Zawidowski заглянул в RM0410.PDF.
Регистра DMA_CR не нашел, н... Feb 13 2017, 00:02 klen Цитата(Genadi Zawidowski @ Feb 13 2017, 03... Feb 13 2017, 11:13  adnega Цитата(klen @ Feb 13 2017, 14:13) ну он д... Feb 13 2017, 13:02  ViKo Цитата(klen @ Feb 13 2017, 14:13) ... в м... Feb 13 2017, 13:15  SasaVitebsk Цитата(klen @ Feb 13 2017, 14:13) тема св... Feb 13 2017, 14:53   Alechek Цитата(SasaVitebsk @ Feb 13 2017, 19:53) ... Feb 13 2017, 15:34    SasaVitebsk Цитата(Alechek @ Feb 13 2017, 18:34) Рань... Feb 14 2017, 09:33  Forger Цитата(klen @ Feb 13 2017, 14:13) тема св... Feb 13 2017, 17:17  Forger Цитата(klen @ Feb 14 2017, 01:02) в случа... Feb 13 2017, 22:22   Kabdim Цитата(Forger @ Feb 14 2017, 01:22) едино... Feb 14 2017, 07:37    Forger Цитата(Kabdim @ Feb 14 2017, 10:37) Истин... Feb 14 2017, 07:43  Сергей Борщ QUOTE (klen @ Feb 14 2017, 00:02) наприме... Feb 14 2017, 06:58   AHTOXA Цитата(Сергей Борщ @ Feb 14 2017, 11:58) ... Feb 14 2017, 09:38   Сергей Борщ QUOTE (scifi @ Feb 14 2017, 09:08) Ну и д... Feb 14 2017, 08:00    scifi Цитата(Сергей Борщ @ Feb 14 2017, 11:00) ... Feb 14 2017, 09:34 Kabdim Не мог не продолжить . Feb 14 2017, 07:45 SasaVitebsk Вот хидер на 407 камень
вот первое попавшиеся ...
... Feb 14 2017, 09:40 Forger Цитата(SasaVitebsk @ Feb 14 2017, 12:40) ... Feb 14 2017, 09:45 Alechek Цитата(SasaVitebsk @ Feb 14 2017, 14:33) ... Feb 14 2017, 14:07  scifi Цитата(Alechek @ Feb 14 2017, 17:07) И гд... Feb 14 2017, 14:20   Alechek Цитата(scifi @ Feb 14 2017, 19:20) В инте... Feb 14 2017, 14:53    Forger Цитата(Alechek @ Feb 14 2017, 17:53) речь... Feb 14 2017, 15:06     Alechek Цитата(Forger @ Feb 14 2017, 20:06) Неуже... Feb 15 2017, 04:18      Forger Цитата(Alechek @ Feb 15 2017, 07:18) Прим... Feb 15 2017, 07:00       klen все коллеги были правы но меня не поняли. я чуть п... Feb 16 2017, 09:49        Obam Цитата(klen @ Feb 16 2017, 13:49) почему ... Feb 16 2017, 10:24 Сергей Борщ QUOTE (AHTOXA @ Feb 14 2017, 11:38) Напом... Feb 14 2017, 09:55
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|