mirror of
https://github.com/freebip/BipEmulator.git
synced 2025-05-18 17:36:32 +03:00
Update README.md
Исправления и дополнения
This commit is contained in:
parent
401e31b331
commit
46c831a4d2
84
README.md
84
README.md
@ -1,51 +1,75 @@
|
|||||||
# Bip Emulator
|
# Bip Emulator
|
||||||
|
|
||||||
Эмулятор окружения BipOS для часов Amazfit Bip
|
Эмулятор окружения BipOS для часов Amazfit Bip
|
||||||
|
|
||||||
## Назначение
|
## Назначение
|
||||||
|
|
||||||

|
Написание и отладка приложений для часов Amazfit Bip под управлением мода BipOS (0.5.X)
|
||||||
|
в среде Microsoft Visual Studio 2019
|
||||||
|
|
||||||
Написание и отладка приложений для часов Amazfit Bip под управлением мода BipOS (0.5.X)
|

|
||||||
в среде Microsoft Visual Studio 2019
|
|
||||||
|
|
||||||
## Описание
|
## Описание
|
||||||
|
|
||||||
Эмулятор состоит из двух модулей: Host и Proxy.
|
Эмулятор состоит из двух модулей: Host и Proxy.
|
||||||
Proxy обрабатывает вызовы функций библиотеки Libbip поступающие от программы, работа которой
|
Proxy обрабатывает вызовы функций библиотеки Libbip поступающие от программы, работа которой
|
||||||
происходит в эмуляторе. Часть этих вызовов модуль Proxy обрабатывает сам, часть перенаправляет
|
происходит в эмуляторе. Часть этих вызовов модуль Proxy обрабатывает сам, часть перенаправляет
|
||||||
модулю Host.
|
модулю Host.
|
||||||
На модуль Host возложены более высокоуровневые задачи:
|
На модуль Host возложены более высокоуровневые задачи:
|
||||||
* Обработка вызовов графических функций и отображение результата их работы на пользовательском интерфейсе.
|
* Обработка вызовов графических функций и отображение результата их работы на пользовательском интерфейсе.
|
||||||
* Обработка ввода команд пользователя, специфичных для эмулируемого устройства.
|
* Обработка ввода команд пользователя, специфичных для эмулируемого устройства.
|
||||||
* Эмуляция специфичных данных эмулируемого устройства (Давление, Геолокационные координаты и пр.)
|
* Эмуляция специфичных данных эмулируемого устройства (Давление, Геолокационные координаты и пр.)
|
||||||
* Отоброжение отладочных данных программы
|
* Отоброжение отладочных данных программы
|
||||||
|
|
||||||
## Изображения
|
## Изображения
|
||||||
|
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
|
||||||
## Использование
|
## Использование
|
||||||
|
|
||||||
* Добавьте исходный код в Proxy модуль.
|
* Добавьте исходный код в Proxy модуль.
|
||||||
* Откомпилируйте Proxy модуль.
|
* Откомпилируйте Proxy модуль.
|
||||||
* Запустите Host модуль.
|
* Запустите Host модуль.
|
||||||
* Завершите исполнение эмулятора
|
* Завершите исполнение эмулятора
|
||||||
* Исправьте исходный код
|
* Исправьте исходный код
|
||||||
* Повторять со второго пункта бесконечное кол-во раз
|
* Повторять со второго пункта бесконечное кол-во раз
|
||||||
|
|
||||||
## Пример
|
## Особенности использования
|
||||||
|
|
||||||
Для демонстрации возможностей эмулятора в него добавлено приложение Календарь.
|
В данном проекте используется связка C# <-> CLI/C++.
|
||||||
|
Поэтому добавляемые исходные файлы должны иметь расширение .cpp (не относится к заголовочным файлам)
|
||||||
|
***Но*** код должен быть написан в соответствии со стандартами чистого Си т.к. в последствии его предстоит
|
||||||
|
собирать с помощью gnu toolchain под Си.
|
||||||
|
|
||||||

|
Так как при использовании расширения .cpp мы переводим исходные файлы в разряд C++, то на код накладываются
|
||||||
|
более суровые ограничения (например, в плане приведения типов по-умолчанию)
|
||||||
|
|
||||||
## Примечание
|
Было так:
|
||||||
|
```
|
||||||
|
void* get_ptr_temp_buf_2();
|
||||||
|
struct calend_** calend_p = get_ptr_temp_buf_2();
|
||||||
|
```
|
||||||
|
Надо так:
|
||||||
|
```
|
||||||
|
void* get_ptr_temp_buf_2();
|
||||||
|
struct calend_** calend_p = (calend_**) get_ptr_temp_buf_2();
|
||||||
|
```
|
||||||
|
|
||||||
У проекта WIP статус. Обработка части функций библиотеки Libbip не реализована.
|
Proxy модуль является динамически линкуемой библиотекой (.dll), от которой зависит компиляция Host модуля.
|
||||||
|
Поэтому после всех изменений принудительно откомпилируйте Proxy модуль, а после этого запускайте программу.
|
||||||
|
|
||||||
|
## Пример
|
||||||
|
|
||||||
|
Для демонстрации возможностей эмулятора в него добавлено приложение [Календарь](https://github.com/MNVolkov/Calend)
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
## Примечание
|
||||||
|
|
||||||
|
У проекта WIP статус. Обработка части функций библиотеки Libbip не реализована.
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user