Jump to content

    
Sign in to follow this  
Ekka

Я_ПЛаКал(YAPLC-IDE)

Recommended Posts

Привет всем... пытаюсь запустить стартовый проект для nuc-243 в YAPLC-IDE, make установлен, GNU Tools to ARM тоже, но при попытке собрать проект происходит следующее:

 

Сборка запущена в C:\Users\Квазар\Desktop\Все по Beremiz\StartProject\build
Генерация МЭК-61131 ST/IL/SFC кода ПЛК...
Компиляция МЭК-программы в C-код...
Экспорт локальных переменных...
0 -> Nothing to do
C-код успешно сгенерирован.
make: Entering directory `C:/Users/Квазар/Desktop/Все по Beremiz/StartProject/build'
"*** Building target ***"
arm-none-eabi-gcc -I"C:\Program Files\YAPLC\IDE\yaplctargets\nuc243\..\..\..\RTE\src" -DPLC_RTE_ADDR=0x08000184 "-IC:\Program Files\YAPLC\matiec\lib\C" -Wno-unused-function -mthumb -mcpu=cortex-m3 -O0 -g3 -std=gnu90 -Wall -fdata-sections -ffunction-sections -fno-strict-aliasing -DSTM32F2 -DPLC_MD5="\"25898e16054c25f4408bf2d90d6a3bfeNucleron#Start#Ctrl#\"" -c plc_main.c -o plc_main.o
"arm-none-eabi-gcc" ­Ґ пў«пҐвбп ў­гв७­Ґ© Ё«Ё ў­Ґи­Ґ©
Є®¬ ­¤®©, ЁбЇ®«­пҐ¬®© Їа®Ја ¬¬®© Ё«Ё Ї ЄҐв­л¬ д ©«®¬.
make: *** [plc_main.o] Ошибка 1
make: Leaving directory `C:/Users/Квазар/Desktop/Все по Beremiz/StartProject/build'
make -C "C:\Users\Квазар\Desktop\Все по Beremiz\StartProject\build" all "SRC=plc_main.c plc_debugger.c config.c resource1.c" "CFLAGS=-I\"C:\Program Files\YAPLC\IDE\yaplctargets\nuc243\..\..\..\RTE\src\" -DPLC_RTE_ADDR=0x08000184 \"-IC:\Program Files\YAPLC\matiec\lib\C\" -Wno-unused-function" MD5=25898e16054c25f4408bf2d90d6a3bfeNucleron#Start#Ctrl# USE_BEREMIZ=1 FROM_BEREMIZ=1 "LDFLAGS=-Wl,-script=\"C:\Program Files\YAPLC\IDE\yaplctargets\nuc243\..\..\..\RTE\src\bsp/nuc-243/stm32f205xC-app.ld\" " OUTPUT=StartProject LOADADDR=0x08010000
завершился с кодом 2 (pid 12476)
Ошибка компиляции.
Ошибка сборки C-кода.

 

Как это поправить и что это вообще. В YAPLC-IDE новичок. :smile3046:

post-91250-1517489970_thumb.jpg

Edited by Ekka

Share this post


Link to post
Share on other sites

А что может значить ЭТО? не хватает какой-то библиотеки питона?

Крэш во время сборки C-кода!
Traceback (most recent call last):
  File "D:\YAPLC\yaplc_ide\YAPLC\beremiz\ProjectController.py", line 998, in _Build
    if not builder.build() :
  File "D:\YAPLC\yaplc_ide\YAPLC\IDE\yaplctargets\yaplc\__init__.py", line 40, in build
    return toolchain_yaplc.build(self)
  File "D:\YAPLC\yaplc_ide\YAPLC\IDE\yaplctargets\toolchain_yaplc.py", line 93, in build
    f.write(self.md5key)
UnicodeEncodeError: 'ascii' codec can't encode characters in position 32-41: ordinal not in range(128)

post-91250-1517577337_thumb.jpg

Share this post


Link to post
Share on other sites

Привет всем, кто-то пробовал подключаться к stm32f4 через YAPLC? Как это нормально сделать? Не могу нигде найти руководство программиста для YAPLC-IDE.

Может, кто-то знает, как корректно подключить? У меня постоянно ошибки какие-то, то файл, который лежит под носом не найден, то к МК не тот порт ведет... ХЕЛП МИ.

Или может у кого ссылка завалялась на руководство. :crying:

 

И тут есчо есть загрузчик для stm32 - stm32flash, но не могу нормально вдуплить, как его использовать, stm32flash.exe у меня с консоли не запускается

Edited by Ekka

Share this post


Link to post
Share on other sites

Привет всем снова... уже все перепробовалось, ничего не получается. Может, кто-то работал с BEREMIZ?

Что я делаю не так?

Из прочитанных мною материалов, выяснилось, что для того, чтобы загрузить программу на stm32f4 через

YAPLC-IDE необходимо:

1)Залить на него проект под названием yaplc_runtime, созданный на CodeBlocks (ПРОБЛЕМНО!)

2)Собрать свой проект в YAPLC-IDE под целевой платформой yaplc (ЭТО хоть и коряво, но сделано)

3)Подключится к целевому устройству, т.е. МК мой должен определяться как ком-порт (использую USB-USART) USART1.

4)В МК, в который предварительно залит проект yaplc-runtime, залить мой проект на YAPLC-IDE в состоянии с притянутой BOOT0 (через bootloader).

И тогда мне будет счастие!

 

Итого

1)не получается подсоединиться к МК как к порту через YAPLC-IDE, хотя в настройках я указываю

YAPLC://COM5

yaplc

2)Нужно ли проект CodeBlocks-са заливать в плату? И зачем?

3) Как мне правильно и в какой очередности все нормально настроить?

 

Скажите, пожалуйста, может, я совсем не туда копаю?? Может, другие инструкции нужны? Что я делаю не так? Вторую неделю сижу... и дудки(

 

Share this post


Link to post
Share on other sites
Привет всем снова... уже все перепробовалось, ничего не получается. Может, кто-то работал с BEREMIZ?

Что я делаю не так?

Из прочитанных мною материалов, выяснилось, что для того, чтобы загрузить программу на stm32f4 через

YAPLC-IDE необходимо:

1)Залить на него проект под названием yaplc_runtime, созданный на CodeBlocks (ПРОБЛЕМНО!)

2)Собрать свой проект в YAPLC-IDE под целевой платформой yaplc (ЭТО хоть и коряво, но сделано)

3)Подключится к целевому устройству, т.е. МК мой должен определяться как ком-порт (использую USB-USART) USART1.

4)В МК, в который предварительно залит проект yaplc-runtime, залить мой проект на YAPLC-IDE в состоянии с притянутой BOOT0 (через bootloader).

И тогда мне будет счастие!

 

Итого

1)не получается подсоединиться к МК как к порту через YAPLC-IDE, хотя в настройках я указываю

YAPLC://COM5

yaplc

2)Нужно ли проект CodeBlocks-са заливать в плату? И зачем?

3) Как мне правильно и в какой очередности все нормально настроить?

 

Скажите, пожалуйста, может, я совсем не туда копаю?? Может, другие инструкции нужны? Что я делаю не так? Вторую неделю сижу... и дудки(

 

Привет, если еще работаешь с YAPLC, предлагаю скооперироваться, думаю мы сможем друг другу чем-то помочь. На форуме к сожалению в лс писать не могу пока.

Share this post


Link to post
Share on other sites
3)Подключится к целевому устройству, т.е. МК мой должен определяться как ком-порт (использую USB-USART) USART1.

 

В STM32F4-discovery usart1 tx (порт PA9), который в проекте yaplc-rte задействован, используется как vbus для шины usb, подцеплен к двум микрухам, и на нем висит емкость. С ним работать не будет.

Edited by elSapo

Share this post


Link to post
Share on other sites

Там "хитрый" программатор.  на сколько я помню, давно было...

После нажатия кнопки залить программу, контроллер  должен перейти в режим Boot по UART, с перезагрузкой. Далее зашивается программа стандартным программатором по UART с помощью утилиты. Затем переход в  режим загрузки с флэш.

Выбор режима загрузки вроде делает сам МК, в проекте есть специальная ножка для этого, вроде PLC_BOOT_PERIPH. Функция void plc_boot_mode_enter(void).

Если это сделать нет возможности, то можно залить сгенерированный проект вручную по адресу 0x08008000 StLinkom и затем просто подключится к нему из Beremiz.

On 2/9/2018 at 8:43 AM, Ekka said:

2)Нужно ли проект CodeBlocks-са заливать в плату? И зачем?
3) Как мне правильно и в какой очередности все нормально настроить?

2. Обязательно, без него работать не будет.

3. Залить проект Runtime в МК, подключится к МК из Beremiz и залить туда еще то что генерирует Beremiz.

Share this post


Link to post
Share on other sites

Привет, снова сижу с этим проектом. Как думаете, почему программа из беремиза "шьет" в память через загрузчик, а по факту программы в памяти нет?

Share this post


Link to post
Share on other sites
1 час назад, Ekka сказал:

Привет, снова сижу с этим проектом. Как думаете, почему программа из беремиза "шьет" в память через загрузчик, а по факту программы в памяти нет?

видимо всё-таки не шьёт. "Видишь зайчика? И я не вижу, а он есть!"  :unknw:

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this