Кто любит RISC в жизни, заходим, не стесняемся.
Ответить

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Пн окт 08, 2018 14:52:10

у меня ворнингов нету
а дальше не знам - но вроде работает
ножет отладчик что то исправляет? работает же у меня
а вот без отладчика нет

я дома файлы забыл, только вечером из дома выставлю мапы памяти

Добавлено after 4 hours 59 minutes 27 seconds:
Re: Open source plc STM32F103RBT6 source code Mitsubishi PLCFX1
Код:
               bit   
                  
S000-S999      0x0000   0x007C      0x0000   
                  
X000-X277      0x0080   0x0096      0x0400   
                  
Y000-Y277         0x00A0   0x00B6      0x0500   
                  
T000-T255OVER      0x00C0   0x00DF      0x0600   
                  
M0000-M1535      0x0100   0x01BF      0x0800   
C000-C255OVER   0x01C0   0x01DF      0x0E00   
M8000-M8255      0x01E0   0x01FF      0x0F00   
                  
T000-T255ENABLE   0x02C0   0x02DF      0x1600   
                  
            0x0460   0x2300            timer ???
            0x04C0   0x2600            timer ???
            0x04E0   0x2700            counter ???
M1536-M3071      0x0500   0x05BF      0x2800   
            0x06E0   0x3700            counter ???
            0x0700   0x071F      0x3800   timer ???
                  
                  
            0x0A00   0x0DFF            counter_val
            0x0C00                  counter_val_200_255
D8000-D8255      0x0E00   0x0FFF         
D8256-D8511                           ???
            0x1000   0x11FF            timer_val
            0x1200   0x13FF            timer_max
            0x1400                  monitor_???
            0x1790            
                  
D0000-D7999      0x2000   0x5E7F         
D1000         0x27D0            
                  
            0x4F1C                  ADC

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Пн окт 08, 2018 19:56:27

Это правленная тобой карта?

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Пн окт 08, 2018 21:41:51

да, я еще не весь ladder прошерстил
там куча прямых обращений в память

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Вт окт 09, 2018 17:56:07

мда , в 20кил не влезет однозначно
в чистом виде
если сильно обрезать или использовать какуйнють индексацию то можно запихнуть

а так 16 кил на D регистры, 4 кило на таймеры счетчики и тд и тп
еще 4 кило уйдет на бкферы приема отрпавки и просто регистры

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Ср окт 10, 2018 13:56:13

Может чем поможет этот архив:
https://cloud.mail.ru/public/Ju3T/iZRN7qRtg
Там есть pdf с размерами в байтах каждой команды.
Проект для FX2N пробовал загружать в STM32F107VCT6 (Только микроконтроллер и кварц). Связь с Developer устанавливаетсь, тех. программа записывается и считывается ([url=http://img.radiokot.ru/files/117446/medium/1pl12nkj8d.jpg]).

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Ср окт 10, 2018 17:33:25

MikhailSh, этот проект уже здесь светился . Ляпы с USART...

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Пт окт 12, 2018 19:00:28

Они трансляцию адресов сделали для совместимости с FX1S
но какая то она ушербная
у fx1 64 таймера а у fx2 256
у fx1 d0-d255 у fx2 d0-d3999
ну и так далее

надо убивать трансляцию и править адреса в самой проге

и еще
пастоянно путаются 16битные и 8битные регистры
в u16 массив пишутся данные из u8 массива

for(Erasure_PLC_16BIT=0x2000;Erasure_PLC_16BIT<0x7E7E;Erasure_PLC_16BIT+=2) // ЗеіэD0000-D7999
PLC_8BIT(Erasure_PLC_16BIT)=0x00;

типа очистили
но на самом деле только старший байт

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Вс окт 14, 2018 05:45:04

чой то я тока щаз подумал посмотреть


    0x08004fa8 0x00000010 Code RO 827 i.__mathlib_dbl_underflow m_ws.l(dunder.o)
    0x08004fb8 0x00000010 Code RO 817 x$fpl$dcheck1 fz_ws.l(dcheck1.o)
    0x08004fc8 0x0000002e Code RO 674 x$fpl$dflt fz_ws.l(dflt_clz.o)
    0x08004ff6 0x0000000a Code RO 764 x$fpl$fretinf fz_ws.l(fretinf.o)
    0x08005000 0x00000002 Data RO 554 .ARM.__AT_0x08005000 plc_com.o <----- !!!!!!!
    0x08005002 0x00000002 PAD
    0x08005004 0x00000388 Code RO 772 i.__ieee754_rem_pio2 m_ws.l(rred.o)
    0x0800538c 0x000000ec Code RO 777 i.__kernel_sin m_ws.l(sin_i.o)
    0x08005478 0x00000278 Code RO 783 i.__kernel_tan m_ws.l(tan_i.o)
    0x080056f0 0x000000ac Code RO 710 i.cos m_ws.l(cos.o)
    0x0800579c 0x000000b0 Code RO 718 i.sin m_ws.l(sin.o)
    0x0800584c 0x0000004c Code RO 726 i.sqrt m_ws.l(sqrt.o)
    0x08005898 0x00000074 Code RO 734 i.tan m_ws.l(tan.o)
    0x0800590c 0x00000062 Code RO 667 x$fpl$d2f fz_ws.l(d2f.o)
    0x0800596e 0x00000002 PAD
    0x08005970 0x00000150 Code RO 811 x$fpl$dadd fz_ws.l(daddsub_clz.o)
    0x08005ac0 0x000002b0 Code RO 749 x$fpl$ddiv fz_ws.l(ddiv.o)
    0x08005d70 0x0000005e Code RO 821 x$fpl$dfix fz_ws.l(dfix.o)
    0x08005dce 0x00000002 PAD
    0x08005dd0 0x0000005a Code RO 669 x$fpl$dfixu fz_ws.l(dfixu.o)
    0x08005e2a 0x00000026 Code RO 673 x$fpl$dfltu fz_ws.l(dflt_clz.o)
    0x08005e50 0x00000154 Code RO 825 x$fpl$dmul fz_ws.l(dmul.o)
    0x08005fa4 0x0000000c Code RO 756 x$fpl$dretinf fz_ws.l(dretinf.o)
    0x08005fb0 0x00000016 Code RO 812 x$fpl$drsb fz_ws.l(daddsub_clz.o)
    0x08005fc6 0x00000018 Code RO 760 x$fpl$fcmpinf fz_ws.l(fcmpi.o)
    0x08005fde 0x00000000 Code RO 768 x$fpl$usenofp fz_ws.l(usenofp.o)
    0x08005fde 0x00000010 Data RO 426 .constdata ladder.o
    0x08005fee 0x0000000c Data RO 611 .constdata rtc.o
    0x08005ffa 0x00000006 PAD
    0x08006000 0x000084d0 Data RO 555 .ARM.__AT_0x08006000 plc_com.o <----- !!!!!!!
    0x0800e4d0 0x00004cc8 Code RO 423 .text ladder.o
    0x08013198 0x0000009c Code RO 754 x$fpl$dnaninf fz_ws.l(dnaninf.o)
    0x08013234 0x000001cc Code RO 758 x$fpl$dsqrt fz_ws.l(dsqrt_noumaal.o)
    0x08013400 0x000001d4 Code RO 813 x$fpl$dsub fz_ws.l(daddsub_clz.o)
    0x080135d4 0x00000056 Code RO 679 x$fpl$f2d fz_ws.l(f2d.o)


данные по среди кода - причем не известно сколько этих данных будет

китайсы они во всем китайсы

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Ср окт 17, 2018 18:29:14

убрал привязку к адресам
обрезал прогу до 32 кил (выкинул команды с floatом и сдвиги)
снял привязку к раму
прога стабильно запускается и определяется
но при попытке считывания данных отрывается связь

не совсем понятно куда копать

да и GXDevel определяет прошивку как fx1 хотя во флеше прописано fx2

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Ср окт 17, 2018 18:39:31

Смотри в отладчики, снова поди в хардфаулт валится...

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Ср окт 17, 2018 19:08:11

нет, светик RUN моргает

я не умею пользовацца отладчиком

слишком давно были РК86 MSX2 и DOS6.2

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Ср окт 17, 2018 19:26:19

Кидай в личку проект, завтра если выкрою время прогоню.
В оригинале RUN не должен моргать в нормальном режиме.

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Ср окт 17, 2018 19:32:41

imsushka писал(а):я не умею пользовацца отладчиком
Что сложного?
Здесь есть несколько примеров в т. ч. написано как узнать откуда программа попала в HardFault.

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Ср окт 17, 2018 19:53:31

она не попадает в хардфаулт

как так не должен моргать ?
при заходе в ладдер зажигается - при выходе гаснет
проги нету - 1 шаг с командой "конец программы"

прикрутил логер ком порта - отдает пустые данные

Добавлено after 1 minute 15 seconds:
Re: Open source plc STM32F103RBT6 source code Mitsubishi PLCFX1
отладчик не могу юзать по причине не знания асма арма
да и юзабельность после msx отладчика - НИКАКАЯ :)

Добавлено after 1 minute 2 seconds:
Кидай в личку проект, завтра если выкрою время прогоню.
В оригинале RUN не должен моргать в нормальном режиме.


у тебя нормально читается / пишется ПЛК ?

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Ср окт 17, 2018 20:01:30

imsushka писал(а):отладчик не могу юзать по причине не знания асма арма
Разве прога для STMки написана на асме? Смотрел, там Си.

imsushka писал(а):да и юзабельность после msx отладчика - НИКАКАЯ
msx это у нас что? Вот это? https://ru.wikipedia.org/wiki/MSX

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Ср окт 17, 2018 20:20:57

я не могу (да и не хочу) в кейле запустить отладчик
там и прошивка не работает


да только на фотке ученическая машинка, а еще была учительская
м-м-м вот это была конфетка :)

стал пихать на запросы фигню всякую - GXDev начал нормально опрашивать

ругнулся только при попытке считать прогу - но там была использованна команда "4"
а такой в описании нету

02 34 38 30 35 43 30 46 30 30 03 45 44 .4805C0F00.ED

не правда - есть такая команд, но она не реализованна

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Пт окт 19, 2018 10:54:34

как так не должен моргать ?
при заходе в ладдер зажигается - при выходе гаснет
проги нету - 1 шаг с командой "конец программы"



А вот так. RUN на PB8 - сейчас четко отзывается на Remote Operation...
Вообщем и в IAR все заработало.
Осталось допереводить и начать выкашивать SPL.
Затем дело дойдет и до размещения а отдельных секциях,
по уму с правкой скрипта линкера а не как у китайцев натыкано наобум...

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Пт окт 19, 2018 16:56:11

я убрал все упоминания массива PCL16 - но почему то на все запросы ответ "0".
в кейле запустил отладчик, но чой то не смог с ним работать, поэтому и попросил иар.

правда у тебя новая версия, пока качаю

спл мне не мешает - да жрет флешку, но пока не критично
критично жрет float

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Пт окт 19, 2018 18:08:55

А что с кайлом ? У меня все дебаггеры правда в jlink перешиты.
СПЛ там еще как мешает, я тебе потом покажу дабы Мурика инфаркт не схватил... :)))

Re: Open source plc STM32F103RBT6 source code Mitsubishi PL

Пт окт 19, 2018 18:45:02

да не знаю, просто не получилось и фсе
а с иаром я уже работал

вот уже проблему нашол - кто то память трет

а ты уверен что у тебя прошивка пашет ?
у меня девел только на попытку чтения флеша ругается
а так, хоть и читаются только нули ошибки не выдает
Ответить