Например TDA7294

Форум РадиоКот • Просмотр темы - STM32 программирование FLASH
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Чт апр 18, 2024 12:08:18

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


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: STM32 программирование FLASH
СообщениеДобавлено: Вт авг 14, 2012 22:25:59 
Встал на лапы
Аватар пользователя

Зарегистрирован: Вт авг 03, 2010 15:21:20
Сообщений: 133
Откуда: Екатеринбург
Рейтинг сообщения: 0
пытаюсь записать данные во FLASH, зависает на ожидании завершения операции, с мануалом всё сходится
Код:
  if(FLASH->CR&FLASH_CR_LOCK)
  {
    FLASH->KEYR=FLASH_KEY1;
    FLASH->KEYR=FLASH_KEY2;//проверял, разблокируется успешно
  }
  FLASH->CR|= FLASH_CR_PG;
  *addr=(uint16_t)data;
  while(FLASH->SR&FLASH_SR_BSY);//вот здесь всё зависает
  FLASH->CR &= ~FLASH_CR_PG;
  FLASH->CR |= FLASH_CR_LOCK;

может кто знает, что не так?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 программирование FLASH
СообщениеДобавлено: Вт авг 14, 2012 22:28:49 
Собутыльник Кота
Аватар пользователя

Карма: -22
Рейтинг сообщений: -63
Зарегистрирован: Вт сен 14, 2010 10:27:19
Сообщений: 2584
Рейтинг сообщения: 0
А с примерами компилятора или к отладочным платам сходится? keil.com база знаний

_________________
Будете проходить мимо- проходите!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: STM32 программирование FLASH
СообщениеДобавлено: Вт авг 14, 2012 22:41:59 
Встал на лапы
Аватар пользователя

Зарегистрирован: Вт авг 03, 2010 15:21:20
Сообщений: 133
Откуда: Екатеринбург
Рейтинг сообщения: 0
почему-то не нашёл ни того, ни другого, в интернете всего одна статья про работу с FLASH, с ней код тоже сходится, попробовал использовать стандартные функции - то же самое
Код:
FLASH_Unlock();
FLASH_ProgramHalfWord(0x08004000, (uint16_t)0x1234);
FLASH_Lock();


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: STM32 программирование FLASH
СообщениеДобавлено: Ср авг 15, 2012 13:09:33 
Встал на лапы
Аватар пользователя

Зарегистрирован: Пт июн 26, 2009 06:40:07
Сообщений: 134
Рейтинг сообщения: 0
Держи, мож поможет :) Такая же была проблема :)
Код:
void save_param_to_flash(uint32_t first_address_page)
{
   //unlock flash
    FLASH->KEYR=0x45670123;
    FLASH->KEYR=0xCDEF89AB;
    //set programing bit
    FLASH->CR |= FLASH_CR_PG;

    //save time
    *((uint16_t*)first_address_page) = time;
    while((FLASH->SR & FLASH_SR_BSY) != 0){;}

    //save frequency
    *((uint16_t*)first_address_page+2) = frequency;
    while((FLASH->SR & FLASH_SR_BSY) != 0){;}

    //save time_on
    *((uint16_t*)first_address_page+4) = percent;
    while((FLASH->SR & FLASH_SR_BSY) != 0){;}

    //save mode
    *((uint16_t*)first_address_page+6) = mode;
    while((FLASH->SR & FLASH_SR_BSY) != 0){;}

    //save current
    *((uint16_t*)first_address_page+8) = current;

    FLASH->CR &= ~FLASH_CR_PG;

    //lock flash
    FLASH->CR |= FLASH_CR_LOCK;
}


Вернуться наверх
 
Организация питания на основе надежных литиевых аккумуляторов EVE и микросхем азиатского производства

Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: STM32 программирование FLASH
СообщениеДобавлено: Ср авг 15, 2012 13:46:10 
Встал на лапы
Аватар пользователя

Зарегистрирован: Вт авг 03, 2010 15:21:20
Сообщений: 133
Откуда: Екатеринбург
Рейтинг сообщения: 0
к сожалению всё сходится с моим кодом, а ещё выяснилась одна деталь, зависает оно на самой строке присвоения, типа этого
Код:
*((uint32_t*)0x08004000)=0x1234;

предварительное стирание страницы делать пытаюсь, оно проходит, но не помогает
причём зависает мк так, что и прерывания не работают


Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: STM32 программирование FLASH
СообщениеДобавлено: Чт авг 16, 2012 23:02:50 
Встал на лапы
Аватар пользователя

Зарегистрирован: Вт авг 03, 2010 15:21:20
Сообщений: 133
Откуда: Екатеринбург
Рейтинг сообщения: 0
тема закрыта, стандартные функции всё-таки заработали


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

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


Кто сейчас на форуме

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


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

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


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y