STM32F030K6 настройка программы

Кто любит RISC в жизни, заходим, не стесняемся.
service47
Прорезались зубы
Сообщения: 219
Зарегистрирован: Вт мар 12, 2013 16:05:45

Re: STM32F030K6 настройка программы

Сообщение service47 »

Теперь микроконтроллер не входит в stop mode через WFE или входит, но сразу перезапускаеться через NVIC_SystemReset();, видимо из-за прерываний от TIM3 и SysTick.
Реклама
pixar
Потрогал лапой паяльник
Сообщения: 314
Зарегистрирован: Чт ноя 29, 2012 08:27:22

Re: STM32F030K6 настройка программы

Сообщение pixar »

Так нужно всю периферию выключать перед стопом. Вы ток на остановке меряли? Я как то пробовал делать спящий режим - тока в 1 мка так и не добился. Переделал железо под oтключение батареи по timeout.
Реклама
service47
Прорезались зубы
Сообщения: 219
Зарегистрирован: Вт мар 12, 2013 16:05:45

Re: STM32F030K6 настройка программы

Сообщение service47 »

Вообщем теперь все это дело придеться делать на STM8L051F3, в IAR 7.20 его в меню опции нет, есть ли какие нибудь стандартные библиотеки для него и сниппеты?
a5021
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

Re: STM32F030K6 настройка программы

Сообщение a5021 »

А откуда бы взяться STM8 в среде разработки для ARM ? Берите IAR для STM8, там все и найдете.
Реклама
Эиком - электронные компоненты и радиодетали
service47
Прорезались зубы
Сообщения: 219
Зарегистрирован: Вт мар 12, 2013 16:05:45

Re: STM32F030K6 настройка программы

Сообщение service47 »

Теперь в IAR для STM8 в программе много ерроров.
#include "iostm8l051f3.h" прописан. Какие еще файлы необходимо добавить?
Спойлер

Код: Выделить всё

Building configuration: 1 - Debug 
Updating build tree... 
 
2  file(s) deleted. 
Updating build tree... 
main.c  
Error[Pe020]: identifier "uint16_t" is undefined D:\main.c 7 
Error[Pe020]: identifier "TIM14" is undefined D:\main.c 9 
Error[Pe020]: identifier "TIM_EGR_UG" is undefined D:\main.c 11 
Error[Pe020]: identifier "TIM_CR1_CEN" is undefined D:\main.c 12 
Error[Pe020]: identifier "TIM_CR1_OPM" is undefined D:\main.c 12 
Error[Pe020]: identifier "uint16_t" is undefined D:\main.c 15 
Error[Pe020]: identifier "TIM14" is undefined D:\main.c 17 
Error[Pe020]: identifier "TIM_EGR_UG" is undefined D:\main.c 19 
Error[Pe020]: identifier "TIM_CR1_CEN" is undefined D:\main.c 20 
Error[Pe020]: identifier "TIM_CR1_OPM" is undefined D:\main.c 20 
Error[Pe020]: identifier "uint16_t" is undefined D:\main.c 101 
Error[Pe020]: identifier "__IO" is undefined D:\main.c 104 
Error[Pe065]: expected a ";" D:\main.c 104 
Error[Pe020]: identifier "__IO" is undefined D:\main.c 105 
Error[Pe018]: expected a ")" D:\main.c 105 
Error[Pe020]: identifier "TimingDelay" is undefined D:\main.c 107 
Error[Pe020]: identifier "nTime" is undefined D:\main.c 107 
Error[Pe020]: identifier "GPIO_InitTypeDef" is undefined D:\main.c 119 
Error[Pe020]: identifier "EXTI_InitTypeDef" is undefined D:\main.c 120 
Error[Pe020]: identifier "NVIC_InitTypeDef" is undefined D:\main.c 121 
Warning[Pe223]: function "RCC_AHBPeriphClockCmd" declared implicitly D:\main.c 124 
Error[Pe020]: identifier "RCC_AHBPeriph_GPIOA" is undefined D:\main.c 124 
Error[Pe020]: identifier "ENABLE" is undefined D:\main.c 124 
Warning[Pe223]: function "RCC_APB2PeriphClockCmd" declared implicitly D:\main.c 126 
Error[Pe020]: identifier "RCC_APB2Periph_SYSCFG" is undefined D:\main.c 126 
Error[Pe020]: identifier "GPIO_Mode_AF" is undefined D:\main.c 129 
Error[Pe020]: identifier "GPIO_OType_PP" is undefined D:\main.c 130 
Error[Pe020]: identifier "GPIO_Pin_0" is undefined D:\main.c 131 
Error[Pe020]: identifier "GPIO_PuPd_UP" is undefined D:\main.c 132 
Error[Pe020]: identifier "GPIO_Speed_50MHz" is undefined D:\main.c 133 
Warning[Pe223]: function "GPIO_Init" declared implicitly D:\main.c 134 
Error[Pe020]: identifier "GPIOA" is undefined D:\main.c 134 
Warning[Pe223]: function "SYSCFG_EXTILineConfig" declared implicitly D:\main.c 137 
Error[Pe020]: identifier "EXTI_PortSourceGPIOA" is undefined D:\main.c 137 
Error[Pe020]: identifier "EXTI_PinSource0" is undefined D:\main.c 137 
Warning[Pe223]: function "EXTI_ClearITPendingBit" declared implicitly D:\main.c 138 
Error[Pe020]: identifier "EXTI_Line0" is undefined D:\main.c 138 
Error[Pe020]: identifier "EXTI_Line1" is undefined D:\main.c 138 
Error[Pe020]: identifier "EXTI_Line2" is undefined D:\main.c 138 
Error[Pe020]: identifier "EXTI_Line3" is undefined D:\main.c 138 
Error[Pe020]: identifier "EXTI_Line4" is undefined D:\main.c 138 
Error[Pe020]: identifier "EXTI_Line5" is undefined D:\main.c 139 
Error[Pe020]: identifier "EXTI_Line6" is undefined D:\main.c 139 
Error[Pe020]: identifier "EXTI_Line7" is undefined D:\main.c 139 
Error[Pe020]: identifier "EXTI_Line8" is undefined D:\main.c 139 
Error[Pe020]: identifier "EXTI_Line9" is undefined D:\main.c 140 
Error[Pe020]: identifier "EXTI_Line10" is undefined D:\main.c 140 
Error[Pe020]: identifier "EXTI_Line11" is undefined D:\main.c 140 
Error[Pe020]: identifier "EXTI_Line12" is undefined D:\main.c 140 
Error[Pe020]: identifier "EXTI_Line13" is undefined D:\main.c 141 
Error[Pe020]: identifier "EXTI_Line14" is undefined D:\main.c 141 
Error[Pe020]: identifier "EXTI_Line15" is undefined D:\main.c 141 
Error[Pe020]: identifier "EXTI_Line16" is undefined D:\main.c 141 
Error[Pe020]: identifier "EXTI_Line17" is undefined D:\main.c 142 
Error[Pe020]: identifier "EXTI_Line18" is undefined D:\main.c 142 
Error[Pe020]: identifier "EXTI_Line19" is undefined D:\main.c 142 
Error[Pe020]: identifier "EXTI_Line20" is undefined D:\main.c 142 
Error[Pe020]: identifier "EXTI_Line21" is undefined D:\main.c 143 
Error[Pe020]: identifier "EXTI_Line22" is undefined D:\main.c 143 
Error[Pe020]: identifier "EXTI_Line23" is undefined D:\main.c 143 
Error[Pe020]: identifier "EXTI_Line25" is undefined D:\main.c 143 
Error[Pe020]: identifier "EXTI_Line26" is undefined D:\main.c 144 
Error[Pe020]: identifier "EXTI_Line27" is undefined D:\main.c 144 
Error[Pe020]: identifier "EXTI_Line31" is undefined D:\main.c 144 
Error[Pe020]: identifier "EXTI_Mode_Interrupt" is undefined D:\main.c 150 
Error[Pe020]: identifier "EXTI_Trigger_Rising" is undefined D:\main.c 152 
Warning[Pe223]: function "EXTI_Init" declared implicitly D:\main.c 154 
Error[Pe020]: identifier "EXTI" is undefined D:\main.c 157 
Error[Pe020]: identifier "EXTI_IMR_MR0" is undefined D:\main.c 157 
Error[Pe020]: identifier "EXTI0_1_IRQn" is undefined D:\main.c 161 
Warning[Pe223]: function "NVIC_Init" declared implicitly D:\main.c 169 
Warning[Pe223]: function "NVIC_EnableIRQ" declared implicitly D:\main.c 170 
Warning[Pe223]: function "NVIC_SetPriority" declared implicitly D:\main.c 171 
Warning[Pe223]: function "GPIO_ResetBits" declared implicitly D:\main.c 180 
Error[Pe020]: identifier "GPIOF" is undefined D:\main.c 180 
Error[Pe020]: identifier "GPIO_Pin_1" is undefined D:\main.c 180 
Error[Pe020]: identifier "GPIOA" is undefined D:\main.c 181 
Error[Pe020]: identifier "GPIO_Pin_9" is undefined D:\main.c 181 
Warning[Pe223]: function "GPIO_SetBits" declared implicitly D:\main.c 182 
Error[Pe020]: identifier "GPIO_Pin_14" is undefined D:\main.c 182 
Error[Pe020]: identifier "GPIO_Pin_0" is undefined D:\main.c 183 
Error[Pe020]: identifier "GPIO_Pin_3" is undefined D:\main.c 184 
Error[Pe020]: identifier "GPIOB" is undefined D:\main.c 185 
Error[Pe020]: identifier "GPIO_Pin_10" is undefined D:\main.c 186 
Error[Pe020]: identifier "GPIO_Pin_13" is undefined D:\main.c 187 
Warning[Pe223]: function "EXTI_ClearFlag" declared implicitly D:\main.c 188 
Error[Pe020]: identifier "EXTI_Line13" is undefined D:\main.c 188 
Warning[Pe223]: function "EXTI_GetITStatus" declared implicitly D:\main.c 190 
Error[Pe020]: identifier "EXTI_Line0" is undefined D:\main.c 190 
Error[Pe020]: identifier "RESET" is undefined D:\main.c 190 
Warning[Pe223]: function "EXTI_ClearITPendingBit" declared implicitly D:\main.c 193 
Error[Pe020]: identifier "TIM3" is undefined D:\main.c 200 
Error[Pe020]: identifier "uint16_t" is undefined D:\main.c 201 
Warning[Pe177]: variable "k" was declared but never referenced D:\main.c 204 
Warning[Pe550]: variable "d" was set but never used D:\main.c 204 
Error[Pe020]: identifier "TIM_TimeBaseInitTypeDef" is undefined D:\main.c 219 
Error[Pe020]: identifier "GPIO_InitTypeDef" is undefined D:\main.c 230 
Error[Pe020]: identifier "TIM_OCInitTypeDef" is undefined D:\main.c 231 
Warning[Pe223]: function "RCC_AHBPeriphClockCmd" declared implicitly D:\main.c 234 
Error[Pe020]: identifier "RCC_AHBPeriph_GPIOA" is undefined D:\main.c 234 
Error[Pe020]: identifier "ENABLE" is undefined D:\main.c 234 
Error[Pe020]: identifier "GPIO_Pin_6" is undefined D:\main.c 236 
Error[Pe020]: identifier "GPIO_Mode_AF" is undefined D:\main.c 237 
Error[Pe020]: identifier "GPIO_Speed_50MHz" is undefined D:\main.c 238 
Error[Pe020]: identifier "GPIO_OType_PP" is undefined D:\main.c 239 
Error[Pe020]: identifier "GPIO_PuPd_UP" is undefined D:\main.c 240 
Warning[Pe223]: function "GPIO_Init" declared implicitly D:\main.c 241 
Error[Pe020]: identifier "GPIOA" is undefined D:\main.c 241 
Warning[Pe223]: function "GPIO_PinAFConfig" declared implicitly D:\main.c 243 
Error[Pe020]: identifier "GPIO_PinSource6" is undefined D:\main.c 243 
Error[Pe020]: identifier "GPIO_AF_1" is undefined D:\main.c 243 
Warning[Pe223]: function "RCC_APB1PeriphClockCmd" declared implicitly D:\main.c 245 
Error[Pe020]: identifier "RCC_APB1Periph_TIM3" is undefined D:\main.c 245 
Warning[Pe223]: function "TIM_TimeBaseStructInit" declared implicitly D:\main.c 247 
Error[Pe020]: identifier "SystemCoreClock" is undefined D:\main.c 251 
Error[Pe020]: identifier "TIM_CounterMode_Up" is undefined D:\main.c 253 
Warning[Pe223]: function "TIM_TimeBaseInit" declared implicitly D:\main.c 258 
Error[Pe020]: identifier "TIM3" is undefined D:\main.c 258 
Warning[Pe223]: function "TIM_OCStructInit" declared implicitly D:\main.c 260 
Error[Pe020]: identifier "TIM_OCMode_PWM2" is undefined D:\main.c 263 
Error[Pe020]: identifier "TIM_OutputState_Enable" is undefined D:\main.c 264 
Error[Pe020]: identifier "TIM_OCPolarity_High" is undefined D:\main.c 266 
Error[Pe020]: identifier "TIM_OCIdleState_Reset" is undefined D:\main.c 267 
Fatal Error[Ms013]: Error limit reached 
Error while running C/C++ Compiler 
 
Total number of errors: 101 
Total number of warnings: 23 

Реклама
a5021
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

Re: STM32F030K6 настройка программы

Сообщение a5021 »

iostm8.h ?

Вообще, мне кажется, лучше бы это выяснять в теме про стм8.
Реклама
HHIMERA
Друг Кота
Сообщения: 4583
Зарегистрирован: Вс дек 05, 2010 06:10:34
Откуда: ЮВ

Re: STM32F030K6 настройка программы

Сообщение HHIMERA »

service47 писал(а):Какие еще файлы необходимо добавить?
Прикалываетесь??? Вот откуда взялось

TIM14
GPIO_AF
RCC_APB1Periph
SystemCoreClock

и пр. в STM8 ???
"Я не даю готовых решений, я заставляю думать!"(С)
a5021
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

Re: STM32F030K6 настройка программы

Сообщение a5021 »

Блин, да. Я и не посмотрел, что за ошибки сыплются. Это наверное крутой STM8.
pixar
Потрогал лапой паяльник
Сообщения: 314
Зарегистрирован: Чт ноя 29, 2012 08:27:22

Re: STM32F030K6 настройка программы

Сообщение pixar »

проще будет назад на авр

http://elm-chan.org/works/sd8p/report.html
service47
Прорезались зубы
Сообщения: 219
Зарегистрирован: Вт мар 12, 2013 16:05:45

Re: STM32F030K6 настройка программы

Сообщение service47 »

Дело в цене самого микроконтроллера, STM8 дешевле.
Возможно ли под него уместить прошивку .hex в 8кБ? У STM32 она занимала 15кБ. Или существуют ли STM8 с 16кБ FLASH? Чтобы было 2 ADC, 2 PWM, 10 GPIO, в корпусе TSSOP20.
HHIMERA
Друг Кота
Сообщения: 4583
Зарегистрирован: Вс дек 05, 2010 06:10:34
Откуда: ЮВ

Re: STM32F030K6 настройка программы

Сообщение HHIMERA »

service47 писал(а):Дело в цене самого микроконтроллера, STM8 дешевле.
Я вас умоляю... Вы готовы за копейку удавиться???
Возможно ли под него уместить прошивку .hex в 8кБ? У STM32 она занимала 15кБ. Или существуют ли STM8 с 16кБ FLASH? Чтобы было 2 ADC, 2 PWM, 10 GPIO, в корпусе TSSOP20.
Вопрос ни о чём... Зависит от кодописателя... от знания архитектуры... и от функционала... Некоторые вещи на STM32 будут меньше по коду... в других случаях... может и наоборот... Размер .hex это как сферический конь в вакууме...
"Я не даю готовых решений, я заставляю думать!"(С)
a5021
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

Re: STM32F030K6 настройка программы

Сообщение a5021 »

Не частый случай, но я готов согласиться с Химерой.
pixar
Потрогал лапой паяльник
Сообщения: 314
Зарегистрирован: Чт ноя 29, 2012 08:27:22

Re: STM32F030K6 настройка программы

Сообщение pixar »

всё творчество - какая то говорящая открытка с тиражом 100К.
Тут скорее начальство готово кодописателя удавить.
задача же довольно простая, почему она в 15к растянулась?
hex не показатель объёма, смотрите размер .bin .
service47
Прорезались зубы
Сообщения: 219
Зарегистрирован: Вт мар 12, 2013 16:05:45

Re: STM32F030K6 настройка программы

Сообщение service47 »

У STM32 в даташите указано:
4 to 32 Kbytes of SRAM with HW parity
Энергонезависимая ли это память?
pixar
Потрогал лапой паяльник
Сообщения: 314
Зарегистрирован: Чт ноя 29, 2012 08:27:22

Re: STM32F030K6 настройка программы

Сообщение pixar »

нет .
есть память на батарейке но сильно меньше.
в малоногих корпусах ноги для батарейки нет.
a5021
Друг Кота
Сообщения: 6452
Зарегистрирован: Пт сен 13, 2013 13:11:31

Re: STM32F030K6 настройка программы

Сообщение a5021 »

Для именования энергонезависимой памяти принято использовать аббревиатуру NVRAM. SRAM -- это оперативная память статического типа, которая "помнит" значения до тех пор, пока присутствует напряжение питание.
service47
Прорезались зубы
Сообщения: 219
Зарегистрирован: Вт мар 12, 2013 16:05:45

Re: STM32F030K6 настройка программы

Сообщение service47 »

Прошивка занимает 15424 байт, у STM32 16кб FLASH, в даташите указано 1000 циклов записи, возможно ли записывать пять переменных в оставшуюся часть памяти размером в 500 байт до 900 раз по одному адресу, после чего инкрементировать адрес и т.д.
Аватара пользователя
dosikus
Друг Кота
Сообщения: 3604
Зарегистрирован: Пн июл 28, 2008 22:12:01

Re: STM32F030K6 настройка программы

Сообщение dosikus »

service47, Это как нужно извратится??? У меня плеер wav'ок с Petit Fat Fs на F0 занимает - Program Size: Code=4704 RO-data=212 RW-data=64 ZI-data=2304
pixar
Потрогал лапой паяльник
Сообщения: 314
Зарегистрирован: Чт ноя 29, 2012 08:27:22

Re: STM32F030K6 настройка программы

Сообщение pixar »

service47 почитайте как работает flash. стирать можно только блоками.
15к - нереальный размер для вашей задачи .
service47
Прорезались зубы
Сообщения: 219
Зарегистрирован: Вт мар 12, 2013 16:05:45

Re: STM32F030K6 настройка программы

Сообщение service47 »

Каким образом можно сохранять пять переменных в STM32F030F4 или STM32F030K6 при отсутствии напряжения?
Даташит: http://www.st.com/web/en/resource/techn ... 088500.pdf
Ответить

Вернуться в «ARM»