Перейти к содержанию

    

Ekka

Участник
  • Публикаций

    170
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о Ekka

  • Звание
    Частый гость

Контакты

  • Сайт
    http://
  • ICQ
    0

Информация

  • Город
    Белгород

Посетители профиля

930 просмотров профиля
  1. Память_STM32F105

    Оу... вопрос снят. После тщательного изучения своего "недокода" нашлись мои баги. Спасибо.
  2. Память_STM32F105

    Тогда почему без оптимизации работало? Вот мои функции для работы с флеш-памятью. Направьте, если не правильно #include "FLASH.h" #include "stm32f1xx_hal.h" /* Разблокировка флеш-памяти */ volatile void FLASH_Unlock(void) { FLASH->KEYR = 0x45670123; FLASH->KEYR = 0xCDEF89AB; } volatile void FLASH_ClearPage(long long int adress) { while((FLASH->SR&FLASH_SR_BSY)); //ждем готовности FLASH->CR |= FLASH_CR_PER; //разрешаем стирание страницы FLASH->AR = adress; //устанавливаем страницу FLASH->CR |= FLASH_CR_STRT; //запуск стирания while((FLASH->SR&FLASH_SR_BSY)); //ждем готовности FLASH->CR &= ~FLASH_CR_PER; //очистка страницы } volatile void FLASH_Lock(void) { FLASH->CR |= FLASH_CR_LOCK; } volatile void FLASH_WriteData(long long int adress, int data) { FLASH->CR |= FLASH_CR_PG; //разрешить запись while((FLASH->SR&FLASH_SR_BSY)); *(__IO int16_t*)(adress) = (data); FLASH->CR &= ~FLASH_CR_PG; //записываем } //Перед тем, как использовать функцию, посмотри, отлочена ли память volatile int FLASH_ReadData(long long int adress) { //FLASH_Unlock(); int data=0; data= *(__IO int16_t*)(adress); //FLASH_Lock(); return data; } Ну или так: КАК МНЕ ПОНЯТЬ, где именно баг, если без оптимизатора работает? Что я могу делать не так?
  3. Память_STM32F105

    Привет всем, большое спасибо за ответы. Можно еще вопрос? После уровня оптимизации отвалилась запись во флеш-память. Почему так может быть? Оптимизатор выбросил какую-то функцию? С оптимизации сталкиваюсь впервые, поэтому такие вопросы... Как это можно поправить?
  4. Память_STM32F105

    СПАСИБО, оптимизация частично помогла, но чувствую, что-то поедет...
  5. Память_STM32F105

    Мне нужно еще добавить несколько массивов и некоторую обработку - и вот тогда мне не хватает.. HAL нельзя трогать, он мне нужен, катастрофически нужен
  6. Память_STM32F105

    Привет всем... У меня проект вместе с HAL получился громоздкий... ну в принципе он сам по себе объемный, в общем вышло 63250 байт, кто-нибудь может подсказать способы сокращения кода? Все, что можно было сократить - сокращено. Может, есть какое-то другое "волшебство"?
  7. Просто_Светодиод

    СПАСИБО большое всем) Дело было в моей невнимательности. Вывод PA5 отлично сработал, просто нужно было убрать совсем StructInit() и SystemInit() и все заработало. Эхх(... Можно закрыть топик
  8. Просто_Светодиод

    Спасибо большое) нашлись мои пины.... Правда, как-то непонятно написано. Сигнал D13, а вывод PA5 ИЛИ PB13( Но мои попытки подергать и тем и другим не увенчались успехом(
  9. Просто_Светодиод

    Не помогло(
  10. Просто_Светодиод

    Имею ввиду, которые в самой платке находятся. Плата NUCLEO-F103RB
  11. Просто_Светодиод

    Привет всем... Который час бьюсь головой об клавиатуру, МК STM32F103RBT6, среда CoIDE просто пытаюсь поморгать светодиодом на новом для меня МК. Вродь все правильно настраиваю. Итог ноль. Ничего не моргает. Лезу в даташит по этому МК - нифига не найду, на котором пине висят светодиоды (Если можно, ткните носом, где они) Ну или, пожалуйста, подскажите мне, ламеру, может, я что-то пропускаю???? Сразу скажу, что задержки поставлены наитупые для простоты. Знаю, что лучше таймерами. В отладке тоже делалось - ноль эффекта. И если можно, ткните, пожалуйста носом, где и в каком мануале пины смотреть. #include "stm32f10x.h" #include "stm32f10x_gpio.h" #include "stm32f10x_rcc.h" int main(void) { SystemInit(); GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz; GPIO_StructInit(&GPIO_InitStructure); GPIO_Init(GPIOC, &GPIO_InitStructure); GPIO_SetBits(GPIOC, GPIO_Pin_13); volatile int i = 0; while(1) { for(i=0; i< 10000; i++); GPIO_SetBits(GPIOC, GPIO_Pin_13); for(i=0; i< 10000; i++); GPIO_ResetBits(GPIOC, GPIO_Pin_13); } }
  12. SDRAM + stm32f429

    Ребята, спасибо всем, кто отвечал, нашлись мои ошибки. Вернее мои ошибки не относились прямо к коду... а скорее к путям указания нужных мне файлов. Но спасибо всем, кто отвечал на мои "вопрошания и причитания")) :a14:
  13. USB - Отключение питания

    То есть в идеале: я настраиваю Пин EN моей STMPS2141STR как OUT, и просто клацаю ее 0 и 1. Попробую перенести на другой вывод свой EN. СПАСИБО ЗА СОВЕТЫ!)))
  14. USB - Отключение питания

    И еще такой вопрос: как мне понять, откуда у меня вообще USB запитывается? Можно ведь как-то управлять ее питанием?
  15. USB - Отключение питания

    У меня вообще автоматически ее HAL настраивает как AF. Может, потому и EN не работает О_О