Skyrim > Программы > ESP-ESM Translator для SSE
ESP-ESM Translator для SSE
Категория: Программы Просмотров: 7 814
Программа ESP-ESM Translator предназначенная для перевода ESP-ESM файлов модификаций для Skyrim Special Edition.
Распакуйте архив. Запустите программу (нажмите на ESP Translator.exe). Выберите язык при установке — русский. Затем нажмите на шестеренку чтобы изменить настройки, перейдите на вкладку Общие параметры.
1. Выберите игру Skyrim SE.
2. Кодировку поменяйте на Windows 1251 — файлы перевода и выходной файл.
3. Интернет перевод поменяйте на https://translate.google.ru/?hl=entab=wT#auto/ru/%VAR%
Можете установить дополнительно базу данных на русском. Скопируйте данные архива БД в папку BDD. Хотя и без этих действий всё работает отлично и на русском.
Источник: inskyrim.ru
Дружимся с ESP
Последние пару лет практически все прототипирование несложных IoT-устройств я делаю на NodeMCU, хотя зачастую она и великовата по размеру, и дороговата, и избыточна по функционалу. А все потому, что имела неудачный опыт с ESP-01, которая совершенно не поддавалась прошивке. Сейчас пришло время преодолеть этот барьер и освоить другие железки, от которых мне нужно следующее — Wi-Fi и пины для подключения периферии.
В этой статье разберем подключение к платформе Интернета вещей наиболее популярных плат с интерфейсом Wi-Fi. Их можно использовать, чтобы управлять своим устройством дистанционно или чтобы снимать показания с сенсоров через интернет.
Несколько представленных в статье модулей (ESP-01, ESP-07, ESP-12E, ESP-12F) и плат (Goouuu Mini-S1, WeMos D1 mini и NodeMCU V2) базируются на контроллере ESP8266, использование которого позволяет простым и дешевым способом добавить в своё устройство беспроводную связь через Wi-Fi.
Так выглядит модельный ряд модулей на базе чипа ESP8266.
Последняя плата из тех, о которых я расскажу (ESP32 WROOM DevKit v1), построена на контроллере семейства ESP32 — более продвинутой по своим возможностям версии ESP8266.
Все представленные модели можно программировать и загружать прошивки через Arduino IDE точно так же, как при работе с Arduino.
Настройка среды программирования Arduino IDE
По умолчанию среда IDE настроена только на AVR-платы. Для платформ, представленных ниже, необходимо добавить в менеджере плат дополнительную поддержку.
1) Открываем среду программирования Arduino IDE.
http://arduino.esp8266.com/stable/package_esp8266com_index.json, https://dl.espressif.com/dl/package_esp32_index.json
4) В пункте меню Tools (Инструменты) -> Board (Плата) выбираем Boards manager (Менеджер плат).
Находим в списке платформы на ESP8266 и нажимаем на кнопку Install (Установить).
6) Надпись INSTALLED сообщает, что дополнения успешно установлены.
7) Аналогичным образом устанавливаем дополнение для ESP32.
8) Теперь нам доступны к программированию платформы с модулем ESP8266 и ESP32.
9) Для подключения плат к платформе Интернета вещей используем библиотеку EspMQTTClient. Чтобы ее установить, в пункте меню Tools (Инструменты) выбираем Manage Libraries (Управлять библиотеками). Находим и устанавливаем библиотеку EspMQTTClient. Может появиться сообщение об установке дополнительных библиотек. Выбираем “Install all”.
Примечание — Также для работы с платами понадобится установить драйверы CH340 (WeMos и Goouuu) и CP2102 (для остальных). Их отсутствие повлияет на то, найдет ли Arduino IDE COM-порт, к которому подключена плата.
Код прошивки
Для прошивки всех используемых ниже модулей используем один и тот же код.
- Установка Wi-Fi соединения
- Подключение к объекту на платформе Rightech IoT Cloud по протоколу MQTT
- Отправка рандомных значений по температуре («base/state/temperature») и влажности («base/state/humidity») каждые 5 секунд (PUB_DELAY)
- Получение сообщений о переключении света («base/relay/led1»)
#include «Arduino.h» #include «EspMQTTClient.h» /* https://github.com/plapointe6/EspMQTTClient */ /* https://github.com/knolleary/pubsubclient */ #define PUB_DELAY (5 * 1000) /* 5 seconds */ EspMQTTClient client( «», «», «dev.rightech.io», «» ); void setup() < Serial.begin(9600); >void onConnectionEstablished() < client.subscribe(«base/relay/led1», [] (const String Serial.println(payload); >); > long last = 0; void publishTemperature() < long now = millis(); if (client.isConnected() (now — last >PUB_DELAY)) < client.publish(«base/state/temperature», String(random(20, 30))); client.publish(«base/state/humidity», String(random(40, 90))); last = now; >> void loop()
Работоспособность кода будем проверять на платформе Rightech IoT Cloud, именно поэтому в качестве адреса MQTT-брокера указан dev.rightech.io. Идентификаторами клиентов служат идентификаторы объектов, созданных на платформе. Под каждую проверку я завела на платформе отдельный объект, именно поэтому во всех скринах кодов, которые будут далее представлены, отличается только строка .
Прим. — Можно подключаться и к одному и тому же объекту, тогда можно использовать один и тот же код для прошивки всех плат без изменений, однако следите, чтобы в таком случае платы не подключались к одному и тому же объекту одновременно, иначе случится коллизия.
Модули на базе ESP8266
Для работы с модулями на базе ESP8266 есть два варианта:
- Работа с AT командами (в стандартной прошивке Wi-Fi модуль общается с управляющей платой через «AT-команды» по протоколу UART);
- Wi-Fi модуль как самостоятельный контроллер (все представленные модули очень умные: внутри чипа прячется целый микроконтроллер, который можно программировать на языке C++ через Arduino IDE).
В статье будем рассматривать второй вариант — прошивка модулей в виде самостоятельного полноценного устройства. Здесь также есть два варианта прошивки с точки зрения железа:
- Через плату Arduino;
- Через USB-Serial адаптер.
Рассмотрим второй вариант — использовать адаптер на базе чипа CP2102 (например, такой https://www.chipdip.ru/product/cp2102-usb-uart-board-type-a?frommarket=https%3A%2F%2Fmarket.yandex.ru%2Fsearch%3Frs%3DeJwzSvKS4xKzLI до void setup() , а само напряжение питания можно получить из ESP.getVcc() .
Установка, настройка и работа по переводу модов для Скайрим в ESP/ESM Translator
Это делает каждый игрок Skyrim #shorts
Функция analogWrite()
- Работает на всех пинах, кроме GPIO16.
- Разрядность ШИМ по умолчанию 8 бит (0.. 255) на версиях ядра 3.x. На ранних версиях – 10 бит (0.. 1023). Скажем спасибо индусам за совместимость.
- Разрядность можно настроить в analogWriteResolution(4. 16 бит) .
- Частоту можно настроить в analogWriteFreq(100.. 40000 Гц) .
Аппаратные прерывания
- Настраиваются точно так же, через attachInterrupt() .
- Работают на всех пинах, кроме GPIO16.
- Функция-обработчик должна быть объявлена с атрибутом IRAM_ATTR :
void setup() < attachInterrupt(1, myIsr, RISING); >IRAM_ATTR void myIsr()
Либо с ICACHE_RAM_ATTR (на старых версиях ядра), вот так:
void ICACHE_RAM_ATTR myIsr() < >void setup()
Функция yield()
В реализации esp8266 функция yield() выполняет другую задачу и использовать её как на AVR не получится. Скажем спасибо индусам за совместимость
EEPROM
EEPROM в esp8266 является эмуляцией из Flash памяти, поэтому мы можем выбрать нужный размер.
- Перед началом работы нужно вызвать EEPROM.begin(4.. 4096) с указанием размера области памяти в байтах.
- Для применения изменений в памяти нужно вызвать EEPROM.commit() .
- В некоторых версиях SDK отсутствует EEPROM.update() .
В остальном работа с библиотекой EEPROM.h ничем не отличается.
Serial (UART)
- В отличие от реализации для AVR, можно изменить размер буфера на приём: Serial.setRxBufferSize(размер) в байтах. Вызывать перед Serial.begin() , по умолчанию 256 байт.
- Можно настроить работу только на приём или только на отправку для освобождения пина: Serial.begin(скорость, SERIAL_8N1, режим) , где режим:
- SERIAL_TX_ONLY – только отправка
- SERIAL_RX_ONLY – только приём
- SERIAL_FULL – приём и отправка (по умолчанию)
Полезные страницы
- Набор GyverKIT – большой стартовый набор Arduino моей разработки, продаётся в России
- Каталог ссылок на дешёвые Ардуины, датчики, модули и прочие железки с Aliexpress у проверенных продавцов
- Подборка библиотек для Arduino, самых интересных и полезных, официальных и не очень
- Полная документация по языку Ардуино, все встроенные функции и макросы, все доступные типы данных
- Сборник полезных алгоритмов для написания скетчей: структура кода, таймеры, фильтры, парсинг данных
- Видео уроки по программированию Arduino с канала “Заметки Ардуинщика” – одни из самых подробных в рунете
- Поддержать автора за работу над уроками
- Обратная связь – сообщить об ошибке в уроке или предложить дополнение по тексту ([email protected])
Источник: alexgyver.ru