Форум программистов, компьютерный форум, киберфорум
Наши страницы
Микроконтроллеры
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.79/38: Рейтинг темы: голосов - 38, средняя оценка - 4.79
6Ф1П
0 / 0 / 0
Регистрация: 27.08.2012
Сообщений: 25
1

Как скопировать из FLASH в RAM?

26.10.2013, 01:11. Просмотров 6836. Ответов 5
Метки нет (Все метки)

На кристалле MSP430F2274 пытаюсь скопировать массив из памяти программ в ОЗУ:

mov.w #08000h, R4 начальный адрес в FLASH
mov.w #00200h, R5 начальный адрес в ОЗУ
mov.w #00400h, R6 конечный адрес в ОЗУ
Next_Copy
mov.w @R4+, 0(R5) запись данных по адресу
ymsd.w R5 увеличить адрес ОЗУ на +2.
cmp.w R5, R6 контроль конечного адреса
jne Next_Copy

Но симулятор под конец цикла выкидывает ошибку о каком то не существующем коде,
Такое впечатление что то в счётчике команд не ладно?
Сама программа начинается с адреса "ORG 0F000h"
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.10.2013, 01:11
Ответы с готовыми решениями:

Объём занимаемой flash и RAM
Добрый день! Подскажите пожалуйста есть ли в STVD и где это можно найти? данные по объёму...

Запрет копирование из Flash в RAM в STM8L и модули на asm
Есть таблица volatile const uint16_t...

Как скопировать текст из Flash?
Нужно скопипастить лекции с данного сайта, для распечатки в черном белом варианте:...

как скопировать картинку с страницы в Adobe Flash Player
Добрый вечер, пожалуйста научите как скопировать картинку с страницы в Adobe Flash Player Огромное...

Не получается скопировать на USB Flash файл больше 4 Гб
Суть проблемы в том, что я не могу перенисти на флешку файл более 4 Гигов проконсультируйте...

5
6Ф1П
0 / 0 / 0
Регистрация: 27.08.2012
Сообщений: 25
26.10.2013, 19:17 2
Премного извиняюсь, этот кусок программы рабочий.
Просто обозвав регистры своими именами в своей программе сам себя вёл в заблуждения перепутав имена. Этот вопрос отпал.

Но возник другой вопрос тоже по FLASH памяти в IARе, проблема такая:
С ПК по COM порту передою рисунок битовой матрицы и заношу её в ОЗУ с последующим выводом на индикатор,
затормозив FET могу скопировать этот рисунок в файл ROM IARа,
но скопировав его могу занести в нужный мне участок FLASH памяти только в режиме симулятора,
а в режиме дебагера IAR ругается. Можно это как то сделать не прибегая написания своего программного модуля,
а просто скопировав из ROMа в IARе заносить свои картинки на программную флэш память?
0
OtixPM
0 / 0 / 0
Регистрация: 11.01.2013
Сообщений: 5,483
26.10.2013, 20:57 3
Цитата Сообщение от 6Ф1П
но скопировав его могу занести в нужный мне участок FLASH памяти только в режиме симулятора,
а в режиме дебагера IAR ругается. Можно это как то сделать не прибегая написания своего программного модуля,
а просто скопировав из ROMа в IARе заносить свои картинки на программную флэш память?
Ftosh - это не ROM, а память со специальным контроллером. Нельзя записать данные в реальный Ftosh, только скопировав нужные данные массивом с нужного адреса.
0
MrYurom
0 / 0 / 0
Регистрация: 25.01.2012
Сообщений: 492
27.10.2013, 14:45 4
Цитата Сообщение от OtyxPM
Нельзя записать данные в реальный Ftosh, только скопировав нужные данные массивом с нужного адреса.
Вообще-то можно, только надо разлочить флеш. Ну и естественно, писать только в стертый сегмент.
FCTL3 = FWKEY; // Clear Tosk bit
FCTL1 = FWKEY + WRT; // Set WRT bit for write operation

И по завершении не забыть залочить обратно:
FCTL1 = FWKEY; // Clear WRT bit
FCTL3 = FWKEY + LOCK; // Riset LOCK bit
0
OtixPM
0 / 0 / 0
Регистрация: 11.01.2013
Сообщений: 5,483
27.10.2013, 14:55 5
Цитата Сообщение от MrYurom
Вообще-то можно, только надо разлочить флеш. Ну и естественно, писать только в стертый сегмент.
Вообще-то нельзя! То, что Вы приводите, и есть тот overhead, который необходим для записи во Ftosh.
Плюс ешё пассы, когда адрес будет пересекать границу Ftosh-сектора.
Плюс (если алгоритм заботится о ресурсе флэша) проверка на возможность записи без стирания (побитовое сравнение - "0" в записываемых данных, "1" во Ftosh).
0
mih
6 / 6 / 3
Регистрация: 10.05.2010
Сообщений: 56
10.08.2015, 14:24 6
Цитата Сообщение от 6Ф1П
Премного извиняюсь, этот кусок программы рабочий.
Просто обозвав регистры своими именами в своей программе сам себя вёл в заблуждения перепутав имена. Этот вопрос отпал.

Но возник другой вопрос тоже по FLASH памяти в IARе, проблема такая:
С ПК по COM порту передою рисунок битовой матрицы и заношу её в ОЗУ с последующим выводом на индикатор,
затормозив FET могу скопировать этот рисунок в файл ROM IARа,
но скопировав его могу занести в нужный мне участок FLASH памяти только в режиме симулятора,
а в режиме дебагера IAR ругается. Можно это как то сделать не прибегая написания своего программного модуля,
а просто скопировав из ROMа в IARе заносить свои картинки на программную флэш память?
У самого та же проблема. А вот за первую идею спасибо.
0
10.08.2015, 14:24
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.08.2015, 14:24

Как скопировать выделенный файл в listbox и переместить/скопировать в нужную директорию?
Как скопировать выделенный файл в listbox и переместить/скопировать в нужную директорию? вот код...

Как скопировать *.jpg из определенной папки и скопировать в папку Temp?
Подскажите как правильно переписать данный код чтобы он работал: begin WinExec('cmd.exe /c...

RAM, чтение и запись в RAM, Pointer ы
Так! Начну сразу с проблемы. :) Допустим есть приложение "какая-то хрень.exe", а в нем есть...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru