Easyelectronics.ru

Электроника для всех
Текущее время: 26 май 2020, 18:39

Часовой пояс: UTC + 5 часов



JLCPCB – Прототипы печатных плат за $2/10pcs (Любой цвет!)
Крупнейший производитель печатных плат и прототипов. Более 600000 клиентов и свыше 10000 заказов в день!
Получите скидку на почтовую отправку при первом заказе в JLCPCB!

Начать новую тему Ответить на тему  [ Сообщений: 61 ]  На страницу Пред.  1, 2, 3
Автор Сообщение
 Заголовок сообщения: Re: И снова STM32 + SDRAM
СообщениеДобавлено: 17 сен 2019, 20:10 
Старожил

Зарегистрирован: 11 сен 2012, 11:19
Сообщения: 5866
Таки и не запустил?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: И снова STM32 + SDRAM
СообщениеДобавлено: 17 сен 2019, 20:13 
Заглядывает иногда

Зарегистрирован: 14 апр 2014, 11:41
Сообщения: 116
Откуда: Минск Беларусь
dosikus_2 писал(а):
Таки и не запустил?
Я взял ваш проект и причесал его. Он работает. Все остальные попытки запустить память провалились.... Даже тупо чистый проект, с вашей инициализацией тактирования, не работал. Даже проект созданный кубом не работал...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: И снова STM32 + SDRAM
СообщениеДобавлено: 17 сен 2019, 20:40 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 1434
dosikus_2, признавайся, на что проект заговаривал? :D

Вообще, инициализация SDRAM своего рода экзамен эмбеддера на зрелость. Тут тебе и умение читать документацию, и владение языком программирование, чтобы процессор делал ровно то что требуется в данный момент. Ну и знание всяких архитектурных особенностей системы - кэши, mmu если есть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: И снова STM32 + SDRAM
СообщениеДобавлено: 17 сен 2019, 22:12 
Старожил

Зарегистрирован: 11 сен 2012, 11:19
Сообщения: 5866
Святым админским бубном и окроплял слезами девствениц эмбедерш...

Да блин, там обычный систем_инит сгенеренный тулзой. Смотри может HSE неверно прописан...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: И снова STM32 + SDRAM
СообщениеДобавлено: 18 сен 2019, 00:01 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 1434
Да мне не надо, я свой первый SDRAM в 2005 году инициализировал, как сейчас помню :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: И снова STM32 + SDRAM
СообщениеДобавлено: 18 сен 2019, 00:28 
Старожил

Зарегистрирован: 11 сен 2012, 11:19
Сообщения: 5866
Дык я и не тебе вторую часть писал. :)
Знаю что сам все можешь...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: И снова STM32 + SDRAM
СообщениеДобавлено: 18 сен 2019, 00:54 
Заглядывает иногда

Зарегистрирован: 14 апр 2014, 11:41
Сообщения: 116
Откуда: Минск Беларусь
Цитата:
Вообще, инициализация SDRAM своего рода экзамен эмбеддера на зрелость. Тут тебе и умение читать документацию, и владение языком программирование, чтобы процессор делал ровно то что требуется в данный момент. Ну и знание всяких архитектурных особенностей системы - кэши, mmu если есть.
Ну не все же такие сильные и умные, как вы. Форум ведь для того и нужен, чтобы слабые становились сильными. Вспомните себя, когда только начинали программировать мк.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: И снова STM32 + SDRAM
СообщениеДобавлено: 18 сен 2019, 01:10 
Старожил
Аватара пользователя

Зарегистрирован: 13 янв 2018, 21:36
Сообщения: 1434
Да я только за!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: И снова STM32 + SDRAM
СообщениеДобавлено: 16 окт 2019, 17:52 
Старожил

Зарегистрирован: 05 дек 2017, 18:17
Сообщения: 225
Добрый день.
Тоже пытаюсь запустить SDRAM, подниму тему.
F767, память IS42S16160J-6TLI

Show нудные ненужные подробности :)


Вообщем к сути проблемы. Пишу в память так:
Код:
  p=(uint16_t *)SDRAM_DEVICE_ADDR; 
  while (p < (uint16_t *)(SDRAM_DEVICE_SIZE+SDRAM_DEVICE_ADDR)){
    *p=0xFFFF;
    p++;
  }
};

В отладчике открыл память с адреса SDRAM_DEVICE_ADDR (0xD0000000) и наблюдаю за содержимым.
Я думаю чуть нагляднее будет, если смотреть на асемблерный листинг. Вот весь цикл:
Код:
08000788   LDR          R3, =p           
0800078A   MOV.W        R2, #0xD0000000
0800078E   STR          R2, [R3]
p=0xFFFF;
08000790   B            0x080007A6
++;
08000792   LDR          R3, =p           
08000794   LDR          R3, [R3]
08000796   MOVW         R2, #0xFFFF
0800079A   STRH         R2, [R3]

0800079C   LDR          R3, =p           
0800079E   LDR          R3, [R3]
080007A0   ADDS         R3, #2
080007A2   LDR          R2, =p           
080007A4   STR          R3, [R2]
p=0xFFFF;
080007A6   LDR          R3, =p           
080007A8   LDR          R3, [R3]
080007AA   CMN          R3, #0x2F800000
080007AE   BCC          0x08000792


Собственно запись в память происходит по адресу 0800079A инструкцией "STRH R2, [R3]".
При выполнении инструкции по адресу в регистре R3 пишется значение из регистра R2.
В окне отображения памяти я это вижу. Скажем для первого захода, по адресу 0xD0000000 устанавливается 0xFFFF
Шагаю в отладчике дальше (по асемблерному листингу). Как только делаю следующий шаг, значение в памяти меняется на 0xFFFE, т.е. последний бит сбрасывается.
Шагаю дальше по циклу, значение также сохраняется 0xFFFE.
На втором заходе "STRH R2, [R3]" пишет 0xFFFF по адресу 0xD0000002. При выполнении инструкции в 0xD0000002 устанавливается 0xFFFF и по адресу 0xD0000000 опять становится 0xFFFF. Следующий шаг в отладчике - уже оба записанных значения становятся 0xFFFE.
В момент записи третьего значения - все три становятся 0xFFFF, а на следующем шаге все становятся 0xFFFE. Ну и так далее.
Если не шагать по циклу, а выполнить его целиком, то на выходе из него вся память заполнена 0xFFFE.

Частоту МК ставлю 180Мгц, как у F429, делитель FMC /3, т.е. частота тактирования памяти 60Мгц.

Выглядит мой вопрос конечно как "аборт по телефону", но возможно по симптомам можно предположить, где проблема?
Даташит на память и на FMC читаю, но пока просветления не достиг.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: И снова STM32 + SDRAM
СообщениеДобавлено: 16 окт 2019, 17:59 
Старожил
Аватара пользователя

Зарегистрирован: 12 июн 2018, 15:04
Сообщения: 655
Я фигею, редакция!..... Неужели под STM32 нет ни одного человеческого примера с настройкой и работой SDRAM? Очередной раз убеждаюсь, что политика продвижения софта создателями STM ниже плинтуса. Им бы APPNOTE писать, а не кало-кубы в массы толкать ))) Пускай бирут пример с Analog Devices или Texas Instruments, там с аппнотами всё серьёзно. Хотя для простого смертного сейчас это всё обломилось из-за санкций.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: И снова STM32 + SDRAM
СообщениеДобавлено: 16 окт 2019, 18:40 
Старожил

Зарегистрирован: 05 дек 2017, 18:17
Сообщения: 225
Да STM тут особо не причем. Они в реф. мане все описали, профессионалам этого достаточно. А мне, как любителю, не хватает знаний.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 61 ]  На страницу Пред.  1, 2, 3


Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: cheblin, dosikus_2, emax, FuIcrum, Kelvin, Maik


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

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB