Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions zh-cn/demo/Music_Player_Example_zh-cn.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@

## 前提条件

1. 搭建开发环境,请参见 [环境搭建](../quickstart/Set_up_the_development_environment_zh-cn.md)。
1. 搭建开发环境,请参见[环境搭建](../quickstart/Set_up_the_development_environment_zh-cn.md)。

2. 下载源码,请参见 [下载 openvela 源码](../quickstart/Download_Vela_sources_zh-cn.md)。
2. 下载源码,请参见[下载 openvela 源码](../quickstart/Download_Vela_sources_zh-cn.md)。

## 步骤一 配置项目

Expand Down
4 changes: 2 additions & 2 deletions zh-cn/demo/Smart_Band_Example_zh-cn.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ Bandx 是一款智能手环演示,包括手表表盘、启动器、音乐、

## 前提条件

1. 搭建开发环境,请参见 [环境搭建](../quickstart/Set_up_the_development_environment_zh-cn.md)。
1. 搭建开发环境,请参见[环境搭建](../quickstart/Set_up_the_development_environment_zh-cn.md)。

2. 下载源码,请参见 [下载 openvela 源码](../quickstart/Download_Vela_sources_zh-cn.md)。
2. 下载源码,请参见[下载 openvela 源码](../quickstart/Download_Vela_sources_zh-cn.md)。

## 步骤一 配置项目

Expand Down
4 changes: 2 additions & 2 deletions zh-cn/demo/X_Track_zh-cn.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,9 @@

## 前提条件

1. 搭建开发环境,请参见 [环境搭建](../quickstart/Set_up_the_development_environment_zh-cn.md)。
1. 搭建开发环境,请参见[环境搭建](../quickstart/Set_up_the_development_environment_zh-cn.md)。

2. 下载源码,请参见 [下载 openvela 源码](../quickstart/Download_Vela_sources_zh-cn.md)。
2. 下载源码,请参见[下载 openvela 源码](../quickstart/Download_Vela_sources_zh-cn.md)。

## 步骤一 配置项目

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ openvela 蓝牙目前还能够支持多种开源、闭源协议栈,如Zephyr

### 1、蓝牙应用开发

对于第三方应用开发者,可以使用 openvela 快应用 QuickApp Feature ,它是基于 QuickJS 引擎使用 C++ 实现的一系列 API 接口,为三方应用提供系统访问能力,更多详情请参见 [蓝牙接口](https://doc.quickapp.cn/features/system/bluetooth.html)。
对于第三方应用开发者,可以使用 openvela 快应用 QuickApp Feature ,它是基于 QuickJS 引擎使用 C++ 实现的一系列 API 接口,为三方应用提供系统访问能力,更多详情请参见[蓝牙接口](https://doc.quickapp.cn/features/system/bluetooth.html)。

另外,蓝牙 Framework 还提供了 NDK 接口来使用蓝牙系统的所有能力。可以参阅目录 framework/include 中的头文件获取更多信息。

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ bttool> set iocap 0

| **参数名** | **说明** | **参数类型** | **参数值范围** | **默认值** |
| :----------- | :------------------- | :----------- | :------------------- | :--------- |
| local name | 本地蓝牙适配器名称。 | 字符串 | 最多输入 63 个字符。 | N/A |
| local name | 本地蓝牙适配器名称。 | 字符串 | 最多输入 64 个字符。 | N/A |

#### 示例

Expand Down Expand Up @@ -160,7 +160,7 @@ bttool> [bttool] Adapter update device name: Xiaomiii

| **参数名** | **说明** | **参数类型** | **默认值** |
| :--------- | :----------------------------------------------------------- | :----------- | :--------- |
| class | 本地蓝牙shipeiqi 类型,由 4 个部分组成。<br>bit 23~13 :主服务类型。<br>bit 12~8:主设备类型。<br>bit 7~2:次要设备类型。<br>bit 1~0:固定值 0。 | 十六进制整数 | 0x00280704 |
| class | 本地蓝牙适配器类型,由 4 个部分组成。<br>bit 23~13 :主服务类型。<br>bit 12~8:主设备类型。<br>bit 7~2:次要设备类型。<br>bit 1~0:固定值 0。 | 十六进制整数 | 0x00280704 |

#### 注意事项

Expand Down
16 changes: 9 additions & 7 deletions zh-cn/device_dev_guide/graphics/Framebuffer_Driver.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,14 @@ Framebuffer(帧缓存/显存)是一个用于存储一帧 LCD 图像数据的
以 480x320 的屏幕为例,在不同像素模式下,Framebuffer 的大小如下:

1. ARGB888 (32bpp):
1. 计算公式:`480 x 320 x 4 (bytes)`
2. 大小:614,400 字节

- 计算公式:`480 x 320 x 4 (bytes)`
- 大小:614,400 字节

2. RGB565 (16bpp):
1. 计算公式:`480 x 320 x 2 (bytes)`
2. 大小:307,200 字节

- 计算公式:`480 x 320 x 2 (bytes)`
- 大小:307,200 字节

## 二、Framebuffer的显示原理

Expand Down Expand Up @@ -106,7 +109,7 @@ errout_with_fb:
3. `void up_fbuninitialize(int display)`
- 执行与 `up_fbinitialize` 相反的操作,用于释放资源。通常可以实现为空,不执行任何操作。

### `3、struct fb_vtable_s` 结构
### 3、`struct fb_vtable_s` 结构

`fb_vtable_s` 是 Framebuffer 的核心结构,定义了与视频硬件交互的接口。以下是其主要功能模块:

Expand Down Expand Up @@ -147,7 +150,7 @@ errout_with_fb:
- `getpower`:获取面板的电源状态。
- `setpower`:启用或禁用面板电源。

#### 3.1 示例代码
#### 示例代码

以下是 `struct fb_vtable_s` 的部分定义示例:

Expand Down Expand Up @@ -257,7 +260,6 @@ struct fb_vtable_s

int (*blend)(FAR struct fb_vtable_s *vtable,
FAR const struct fb_overlayblend_s *blend);
# endif
#endif

/* Pan display for multiple buffers. */
Expand Down
47 changes: 23 additions & 24 deletions zh-cn/device_dev_guide/graphics/LCD_Driver.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,22 +104,21 @@ struct lcd_dev_s

```C
#ifdef CONFIG_LCD

ret = board_lcd_initialize();
if (ret < 0)
{
syslog(LOG_ERR, "ERROR: board_lcd_initialize() failed: %d\n", ret);
}

# ifdef CONFIG_LCD_DEV

ret = lcddev_register(0);
if (ret < 0)
{
syslog(LOG_ERR, "ERROR: lcddev_register() failed: %d\n", ret);
}

# endif
// Initialize the LCD board
ret = board_lcd_initialize();
if (ret < 0)
{
syslog(LOG_ERR, "ERROR: board_lcd_initialize() failed: %d\n", ret);
}
#ifdef CONFIG_LCD_DEV
// Register the LCD device
ret = lcddev_register(0);
if (ret < 0)
{
syslog(LOG_ERR, "ERROR: lcddev_register() failed: %d\n", ret);
}
#endif /* CONFIG_LCD_DEV */
#endif /* CONFIG_LCD */
```

#### 代码说明
Expand All @@ -140,25 +139,25 @@ struct lcd_dev_s
```C
struct lcd_planeinfo_s
{
/* LCD Data Transfer ******************************************************/
//对某一行写入npixels个数据
/* LCD Data Transfer */
/* 对某一行写入npixels个数据 */
int (*putrun)(fb_coord_t row, fb_coord_t col, FAR const uint8_t *buffer,
size_t npixels);
//更新矩形区域
/* 更新矩形区域 */
int (*putarea)(fb_coord_t row_start, fb_coord_t row_end,
fb_coord_t col_start, fb_coord_t col_end,
FAR const uint8_t *buffer);
//读取某一行npixels个数据
/* 读取某一行npixels个数据 */
int (*getrun)(fb_coord_t row, fb_coord_t col, FAR uint8_t *buffer,
size_t npixels);
//读取一个矩形区域的数据
/* 读取一个矩形区域的数据 */
int (*getarea)(fb_coord_t row_start, fb_coord_t row_end,
fb_coord_t col_start, fb_coord_t col_end,
FAR uint8_t *buffer);
/* Plane color characteristics ********************************************
//工作区,每个lcd 设备一个,多个layer共享一个buffer。至少存储一行的数据(bpp * xres/8),要和像素格式对齐
/* Plane color characteristics */
/* 工作区,每个lcd 设备一个,多个layer共享一个buffer。至少存储一行的数据(bpp * xres/8),要和像素格式对齐 */
uint8_t *buffer;
//一个像素占用的位数
/* 一个像素占用的位数 */
uint8_t bpp;
};
```
Expand Down
6 changes: 3 additions & 3 deletions zh-cn/device_dev_guide/graphics/VSync.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,12 +67,12 @@
>
> 中断相关内容介绍请参见 [Interrupt](https://en.wikipedia.org/wiki/Interrupt)。

MCU 和屏幕的简化版硬件连接如下图:
微控制单元(Microcontroller Unit,MCU)和屏幕的简化版硬件连接如下图:

![img](./figures/006.svg)

- TE (Tearing Effect):用于接收屏幕发送过来的同步信号,屏幕硬件会在每次即将显示新的帧之前,改变这个引脚的电平,MCU 通过 GPIO 中断接收和处理 TE 事件。
- MIPI:用于传输命令和数据的接口,LCD 控制器和 LCD 之间沟通的桥梁,CPU 通过操作 LCD 控制器来控制屏幕显示的内容,LCD 控制器也会在每次传输完毕后,通过中断来通知 CPU buffer 已经发送完成。
- TETearing Effect:用于接收屏幕发送过来的同步信号,屏幕硬件会在每次即将显示新的帧之前,改变这个引脚的电平,MCU 通过 GPIO 中断接收和处理 TE 事件。
- MIPI(Mobile Industry Processor Interface):用于传输命令和数据的接口,LCD 控制器和 LCD 之间沟通的桥梁,CPU 通过操作 LCD 控制器来控制屏幕显示的内容,LCD 控制器也会在每次传输完毕后,通过中断来通知 CPU buffer 已经发送完成。

LCD 驱动程序需要提供两个中断服务函数,用于接收和处理 LCD 发送过来的事件。

Expand Down
73 changes: 0 additions & 73 deletions zh-cn/device_dev_guide/media/media_framework.md

This file was deleted.

2 changes: 1 addition & 1 deletion zh-cn/device_dev_guide/media/server/media_server.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@

### 1、**Media Daemon**

Media Daemon 是 Media Server的核心,负责创建和管理Media的各个模块,如 Media Focus、Media Graph、Media Session、Media Policy等。Medid Daemon 的核心原理是使用**poll** 函数, 监听RPC socket fd,和音视频设备驱动注册的 message queue fd,处理 RPC 命令并触发 FFmpeg 工作。
Media Daemon 是 Media Server的核心,负责创建和管理Media的各个模块,如 Media Focus、Media Graph、Media Session、Media Policy等。Medid Daemon 的核心原理是使用 **poll** 函数, 监听RPC socket fd,和音视频设备驱动注册的 message queue fd,处理 RPC 命令并触发 FFmpeg 工作。

![Media Daemon架构图](../images/server/Media_Daemon_zh-cn.jpg)

Expand Down