[Start]开博了!

作为一个科班出身的IT工作者,作为一个6+年资的我,居然从来没有写过Blog。

想想好像也没有特殊的原因,只是一直没有这样的想法。所谓没到时候吧。

古人说30而立。在这个年龄,很有必要对自己做一些总结和梳理。

我的大世记:

2002年,在学校帮老师做ERP项目,却爱上了测试

2003年,毕业,来到了苏州这个人间天堂。做着自己喜欢的工作测试,不过变成了手机测试。

2004年,老板给机会,负责了一个些小项目。做项目都有压力,技术上,管理上都遇到瓶颈。有困难就有提升。觉得收获很大。

2005-2006 M其实是2004年底,遇到了自己最喜欢的项目Atlas---公司自己设计的一个reference MMI.作为测试负责人,从架构设计就参与进来,直到其变成一系列可销售的产品。多年后今天,已经跳槽的同事还说,这是她最难忘的项目,我带领大家充满激情的工作,即使工作到2点都很开心。激情岁月!

2006M-2007M年,team负责的项目变多,有inhouse soultion,也有实际的Phone产品.我的重心也台前转幕后,开始让年轻人们负责项目,主攻监督和培训,目标是建立一个专业team和营造舒心的气氛。

2008年,公司变动,我进入另一个测试部门。新老板也很好,我开始接触Linux,负责MID这类当年算新奇的产品。于是开始和北京,台湾啊,各种公司部门合作。最大收获是,不仅仅关注软件,对硬件有所了解

2009年,与Android的邂逅,目前它已经迷得我神魂颠倒。我却觉得对它了解很浅很浅,怎么办呢?压力很大,我要如何指挥大家一起完成与Android 的甜心meet?

### 博流 BL618 驱动 ST7789V 的实现方案 博流 BL618 是一款高性能的 Wi-Fi 和蓝牙双模 SoC,适用于物联网设备开发。其内部集成了强大的处理器核心以及丰富的外设接口,支持通过 SPI 接口与外围设备通信。ST7789V 是一种常见的 TFT-LCD 控制器芯片,广泛应用于小型彩色显示屏。 以下是基于博流 BL618 驱动 ST7789V 的实现方案及相关代码示例: #### 1. 硬件连接配置 为了驱动 ST7789V 显示屏,需要将 BL618 的 SPI 接口与显示屏的对应引脚相连。通常情况下,硬件连接如下所示: - **MOSI**: 数据传输线(BL618 的 MOSI 引脚连接到 ST7789V 的 DIN) - **SCLK**: 时钟信号线(BL618 的 SCLK 引脚连接到 ST7789V 的 CLK) - **CS**: 片选信号线(BL618 的 GPIO 引脚作为 CS 使用) - **DC**: 数据/命令控制线(BL618 的 GPIO 引脚作为 DC 使用) - **RST**: 复位信号线(可选,BL618 的 GPIO 引脚作为 RST 使用) 具体连接方式可能因实际电路设计而有所不同,请参照具体的硬件手册完成连线[^1]。 #### 2. 初始化函数设置 在软件层面,需初始化 SPI 总线和相关 GPIO 引脚以适配 ST7789V 的工作模式。以下是一个简单的初始化流程: ```c #include "bl618_spi.h" #include "st7789v_driver.h" void spi_init() { // 配置 SPI 参数 bl618_spi_config_t config; config.mode = BL618_SPI_MODE_0; // 设置 SPI 工作模式为 Mode 0 config.baud_rate = 40000000; // 设置 SPI 波特率为 40 MHz config.bit_order = BL618_MSB_FIRST; // 数据顺序:MSB First bl618_spi_init(SPI_PORT, &config); // 初始化指定的 SPI 端口 } void st7789v_init() { gpio_set_direction(GPIO_PIN_CS, GPIO_OUTPUT); gpio_set_direction(GPIO_PIN_DC, GPIO_OUTPUT); // 发送初始化指令序列给 ST7789V send_command(ST7789_SWRESET); // 软件复位 delay_ms(150); // 延迟等待复位完成 send_command(ST7789_SLPOUT); // 出睡眠模式 delay_ms(120); // 延迟等待退出睡眠 send_command(ST7789_COLMOD); // 设置颜色模式 send_data(0x55); // 16-bit color depth send_command(ST7789_MADCTL); // 设置显示方向 send_data(0xC8); // MADCTL_MY | MADCTL_BGR send_command(ST7789_DISPON); // 打开显示器 } ``` 以上代码片段展示了如何初始化 SPI 并发送必要的指令来启动 ST7789V 显示屏[^3]。 #### 3. 图像绘制功能 一旦完成了基本的初始化操作,就可以利用 API 来绘制图形或文字。下面提供了一个简单例子展示如何向屏幕上写入像素数据: ```c void draw_pixel(uint16_t x, uint16_t y, uint16_t color) { set_window(x, y, x + 1, y + 1); // 定义目标窗口区域 write_data(color); // 将颜色值写入缓冲区 } // 绘制矩形框 void draw_rectangle(uint16_t x_start, uint16_t y_start, uint16_t width, uint16_t height, uint16_t color) { for (uint16_t i = 0; i < width; ++i) { draw_pixel(x_start + i, y_start, color); draw_pixel(x_start + i, y_start + height - 1, color); } for (uint16_t j = 0; j < height; ++j) { draw_pixel(x_start, y_start + j, color); draw_pixel(x_start + width - 1, y_start + j, color); } } ``` 这些辅助函数可以帮助开发者快速构建复杂的 UI 界面[^2]。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值