Easyelectronics.ru

Электроника для всех
Текущее время: 23 окт 2019, 23:30

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



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

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

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


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

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


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

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

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


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

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

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


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

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


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

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


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

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


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

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


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

Зарегистрирован: 05 дек 2017, 18:17
Сообщения: 162
Добрый день.
Тоже пытаюсь запустить 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
Сообщения: 465
Я фигею, редакция!..... Неужели под STM32 нет ни одного человеческого примера с настройкой и работой SDRAM? Очередной раз убеждаюсь, что политика продвижения софта создателями STM ниже плинтуса. Им бы APPNOTE писать, а не кало-кубы в массы толкать ))) Пускай бирут пример с Analog Devices или Texas Instruments, там с аппнотами всё серьёзно. Хотя для простого смертного сейчас это всё обломилось из-за санкций.


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

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


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

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


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

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

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

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