
开源协议
:GPL 3.0
(未经作者授权,禁止转载)描述
简介
基于泰山派开发板的平板
不失去其开发板地位
参考链接置顶
1.第09章.【立创·泰山派RK3566】项目案例 - 飞书云文档 (feishu.cn)
2.泰山派MIPI DSI 转 RGB 适配器 泰山派MIPI DSI 转 RGB 适配器 - 嘉立创EDA开源硬件平台 (oshwhub.com)
3.ICN6211调试说明V0.4 - 文档之家 (doczj.com)
等
硬件部分
1.泰山派接入(上半部分为mipi接入,下半部分为触摸接入)
2.桥接芯片ICN6211
3.液晶屏驱动电压部分 适用于大部分7寸RGB屏幕
背光部分(此部分不焊接,泰山派的背光驱动电路适配此款屏幕背光)
4.屏幕接口 (左边接入屏幕GT911,右边排线接入显示排线)
5.去耦及屏幕功能选择电路.
6.如果复刻建议去除的部分(用两个测试点 代替就行)
7.其他说明:
布线MIPI差分对内及对间做阻抗匹配
屏幕驱动电压部分与数字低 单点接地
元件选型请选用立创商城正品元件
排线均选择反向的
软件部分(详情查看附件)
液晶屏初始化部分
&dsi1 {
status = "okay";
rockchip,lane-rate = <816>;//816
dsi1_panel: panel@0 {
status = "okay";
compatible = "simple-panel-dsi";
reset-gpios = <&gpio3 RK_PC1 GPIO_ACTIVE_LOW>;
pinctrl-names = "default";
pinctrl-0 = <&dsi1_rst_gpio>;
reg = <0>;
backlight = <&backlight>;
reset-delay-ms = <50>;
enable-delay-ms = <10>;
prepare-delay-ms = <10>;
unprepare-delay-ms = <10>;
disable-delay-ms = <10>;
init-delay-ms = <10>;
dsi,flags = <(MIPI_DSI_MODE_VIDEO | MIPI_DSI_MODE_VIDEO_BURST |
MIPI_DSI_MODE_LPM | MIPI_DSI_MODE_EOT_PACKET)>;
dsi,format = ;
dsi,lanes = <2>;
panel-init-sequence = [
23 01 02 7A C1 // Enable MIPI command config regsiters
23 01 02 20 00 //HACTIVE[7:0]
23 01 02 21 58 //VACTIVE[7:0]
23 01 02 22 24 //VACTIVE[11:8] for bit7-4,HACTIVE[11:8] for bit 3-0
23 01 02 23 A0 //HFP
23 01 02 24 02 //HSW
23 01 02 25 A0 //HBP
23 01 02 26 00 //HFP[9:8] for bit5-4,HSW[9:8] for 3-2,HBP[9:8] for bit 1-0
23 01 02 27 0C //VFP
23 01 02 28 02 //VS
23 01 02 29 17 //VBP
23 01 02 34 80 //SYNC_EVENT_DLY[7:0]
23 01 02 36 A0 //HSW_MIN
23 01 02 86 29 //DSI_CTRL register
23 01 02 B5 A0 //MIPI_PD_CK_LANE register
23 01 02 5C FF //PLL_WT_LOCK[7:0]
// 23 01 02 14 43 // Test mode
// 23 01 02 2A 49 // Test mode 彩条测试 这2条
// 23 01 02 2A 00 // DE Polarity
// 23 01 02 2A 01 //2A 01 //BIST POL Register
23 01 02 56 92 //内部时钟时设置为0x93,mipi作为像素时钟时设置为0x92
23 01 02 6B 53 //73 // PLL DIV //PLL_REF_DIV register 31
23 01 02 69 18 //29 // PLL INT //PLL_INT[7:0] 23
//PCLK
23 01 02 10 40 //SYS_CTRL_0 register
23 01 02 11 88 //88 //SYS_CTRL_1 register
23 01 02 B6 20 //MIPI_FORCE_0 register
23 01 02 51 20 //PLL_CTRL_1 register
23 01 02 09 10 // CONFIG_FINISH register,disply on
];
panel-exit-sequence = [
];
disp_timings1: display-timings {
native-mode = <&dsi1_timing0>;
dsi1_timing0: timing0 {
clock-frequency = <51000000>; //clock-frequency = <43000000>;
hactive = <1024>;
hfront-porch = <160>;
hsync-len = <2>;
hback-porch = <160>;
vactive = <600>;
vfront-porch = <12>;
vsync-len = <2>;
vback-porch = <23>;
hsync-active = <0>;
vsync-active = <0>;
de-active = <0>;
pixelclk-active = <0>;
swap-rb = <0>;
swap-rg = <0>;
swap-gb = <0>;
};
};
需要单独写一个触摸屏的配置函数,
static u8 GT911_Send_Cfg(u8 mode,struct i2c_client *client)//修改
{
int ret;
u8 buf[2];
u8 gt_cfgs_reg[2] = {0x80,0x47};
u8 GT_CHECK_REG[2] = {0x80,0xff};
u8 i=0;
buf[0] = 0;
buf[1] = mode;
for(i=0;i
{
buf[0]+=GT911_CFG_TBL[i];
}//计算校验和
buf[0]=(~buf[0])+1;
ret = my_touch_i2c_write(client, gt_cfgs_reg,sizeof(gt_cfgs_reg), GT911_CFG_TBL, sizeof(GT911_CFG_TBL));
//发送寄存器配置
if (ret < 0){
MY_DEBUG("I2C write jicunqipeizhi error!");
}
ret = my_touch_i2c_write(client, GT_CHECK_REG,sizeof(GT_CHECK_REG), buf, sizeof(buf));
//写入校验和,和配置更新标记
if (ret < 0){
MY_DEBUG("I2C write jiaoyanwei error!");
}
return 0;
}
触摸初始化序列(184个寄存器)
u8 GT911_CFG_TBL[]= {
0x62,0x00,0x04,0x58,0x02,0x05,0x3D,0x00,0x11,0x8F,
0x1E,0x0F,0x3C,0x3C,0x03,0x05,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x1A,0x1C,0x1E,0x14,0x8A,0x2A,0x0C,
0x2A,0x28,0xEB,0x04,0x00,0x00,0x01,0x61,0x03,0x2C,
0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x14,0x3C,0x94,0xC5,0x02,0x05,0x00,0x00,0x04,
0xB7,0x16,0x00,0x9F,0x1B,0x00,0x8B,0x22,0x00,0x7B,
0x2B,0x00,0x70,0x36,0x00,0x70,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x18,0x16,0x14,0x12,0x10,0x0E,0x0C,0x0A,
0x08,0x06,0x04,0x02,0xFF,0xFF,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x24,0x22,0x21,0x20,0x1F,0x1E,0x1D,0x1C,
0x18,0x16,0x13,0x12,0x10,0x0F,0x0A,0x08,0x06,0x04,
0x02,0x00,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00
};
外壳
*本项目中pcb贴紧屏幕放置而且粘合,所以未在外壳 中体现
预留按键孔,预留主芯片散热孔
其他
视频为压缩后的效果,实际效果比较好,
另外,打印的3d外壳迟迟没到,等到了再分享
设计图

BOM


评论