26.01.2013, 20:28
|
#11
|
Гражданин KAZUS.RU
Регистрация: 17.07.2006
Адрес: PV.DP.UA
Сообщений: 620
Сказал спасибо: 3
Сказали Спасибо 60 раз(а) в 48 сообщении(ях)
|
Re: Аномальное поведение переменной в Си (STM32F4)
Сообщение от Flopix
|
Не этот. Но этот тоже ковырял, он таже не работал. Хотя если заливал hex с того проекта все играло. Компилирую - зашиваю и критует. Видимо действительно ошибка в настройках размера и местоположения стэка.
|
Я тот запускал, там действительно нужно увеличить размер стека, у японца описано где и что нужно исправить, правда сложнее оказалось понять перевод, чем разобраться самому, по крайней мере со стеком.
Я к чему - может и здесь недоглядели, а то что то не верится мне, что в готовых отлаженных исходниках такой ляп происходит.
__________________
Если ты читаешь это - значит тебе нечем заняться...
|
|
|
|
26.01.2013, 20:30
|
#12
|
Гражданин KAZUS.RU
Регистрация: 31.12.2010
Сообщений: 837
Сказал спасибо: 371
Сказали Спасибо 153 раз(а) в 113 сообщении(ях)
|
Re: Аномальное поведение переменной в Си (STM32F4)
omercury, первая стока 23 элемента, вторая 14 как и объявлено. Или там какой то подвох?
PHP код:
|
typedef struct _SFBandTable { short l[23]; short s[14]; } SFBandTable;
const SFBandTable sfBandTable[3][3] = { { /* MPEG-1 (44, 48, 32 kHz) */ { { 0, 4, 8, 12, 16, 20, 24, 30, 36, 44, 52, 62, 74, 90,110,134,162,196,238,288,342,418,576 }, { 0, 4, 8, 12, 16, 22, 30, 40, 52, 66, 84,106,136,192 } }, { { 0, 4, 8, 12, 16, 20, 24, 30, 36, 42, 50, 60, 72, 88,106,128,156,190,230,276,330,384,576 }, { 0, 4, 8, 12, 16, 22, 28, 38, 50, 64, 80,100,126,192 } }, { { 0, 4, 8, 12, 16, 20, 24, 30, 36, 44, 54, 66, 82,102,126,156,194,240,296,364,448,550,576 }, { 0, 4, 8, 12, 16, 22, 30, 42, 58, 78,104,138,180,192 } } },
{ /* MPEG-2 (22, 24, 16 kHz) */ { { 0, 6, 12, 18, 24, 30, 36, 44, 54, 66, 80, 96,116,140,168,200,238,284,336,396,464,522,576 }, { 0, 4, 8, 12, 18, 24, 32, 42, 56, 74,100,132,174,192 } }, { { 0, 6, 12, 18, 24, 30, 36, 44, 54, 66, 80, 96,114,136,162,194,232,278,332,394,464,540,576 }, { 0, 4, 8, 12, 18, 26, 36, 48, 62, 80,104,136,180,192 } }, { { 0, 6, 12, 18, 24, 30, 36, 44, 54, 66, 80, 96,116,140,168,200,238,284,336,396,464,522,576 }, { 0, 4, 8, 12, 18, 26, 36, 48, 62, 80,104,134,174,192 } }, },
{ /* MPEG-2.5 (11, 12, 8 kHz) */ { { 0, 6, 12, 18, 24, 30, 36, 44, 54, 66, 80, 96,116,140,168,200,238,284,336,396,464,522,576 }, { 0, 4, 8, 12, 18, 26, 36, 48, 62, 80,104,134,174,192 } }, { { 0, 6, 12, 18, 24, 30, 36, 44, 54, 66, 80, 96,116,140,168,200,238,284,336,396,464,522,576 }, { 0, 4, 8, 12, 18, 26, 36, 48, 62, 80,104,134,174,192 } }, { { 0, 12, 24, 36, 48, 60, 72, 88,108,132,160,192,232,280,336,400,476,566,568,570 ,572,574,576 }, { 0, 8, 16, 24, 36, 52, 72, 96,124,160,162,164,166,192 } }, }, };
|
Последний раз редактировалось Flopix; 26.01.2013 в 20:33.
|
|
|
|
26.01.2013, 20:38
|
#13
|
Гражданин KAZUS.RU
Регистрация: 31.12.2010
Сообщений: 837
Сказал спасибо: 371
Сказали Спасибо 153 раз(а) в 113 сообщении(ях)
|
Re: Аномальное поведение переменной в Си (STM32F4)
Сообщение от vdlab
|
Я тот запускал, там действительно нужно увеличить размер стека, у японца описано где и что нужно исправить, правда сложнее оказалось понять перевод, чем разобраться самому, по крайней мере со стеком.
Я к чему - может и здесь недоглядели, а то что то не верится мне, что в готовых отлаженных исходниках такой ляп происходит.
|
Расскажите подробнее как правильно изменить настройки стека.
Я открыл startup_stm32f4xx.s и если смотреть через wizard то почему то доступно всего 2 настройки, и если их изменить то они не сохраняются. Видимо потому что этот файл лежит снаружи проекта в библиотеках stm32.
|
|
|
|
26.01.2013, 20:52
|
#14
|
Гражданин KAZUS.RU
Регистрация: 17.07.2006
Адрес: PV.DP.UA
Сообщений: 620
Сказал спасибо: 3
Сказали Спасибо 60 раз(а) в 48 сообщении(ях)
|
Re: Аномальное поведение переменной в Си (STM32F4)
Конечно настройки не сохранятся, у этого файла стоит атрибут "read only". Его нужно снять.
Кроме этого там нужно сделать еще несколько изменений:
в файле: ..\STM32F4-Discovery_FW_V1.1.0\Utilities\STM32F4-Discovery\stm32f4_discovery_audio_codec.c
заменить:
Код:
|
EVAL_AUDIO_TransferComplete_CallBack(pAddr, Size); |
на:
Код:
|
EVAL_AUDIO_TransferComplete_CallBack((uint32_t)pAd dr, Size); |
А так же в файле stm32f4_discovery_audio_codec.h в той же папке
закоментировать
Код:
|
#define AUDIO_MAL_MODE_NORMAL |
и раскоментировать
Код:
|
#define AUDIO_MAL_MODE_CIRCULAR
#define AUDIO_MAL_DMA_IT_HT_EN |
__________________
Если ты читаешь это - значит тебе нечем заняться...
|
|
|
|
26.01.2013, 21:10
|
#15
|
Почётный гражданин KAZUS.RU
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,497
Сказал спасибо: 30
Сказали Спасибо 3,072 раз(а) в 2,013 сообщении(ях)
|
Re: Аномальное поведение переменной в Си (STM32F4)
Сообщение от Flopix
|
omercury, первая стока 23 элемента, вторая 14 как и объявлено. Или там какой то подвох?
|
3х3(по 32 бита) = 36 байт.
23+14=37 байт.
На самом деле массив 3х3 структуры.
Сори, не доглядел.
|
|
|
|
26.01.2013, 21:39
|
#16
|
Гражданин KAZUS.RU
Регистрация: 31.12.2010
Сообщений: 837
Сказал спасибо: 371
Сказали Спасибо 153 раз(а) в 113 сообщении(ях)
|
Re: Аномальное поведение переменной в Си (STM32F4)
omercury, да не за что извинятся. Там так все запутано с этими объявлениями, что черт ногу сломит. Меня конкретно напрягают объявления одних и тех же переменных в разных файлах, и в основных и в заголовочных и как extern.
|
|
|
|
26.01.2013, 23:26
|
#17
|
Гражданин KAZUS.RU
Регистрация: 31.12.2010
Сообщений: 837
Сказал спасибо: 371
Сказали Спасибо 153 раз(а) в 113 сообщении(ях)
|
Re: Аномальное поведение переменной в Си (STM32F4)
vdlab, спасбо заработало. Мне хватило просто увеличить размер стека до 1000h.
Правда я сейчас использую код не того японца, а из другого проекта.
У японца там как то хитро реализована передача данных на внешний ЦАП. Да и набыдлокожено там у него.
|
|
|
|
18.09.2014, 10:06
|
#18
|
Прохожий
Регистрация: 01.04.2008
Сообщений: 1
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Аномальное поведение переменной в Си (STM32F4)
Flopix, можете поделиться исходниками?а то у японца что то запутано все.
|
|
|
|
18.09.2014, 11:43
|
#19
|
Гражданин KAZUS.RU
Регистрация: 31.12.2010
Сообщений: 837
Сказал спасибо: 371
Сказали Спасибо 153 раз(а) в 113 сообщении(ях)
|
Re: Аномальное поведение переменной в Си (STM32F4)
Держите. Только нужно корректно указать путь к стандартным библиотекам для STM32F4.
|
|
|
|
18.09.2014, 12:24
|
#20
|
Гражданин KAZUS.RU
Регистрация: 31.12.2010
Сообщений: 837
Сказал спасибо: 371
Сказали Спасибо 153 раз(а) в 113 сообщении(ях)
|
Re: Аномальное поведение переменной в Си (STM32F4)
Запутался уже в проектах. Держите пример 2.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 18:09.
|
|