Портал для радиолюбителей и разработчиков электроники · с 2003 годаРеклама на сайте
Найти компонент, схему или даташит

Даташиты, справочник отечественных приборов, схемы с разбором и живой форум


 
Опции темы

Аномальное поведение переменной в Си (STM32F4)

Непрочитано 26.01.2013, 20:28  
vdlab
Гражданин KAZUS.RUN
 
Аватар для vdlab
 
Регистрация: 17.07.2006
Адрес: PV.DP.UA
Сообщений: 620
Сказал спасибо: 3
Сказали Спасибо 60 раз(а) в 48 сообщении(ях)
vdlab на пути к лучшему
По умолчанию Re: Аномальное поведение переменной в Си (STM32F4)

Сообщение от Flopix Посмотреть сообщение
Не этот. Но этот тоже ковырял, он таже не работал. Хотя если заливал hex с того проекта все играло. Компилирую - зашиваю и критует. Видимо действительно ошибка в настройках размера и местоположения стэка.
Я тот запускал, там действительно нужно увеличить размер стека, у японца описано где и что нужно исправить, правда сложнее оказалось понять перевод, чем разобраться самому, по крайней мере со стеком.

Я к чему - может и здесь недоглядели, а то что то не верится мне, что в готовых отлаженных исходниках такой ляп происходит.
Реклама:
__________________
Если ты читаешь это - значит тебе нечем заняться...
vdlab вне форума  
Непрочитано 26.01.2013, 20:30  
Flopix
Гражданин KAZUS.RUN
 
Регистрация: 31.12.2010
Сообщений: 837
Сказал спасибо: 371
Сказали Спасибо 153 раз(а) в 113 сообщении(ях)
Flopix на пути к лучшему
По умолчанию 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.
Flopix вне форума  
Непрочитано 26.01.2013, 20:38  
Flopix
Гражданин KAZUS.RUN
 
Регистрация: 31.12.2010
Сообщений: 837
Сказал спасибо: 371
Сказали Спасибо 153 раз(а) в 113 сообщении(ях)
Flopix на пути к лучшему
По умолчанию Re: Аномальное поведение переменной в Си (STM32F4)

Сообщение от vdlab Посмотреть сообщение
Я тот запускал, там действительно нужно увеличить размер стека, у японца описано где и что нужно исправить, правда сложнее оказалось понять перевод, чем разобраться самому, по крайней мере со стеком.

Я к чему - может и здесь недоглядели, а то что то не верится мне, что в готовых отлаженных исходниках такой ляп происходит.
Расскажите подробнее как правильно изменить настройки стека.

Я открыл startup_stm32f4xx.s и если смотреть через wizard то почему то доступно всего 2 настройки, и если их изменить то они не сохраняются. Видимо потому что этот файл лежит снаружи проекта в библиотеках stm32.
Миниатюры:
Нажмите на изображение для увеличения
Название: mp3.png
Просмотров: 58
Размер:	59.0 Кб
ID:	42768  
Flopix вне форума  
Непрочитано 26.01.2013, 20:52  
vdlab
Гражданин KAZUS.RUN
 
Аватар для vdlab
 
Регистрация: 17.07.2006
Адрес: PV.DP.UA
Сообщений: 620
Сказал спасибо: 3
Сказали Спасибо 60 раз(а) в 48 сообщении(ях)
vdlab на пути к лучшему
По умолчанию 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
__________________
Если ты читаешь это - значит тебе нечем заняться...
vdlab вне форума  
Сказали "Спасибо" vdlab
Flopix (26.01.2013)
Непрочитано 26.01.2013, 21:10  
omercury
Почётный гражданин KAZUS.RUN
 
Аватар для omercury
 
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,487
Сказал спасибо: 30
Сказали Спасибо 3,070 раз(а) в 2,011 сообщении(ях)
omercury на пути к лучшему
По умолчанию Re: Аномальное поведение переменной в Си (STM32F4)

Сообщение от Flopix Посмотреть сообщение
omercury, первая стока 23 элемента, вторая 14 как и объявлено. Или там какой то подвох?
3х3(по 32 бита) = 36 байт.
23+14=37 байт.
На самом деле массив 3х3 структуры.
Сори, не доглядел.
omercury вне форума  
Непрочитано 26.01.2013, 21:39  
Flopix
Гражданин KAZUS.RUN
 
Регистрация: 31.12.2010
Сообщений: 837
Сказал спасибо: 371
Сказали Спасибо 153 раз(а) в 113 сообщении(ях)
Flopix на пути к лучшему
По умолчанию Re: Аномальное поведение переменной в Си (STM32F4)

omercury, да не за что извинятся. Там так все запутано с этими объявлениями, что черт ногу сломит. Меня конкретно напрягают объявления одних и тех же переменных в разных файлах, и в основных и в заголовочных и как extern.
Flopix вне форума  
Непрочитано 26.01.2013, 23:26  
Flopix
Гражданин KAZUS.RUN
 
Регистрация: 31.12.2010
Сообщений: 837
Сказал спасибо: 371
Сказали Спасибо 153 раз(а) в 113 сообщении(ях)
Flopix на пути к лучшему
По умолчанию Re: Аномальное поведение переменной в Си (STM32F4)

vdlab, спасбо заработало. Мне хватило просто увеличить размер стека до 1000h.
Правда я сейчас использую код не того японца, а из другого проекта.
У японца там как то хитро реализована передача данных на внешний ЦАП. Да и набыдлокожено там у него.
Flopix вне форума  
Непрочитано 18.09.2014, 10:06  
FASAD5665547485
Прохожий
 
Регистрация: 01.04.2008
Сообщений: 1
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
FASAD5665547485 на пути к лучшему
По умолчанию Re: Аномальное поведение переменной в Си (STM32F4)

Flopix, можете поделиться исходниками?а то у японца что то запутано все.
FASAD5665547485 вне форума  
Непрочитано 18.09.2014, 11:43  
Flopix
Гражданин KAZUS.RUN
 
Регистрация: 31.12.2010
Сообщений: 837
Сказал спасибо: 371
Сказали Спасибо 153 раз(а) в 113 сообщении(ях)
Flopix на пути к лучшему
По умолчанию Re: Аномальное поведение переменной в Си (STM32F4)

Держите. Только нужно корректно указать путь к стандартным библиотекам для STM32F4.
Вложения:
Тип файла: zip mp3sample20120318.zip (494.8 Кб, 30 просмотров)
Flopix вне форума  
Непрочитано 18.09.2014, 12:24  
Flopix
Гражданин KAZUS.RUN
 
Регистрация: 31.12.2010
Сообщений: 837
Сказал спасибо: 371
Сказали Спасибо 153 раз(а) в 113 сообщении(ях)
Flopix на пути к лучшему
По умолчанию Re: Аномальное поведение переменной в Си (STM32F4)

Запутался уже в проектах. Держите пример 2.
Вложения:
Тип файла: zip STM32F4_USB_MP3.zip (810.5 Кб, 46 просмотров)
Flopix вне форума  
 
Опции темы

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

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

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запуск ucLinux на STM32F4 k000858 Микроконтроллеры, АЦП, память и т.д 10 09.12.2013 14:51
Не стартует stm32f4 STM32F4 Песочница (вопросы новичков) 2 04.12.2012 22:46
Странное поведение щетки nikbob22 Электроника средств транспорта 52 18.11.2012 17:00
stm32f4, asm с чего начать? sosedi ARM 44 14.11.2012 16:52
ШИМ в STM32F4 sosedi Микроконтроллеры, АЦП, память и т.д 5 15.08.2012 12:20


Часовой пояс GMT +4, время: 13:25.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.