Как написать скрипт iprog
Оболочка программы iProgPro поддерживает выполнение скриптов, написанных на языке Lua.
Программа имеет встроенный редактор для скриптов Lua.
Если у вас не открыто дерево калькуляторов, то необходимо открыть его через главное меню Вид-Калькуляторы.
Возможно у вас уже есть какие-то калькуляторы Lua (они имеют расширение *.lua ) :
Калькулятор Lua может не иметь окна. Тогда он просто выполняется каждый раз, когда происходит двойной клик на его имени в списке.
Что бы открыть файл для редактирования, необходимо выбрать его в списке, затем вызвать выпадающее меню правой кнопкой мыши и выбрать в этом меню » Открыть исходный файл «
Файл для калькулятора будет открыт для редактирования прямо в редакторе программы как текстовый файл.
Внимание : для открытия калькулятора для редактирования в программе уже должен быть активным редактор. Если выбран скрипт, в котором не отображается редактор, калькулятор на редактирование не откроется.
Для создания нового скрипта необходимо выбрать любой скрипт в дереве скриптов, вызвать выпадающее меню и выбрать в нем «Создать новый файл в этой папке»
Появится окно с приглашением ввести имя файла.
После ввода имени файла отображается пустое окно редактора калькулятора.
Теперь нажмите клавиши Ctrl + S для сохранения файла калькулятора. Затем сделайте двойной клик на имени вашего калькулятора в списке калькуляторов. Окно калькулятора появится на экране.
Можно нажимать на кнопку калькулятора, но ничего не будет происходить, так как кнопке не назначено никакое событие.
Закройте калькулятор, в окне редактора выберите закладку Source и скопируйте туда текст :
function click(id)
print(‘Button clik! > end
Если редактор свойств не отображается, нужно кликнуть мышкой на изображение кнопки в визуальном в редакторе (внутри серой рамки).
Запустите калькулятор снова (двойной клик на имени файла в списке калькуляторов). Появляется окно калькулятора и при нажатии на кнопку в окне калькулятора в окне сообщений выводится строка
Для взаимодействия конкретно со программой iProg Pro в язык добавлены некоторые функции (их нет о стандартной Lua ) :
print(string)
ShellExecute(string)
SetCaption(string)
Close()
http ()
local Status, data = http(‘ya.ru’,’GET’,»);
print(‘Status = ‘..Status);
print(‘data = ‘..data);
Функция возвращает два параметра :
В данном примере ответ был такой :
Дальше данные обрезаны.
DeviceID()
uid,sn = DeviceID()
print(‘sn = ‘..sn)
print(‘uid = ‘..IntToHex(uid))
sn = 383
uid = F28E56AC
Функция возвращает значение, которое зависит от кнопки, которую нажал пользователь в окне. Коды возвращаемых значений здесь
function OnEditorSelect(start,finish)
Memo1.Clear()
Memo1.Add(‘Адреса: ‘..start..’. ‘..finish)
End
Обработчик On LoadFile
function OnLoadFile()
Memo1.Clear()
Memo1.Add(‘ В редактор загружен файл! ‘)
End
Обработчик O nSelectFile
function OnSelectFile(filename)
Label2.SetText(‘Выбран файл: ‘..filename)
end
Взаимодействие с редактором скрипта
Все функции работают с редактором, который отображается в данный момент на экране. Если выбран скрипт без редактора, то функции работы с редактором игнорируются в калькуляторе.
Если происходит обращение за пределы редактора, то запись в редактор игнорируется, чтение возвращает неопределенное значение.
value = Editor.Read(25)
adr = 53 4
value = Editor.Read(adr)
Пример (байт по адресу 0 будет посвечен (по умолчанию красным цветом)) :
Editor.SetHighlight(0,1)
aaa = Editor.Highlight(0)
print(‘ Адрес курсора : ‘..Editor.Position())
Визуальный редактор позволяет быстро создавать и редактировать визуальные элементы в окне калькулятора.
Основную часть справа занимает рабочая область визуального редактора, ограниченная серой рамкой. Левую и нижнюю границу рамки можно захватить мышью (рамка станет красной) и перемещать, изменяя размер окна.
Справа вверху редактора расположена панель визуальных компонентов, которые может содержать окно калькулятора.
Для размещения компонента в окне нужно кликнуть на нем мышкой на панели, затем кликнуть мышкой рабочей области окна визуального редактора. При выделении компонента на его рамке отображаются черные квадратики. Ухватив мышкой эти квадратики можно изменять размер компонента. Перемещать компонент можно, кликнув на нем левой кнопкой мыши и удерживая ее нажатой перемещать мышь.
Для удаления компонента необходимо выбрать его в списке в левой верхней части редактора и нажать клавишу Del на клавиатуре.
Alignment
Caption
ID
Name
OnClick
Icon
Используется для однострочного редактора. Текст, который будет по умолчанию отображаться в редакторе
Доступ к визуальным компонентам из кода калькулятора.
Для обращения к какому-либо свойству компонента необходимо записать его имя, заданное в визуальном редакторе, затем через точку имя функции, которая устанавливает или считывает свойство компонента.
Color()
FontColor()
aaa = Label.FontColor()
Label.SetColor(0xFF00FF)
Label.SetColor( 500 )
fn = Label.FontName()
Button.SetFontName(‘Courier’)
fs = Label.FontSize()
Button.SetFontSize( 22 )
П ример (Button- имя компонента ):
Button.Enable()
Button.Disable()
bt = Button.Text()
lt = Label.Text()
Memo1.Clear()
Memo1.Add(‘Memo строка 1 ‘)
Memo1.Add(‘Memo строка 2 ‘)
Memo1.Add(‘Memo строка 3 ‘)
Combobox1.Clear()
Combobox1.Add(‘ Выпадающий список строка 1 ‘)
Combobox1.Add(‘ Выпадающий список строка 2 ‘)
Для числового редактора типа Digit возвращает значение (число), отображаемое в редакторе
Для выпадающего списка возвращает индекс выбранной строки (индексы начинаются с нуля)
Для шестнадцатеричного редактора возвращает отображаемое значение в виде числа. Если в редакторе отображается более 4-х байт, то возвращается значение 4 левых байт.
Для числового редактора типа Digit устанавливает значение в редакторе
Для выпадающего списка устанавливает индекс выбранной строки (индексы начинаются с нуля). Если value имеет недопустимое значение (меньше нуля или больше количества строк), то функция игнорируется.
Для шестнадцатеричного редактора устанавливает отображаемое значение. Если в редакторе отображается менее 4 байт, то старшие биты значения отбрасываются. Если в редакторе отображается более 4 байт, то значение устанавливается для 4 левых байт
Вызов функций в калькуляторе
Функция для обработки OnClick должна обязательно иметь следующий заголовок :
При вызове функции он будет содержать ID компонента, который вызвал эту функцию.
При запуске калькулятора Lua до появления окна калькулятора на экране выполняется весь код, записанный снаружи процедур.
function aaa()
print(‘. ‘)
end
function bbb()
print(‘. ‘)
end
function load()
print(‘Код внутри процедуры load()’)
end
При запуске такого калькулятора будут выведены сообщения :
Версия программы и папка калькулятора
Специальная переменная SW_VERSION содержит версию программы, на которой исполняется скрипт. Переменная CURRENT_PATH содержит имя папки, в которой находится запущенный калькулятор
print(‘Версия софта: ‘..SW_VERSION)
print(‘Папка: ‘..CURRENT_PATH)
Версия софта: 65
Папка: E:\iProg Pro\Calculators\lua\
Тема: Калькуляторы, скрипты ETSmart ( Iprog ), Iprog+
Опции темы
Калькуляторы, скрипты ETSmart ( Iprog ), Iprog+
Список калькуляторов, которыми сейчас комплектуется ETSmart ( Iprog )
Calculator000.rar
для тех у кого не хватает сообщений, этот же архив на Google:
Добавил калькуляторы для KAMAZ.
Добавил кальки для квадроциклов. (ATV)
Добавил кальки для VAZ.
Добавил калькуляторы для щитков китайцев.
окт. 2018
Добавил калькуляторы по моточасам и пробегам в ECU. Обновление включает блоки DACIA, Porshe, Chrysler, John Deere,Great Wall, GAZ и тд.
2019
добавил калькуляторы по идентификаторам и иммо_офф Lada и SsangYong.
добавил калькуляторы пробега и моточасов для мотоциклов и снегоходов. (178 кальков)
добавил 17 кальков в блоках упр. двигателем. (пробег, иммо и пр.)
Добавил открытый калькулятор для вычисления кода магнитол мерседес. Калькулятор находится в папке РАДИО по известной ссылке. Поддерживает большой список магнитол. Калькулятор открытый, поэтому работает только в версии 108, незабываем. Вы можете изучать структуру и дописывать (дополнять) то что считаете нужным.
Поздравляю всех с Праздником!
Добавил калькуляторы для расчета ПИН кода иммобилайзера и тп. (18 марок авто, 54 калькулятора.)
Добавил калькулятор пробега Vito W447
Добавил калькулятор пробега Cherry IndyS eeprom 24c16
Программатор iProg+ PRO серийный номер 325. Программа, скрипты и калькуляторы от «Goverla». Версия ПО V85
Программатор iProg+ PRO предназначен для работы с приборными панелями, блоками иммо, блоками ABS (удаление crash data), имеет много других нужных функций.
Ни для кого не секрет, что плата «китайского» IPROG для правильной работы требует довольно серьезной доработки.
Правильно работает плата питания:
1. Fulltest проходит без ошибок.
2. Правильное напряжение 10/12 вольт, 3/5 вольт. Напряжение измеряется на выходе с разъема DB44, с подключенными нагрузочными резисторами. Величины напряжений, измеряемые процессором и реальное напряжение, совпадает.
3. Возможно подключение внешнего питанием, при этом ничего не взрывается на плате.
Правильно работает OBD2 кабель.
1. Можно подавать питание 12 вольт на OBD2 разъем. Каждый OBD2 адаптер, мы проверяем подачей напряжения 14.5…15 вольт, при этом конденсаторы не взрываются.
2. Проверяем работу: CAN шины, K-line, работу реле переключающих CAN шину (контакты 6-14/3-11). CAN шина тестируется при помощи CAN анализатора, проверяем прием/передачу пакетов между IPROG- CAN анализатором, на различных скоростях. Сигнал K-line проверяется осциллографом.
Эти адаптеры проверяются аналогично OBD2 кабелю. CAN шина при помощи CAN анализатор. K-line адаптер – осциллографом.
EEPROM адаптер.
1. Проверяем правильность напряжения VCC.
2. Проверяем чтение/запись нескольких типов микросхем eeprom, например: 24C01, 24C64, 93C86, 35080
BDM адаптер.
В программе встроенный тест адаптера с «заглушкой», проходит без ошибок.
RFID 125kHz/134kHz адаптер.
1. Осциллографом проверяем амплитуду напряжения накачки антенны. При недостаточной амплитуде, транспондеры будут читаться не стабильно.
2. Поверяем чтение различных транспондеров, например ID48, PCF7936, PCF7946, 4D.
Видео поэтапной проверки прибора представлено ниже.
Вы покупаете ПРОВЕРЕННЫЙ/ДОРАБОТАННЫЕ прибор с серийным номером 325, что дает возможность работы с программами, скриптами и калькуляторами от Goverla. По сравнению с китайский софтом и скриптами, доступно больше функций.
С iProg+ PRO в комплекте идет ПО: V52, V55, V69, V76, V84, V85
Функции iProg PRO:
Варианты комплектации прибора.
Базовая комплектация:
Полная комплектация:
Если вам не нужна полная комплектакия, при выборе базовой комплектации возможно отдельно купить любой из указанно ниже адаптеров:
Адаптер PCF79xx + SD для PCF7941/52/53/61
Предназначен для обнуления брелков бесключевого доступа под повторную привязку, позволяющий читать и писать пульты ДУ автомобилей с микросхемами PCF7941/52/53/61 через MSDA, MSCL для iProg+ IPROG.
Адаптер RFID Toyota 4C/4D 125kHz/134kHz
Предназначен для работы с транспондерами автомобилей Toyota 4C/4D с частатой 125kHz/134kHz.
Выбор рабочей частоты выполняется в ручную, установкой перемычки или автоматически, через скрипт в программе.
Адаптер MB IR
Предназначен для работы с ключами по ИК, а также для проверки Keyless.
Набор тестовых игл (погопины) 5 шт.
Предназначен для подключения БЕЗ ПАЙКИ к платам различных ЭБУ и приборным панелям.
Ссылка для скачивания ПО, будет дана после покупки.
Тема: Калькуляторы, скрипты ETSmart ( Iprog ), Iprog+
Опции темы
Калькуляторы, скрипты ETSmart ( Iprog ), Iprog+
Список калькуляторов, которыми сейчас комплектуется ETSmart ( Iprog )
Calculator000.rar
для тех у кого не хватает сообщений, этот же архив на Google:
Добавил калькуляторы для KAMAZ.
Добавил кальки для квадроциклов. (ATV)
Добавил кальки для VAZ.
Добавил калькуляторы для щитков китайцев.
окт. 2018
Добавил калькуляторы по моточасам и пробегам в ECU. Обновление включает блоки DACIA, Porshe, Chrysler, John Deere,Great Wall, GAZ и тд.
2019
добавил калькуляторы по идентификаторам и иммо_офф Lada и SsangYong.
добавил калькуляторы пробега и моточасов для мотоциклов и снегоходов. (178 кальков)
добавил 17 кальков в блоках упр. двигателем. (пробег, иммо и пр.)
Добавил открытый калькулятор для вычисления кода магнитол мерседес. Калькулятор находится в папке РАДИО по известной ссылке. Поддерживает большой список магнитол. Калькулятор открытый, поэтому работает только в версии 108, незабываем. Вы можете изучать структуру и дописывать (дополнять) то что считаете нужным.
Поздравляю всех с Праздником!
Добавил калькуляторы для расчета ПИН кода иммобилайзера и тп. (18 марок авто, 54 калькулятора.)
Добавил калькулятор пробега Vito W447
Добавил калькулятор пробега Cherry IndyS eeprom 24c16
Iprog (China) Доработки и наработки.
Для просмотра нужна авторизация!
Для просмотра Вам необходимо авторизироваться.
Если Вы еще не зарегистрированы, перейдите по ссылке: Регистрация.
Уважаемые форумчане!
Давайте в данной теме обсуждать и выкладывать свои доработки на наработки по данному девайсу!
А так же приветствуются ссылки на проверенных продавцов!
Если нужно будет то тему перенесу в платный раздел!
Последние посетители
Комментарий
Комментарий
Отредактировано: vlademir в 18-8-2020 15:13
Версия софта для китайского Iprog (#1 серийный номер) от biecpi, с его позволения и пояснениями от автора:
1) Для удобства установки/удаления сделал инсталлятор, с автоматическим созданием ярлыка на рабочий стол.
2) Исправил замеченные неработающие скрипты, которые либо не запускались или вываливали критическую ошибку. А их было достаточно.
3) Раскидал скрипты по соответствующим папкам и постарался добавить графику на папки марок.
По возможности скрипты проверены на реальных авто.
И классика, вся ответственность при работе с отломом отлома лежит на Вас!)
Программа только под программатор с серийным номером «1». Без программатора скрипты не работают.
Версия IPROG V5
— изменения почти во всех папках, работать еще удобнее
— добавлены хелпы по доработке + много схем ( благодарю всех кто скидывал файлы! )