PCtolLCD2002完美版下载以及教程

软件下载

通过网盘分享的文件:PCtoLCD2002.rar

链接: https://pan.baidu.com/s/1eRVhcjShOafdEleocABhVg 提取码: 2002
BMP图片

1:字体配置

字体宽度和高度配置。写显示函数时候需要知道,英文和数字设定的字宽只有一半

所以看到的只有14*28

2:手画BMP图片

模式---选择图片模式

文件-新建-设置宽*高

手画图片注意蓝色格子才是显示前景,黑色是背景,

鼠标左键为添加,鼠标右键为删减

需要知道图片大小,写函数需要用到

显示图片

3:添加BMP图片

选择文件-打开-选择BMP图片-生成字模

如果DEMO函数中没有显示合适的函数,可以自己写,下面提供参考函数,写出显示自定义字体大小,和自定义图片大小的函数。局部刷新等函数。

4:演示视频

演示视频

5:代码实现

由于我这个是51的主控8051核时钟中有几MHZ,用模拟SPI的方式。实际只有213KHZ,本视频仅为演示使用。

5.2:显示图片函数和局部刷新

/**********************************************************************************************************

**函数名称 : Picture_display

**函数描述 :显示BMG格式14*28

**输 入 :None

**输 出 :None

**********************************************************************************************************/

void Picture_display(unsigned int x,unsigned int y,unsigned long color,const unsigned char *point,const unsigned char Sel)

{

unsigned int row,col,i;

unsigned char temp;

unsigned char byte_per_line = 2; //总字节 = 高度 × ((宽度 + 7) / 8)

unsigned char bitt;

TFT_SEND_CMD(0x2A);

TFT_SEND_DATA(x>>8);

TFT_SEND_DATA(x);

TFT_SEND_DATA((x+14-1)>>8);

TFT_SEND_DATA(x+14-1);

TFT_SEND_CMD(0x2B);

TFT_SEND_DATA(y>>8);

TFT_SEND_DATA(y);

TFT_SEND_DATA((y+28-1)>>8);

TFT_SEND_DATA(y+28-1);

TFT_SEND_CMD(0x2C);

if(Sel)

{

for(row=0; row<28; row++) //遍历高

{

for(col=0; col<byte_per_line; col++)

{

temp = *point++;

for(bitt=0; bitt<8; bitt++) //设定像素点

{

if((col*8+bitt)>=14) break; //遍历宽

if(temp & 0x01) //LSB

{

TFT_SEND_DATA(color>>16);

TFT_SEND_DATA(color>>8);

TFT_SEND_DATA(color);

}

else

{

TFT_SEND_DATA(0);

TFT_SEND_DATA(0);

TFT_SEND_DATA(0);

}

temp >>= 1;

}

}

}

}

else

{

for(i=0; i<14*28; i++)

{

TFT_SEND_DATA(0);

TFT_SEND_DATA(0);

TFT_SEND_DATA(0);

}

}

}
置1显示图片,置0局部清空图片,
设定图片或字体时注意查看像素大小

5.3:显示字体

void display_char52_52_clear(unsigned int x,unsigned int y)

{

unsigned int row,col;

unsigned char bitt,temp;

unsigned char byte_per_line = 4; //byte_per_line = (26 + 7) / 8 = 33 / 8 = 4 byte

TFT_SEND_CMD(0x2A);

TFT_SEND_DATA(x>>8);

TFT_SEND_DATA(x);

TFT_SEND_DATA((x+26-1)>>8);

TFT_SEND_DATA(x+26-1);

TFT_SEND_CMD(0x2B);

TFT_SEND_DATA(y>>8);

TFT_SEND_DATA(y);

TFT_SEND_DATA((y+52-1)>>8);

TFT_SEND_DATA(y+52-1);

TFT_SEND_CMD(0x2C);

for(row=0; row<52; row++) //高

{

for(col=0; col<byte_per_line; col++)

{

for(bitt=0; bitt<8; bitt++) //像素 8

{

if((col*8+bitt)>=26) break; //宽

TFT_SEND_DATA(0);

TFT_SEND_DATA(0);

TFT_SEND_DATA(0);

temp >>=1;

}

}

}

}

和显示图片一样的原理

相关推荐
朝发如雪2 小时前
快速掌握单片机基础(3)(PWM)(通信协议基础)(串口通信时序与参数)(电气特性与电平标准)(51单片机UART寄存器配置)(串口应用层协议)
单片机
天空'之城5 小时前
单片机基础核心知识点汇总(四十)
单片机·嵌入式硬件
smartpi_ai5 小时前
离线语音模块误识别问题全面解决方案:命令词设计、防误触与灵敏度调优指南
人工智能·单片机·语音识别
LCG元5 小时前
STM32F103 驱动 HX711 称重实战:DOUT 就绪时序、增益切换陷阱与两点标定精度实测
stm32·单片机·嵌入式硬件
小李不想当小白7 小时前
DMA直接存储器存取(STM32标准库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·分享
朝发如雪8 小时前
快速掌握单片机基础(6)(数据处理与传送指令)(跳转与分支指令)(栈操作与混合编程)(程序状态寄存器操作指令)(内存映射)
单片机·arm
blue_ice .8 小时前
Verilog DDS 数字信号发生器:DAC 输出模拟波形与 ADC 回采观测
开发语言·单片机·嵌入式硬件·fpga开发
深圳市恒锐丰科技杨生8 小时前
EG4318 / EG4319 / EG4320 铅酸电池三段式充电副边管理芯片|屹晶 EGmicro
嵌入式硬件·硬件工程
深圳市恒锐丰科技杨生8 小时前
EG1253 电流模式 PWM 控制器|屹晶 EGmicro
嵌入式硬件·硬件工程
远翔调光芯片^138287988728 小时前
ECP5702能芯科技PD取电芯片在市场上的优势有哪些?
开发语言·人工智能·单片机·嵌入式硬件·智能家居