【经验】国产MCU CS32F030驱动彩色LCD显示屏YB-TG240320C325B-N-A0的硬软件设计

2022-05-28 世强
MCU,CS32,YB-TG240320C325B-N-A0,CS32F030C8T6 MCU,CS32,YB-TG240320C325B-N-A0,CS32F030C8T6 MCU,CS32,YB-TG240320C325B-N-A0,CS32F030C8T6 MCU,CS32,YB-TG240320C325B-N-A0,CS32F030C8T6

芯海科技CS32F030是一款32bit cortex-M0内核的国产MCUYB-TG240320C325B-N-A0亿都设计的基于驱动芯片ST7789V2的320x240彩色LCD显示屏,本文介绍CS32驱动液晶屏相关的硬件连接和软件驱动。


1.硬件连接:

连接采用SPI通信,除了基础的SPI接口,需要额外注意:

RESET引脚要连接,在初始化之前需要reset清除相关显示。

RS引脚非常重要,在配置和初始化时,需要采用命令的方式,在进行图案和字母传输的时候,需要采用数据的方式。

注意LCS_A的背光电压和电流,建议使用3.3V。


2.软件驱动

#define  FONT_W  32

#define  FONT_H  32


#define PIC_WIDTH    160 //预备向LCD显示区域填充的图片的大小

#define PIC_HEIGHT   160


#define RED    0xF800 //定义颜色常量 

#define GREEN  0x07E0

#define BLUE   0x001F

#define WHITE  0xFFFF

#define BLACK  0x0000

#define GRAY   0xEF5D      //0x2410

#define GRAY75 0x39E7 

#define GRAY50 0x7BEF

#define GRAY25 0xADB5

// LCD SPI2 GPIO config

gpio_mode_set(GPIOB, GPIO_PIN_10, GPIO_MODE_OUT_PP(GPIO_SPEED_HIGH));//CS

gpio_mode_set(GPIOB, GPIO_PIN_13, GPIO_MODE_OUT_PP(GPIO_SPEED_HIGH));//sclk

gpio_mode_set(GPIOB, GPIO_PIN_14, GPIO_MODE_OUT_PP(GPIO_SPEED_HIGH));//SPI_A0  WR/D

gpio_mode_set(GPIOB, GPIO_PIN_15, GPIO_MODE_OUT_PP(GPIO_SPEED_HIGH));//mosi

gpio_mode_set(GPIOA, GPIO_PIN_12, GPIO_MODE_OUT_PP(GPIO_SPEED_HIGH));//RESET


#define LCD_RST(n) (n ? __GPIO_PIN_SET(GPIOA, GPIO_PIN_12) : __GPIO_PIN_RESET(GPIOA, GPIO_PIN_12))

#define LCD_WR(n)  (n ? __GPIO_PIN_SET(GPIOB, GPIO_PIN_14) : __GPIO_PIN_RESET(GPIOB, GPIO_PIN_14))

#define LCD_CS(n)  (n ? __GPIO_PIN_SET(GPIOB, GPIO_PIN_10) : __GPIO_PIN_RESET(GPIOB, GPIO_PIN_10))


#define LCD_SDA(n) (n ? __GPIO_PIN_SET(GPIOB, GPIO_PIN_15) : __GPIO_PIN_RESET(GPIOB, GPIO_PIN_15))

#define LCD_SCK(n) (n ? __GPIO_PIN_SET(GPIOB, GPIO_PIN_13) : __GPIO_PIN_RESET(GPIOB, GPIO_PIN_13))

驱动初始化:

void  SendDataSPI(unsigned char dat)

{  

//__SPI_8BITS_DATA_SEND(SPI2, dat); 

#if 1

   unsigned char i;

   

for(i = 0; i < 8; i++)

{   

LCD_SCK(0);

if(dat & 0x80)

{

LCD_SDA(1);

// delay_us(1);

}

else 

{

LCD_SDA(0);

// delay_us(1);

}

LCD_SCK(1);

// delay_us(1);

dat <<= 1;   

}

#endif

}


void WriteComm(unsigned int i)

{


LCD_CS(0);

LCD_WR(0);


SendDataSPI(i);

LCD_CS(1);


}

void WriteData(unsigned int i)

{

LCD_CS(0);

LCD_WR(1);


SendDataSPI(i);

LCD_CS(0);

}



void WriteDispData(unsigned char DataH,unsigned char DataL)

{

//CS0=0;


SendDataSPI(DataH);

SendDataSPI(DataL);


//CS0=1;

}


void LCD_Init(void)

{

LCD_RST(1); 

delay_ms(200);


LCD_RST(0); 

delay_ms(300);


LCD_RST(1); 

delay_ms(200);

WriteComm(0x11);     

delay_ms(480);



//boe2.8ips+st7789v2


WriteComm(0x36);     

WriteData(0x00);   


WriteComm(0x3A);     

WriteData(0x55);   //


WriteComm(0xB2);     

WriteData(0x0C);   

WriteData(0x0C);   

WriteData(0x00);   

WriteData(0x33);   

WriteData(0x33);   


WriteComm(0xB7);     

WriteData(0x75);   //VGH=14.97V, VGL=-10.43V  


WriteComm(0xBB);     //VCOM  

WriteData(0x2B);   


WriteComm(0xC0);     

WriteData(0x2C);   


WriteComm(0xC2);     

WriteData(0x01);   


WriteComm(0xC3);     //GVDD  

WriteData(0x0B);   


WriteComm(0xC4);     

WriteData(0x20);   


WriteComm(0xC6);     

WriteData(0x0F);   


WriteComm(0xD0);     

WriteData(0xA4);   

WriteData(0xA1);   


WriteComm(0xE0);     

WriteData(0xD0);   

WriteData(0x01);   

WriteData(0x04);   

WriteData(0x09);   

WriteData(0x0B);   

WriteData(0x07);   

WriteData(0x2E);   

WriteData(0x44);   

WriteData(0x43);   

WriteData(0x0B);   

WriteData(0x16);   

WriteData(0x15);   

WriteData(0x17);   

WriteData(0x1D);   


WriteComm(0xE1);     

WriteData(0xD0);   

WriteData(0x01);   

WriteData(0x05);   

WriteData(0x0A);   

WriteData(0x0B);   

WriteData(0x08);   

WriteData(0x2F);   

WriteData(0x44);   

WriteData(0x41);   

WriteData(0x0A);   

WriteData(0x15);   

WriteData(0x14);   

WriteData(0x19);   

WriteData(0x1D);   


WriteComm(0x29);  


}

void ExitSLP(void)

{

//FOR OTM3225A


//Power On sequence

WriteComm(0x0010);WriteData(0x0080); // SAP, BT[3:0], AP, DSTB, SLP

WriteComm(0x0011);WriteData(0x0000); // DC1[2:0], DC0[2:0], VC[2:0]

WriteComm(0x0012);WriteData(0x0000); // VREG1OUT voltage

WriteComm(0x0013);WriteData(0x0000); // VDV[4:0] for VCOM amplitude

delay_ms(200);                          // Dis-charge capacitor power voltage

WriteComm(0x0010);WriteData(0x1490); // SAP, BT[3:0], AP, DSTB, SLP, STB

WriteComm(0x0011);WriteData(0x0227); // R11h=0x0221 at VCI=3.3V DC1[2:0], DC0[2:0], VC[2:0]

delay_ms(50);                           // Delay 50ms

WriteComm(0x0012);WriteData(0x009B); // External reference voltage =Vci;

delay_ms(50);                           // Delay 50ms

WriteComm(0x0013);WriteData(0x1800); // R13h=0x1200 when R12=009D VDV[4:0] for VCOM amplitude

WriteComm(0x0029);WriteData(0x0027); // R29h=0x000C when R12=009D VCM[5:0] for VCOMH

delay_ms(50);                           // Delay 50ms

WriteComm(0x0007);WriteData(0x0133); // 262K color and display ON

}

void DispColor(unsigned int color)

{

unsigned int i,j;

BlockWrite(0,COL-1,0,ROW-1);

LCD_CS(0);

LCD_WR(1);

for(i=0;i<ROW;i++)

{

    for(j=0;j<COL;j++)

{    SendDataSPI(color>>8);

SendDataSPI(color);}

}

LCD_CS(1);

}

在初始化完成之后,主函数调用驱动:

LCD_Init();

ExitSLP();

DispColor(WHITE);

然后就可以进行数据显示了。

授权代理商:世强先进(深圳)科技股份有限公司
技术资料,数据手册,3D模型库,原理图,PCB封装文件,选型指南来源平台:世强硬创平台www.sekorm.com
现货商城,价格查询,交期查询,订货,现货采购,在线购买,样品申请渠道:世强硬创平台电子商城www.sekorm.com/supply/
概念,方案,设计,选型,BOM优化,FAE技术支持,样品,加工定制,测试,量产供应服务提供:世强硬创平台www.sekorm.com
集成电路,电子元件,电子材料,电气自动化,电机,仪器全品类供应:世强硬创平台www.sekorm.com
  • +1 赞 0
  • 收藏
  • 评论 0

本文由蜡笔小芯提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。

相关研发服务和供应服务

评论

   |   

提交评论

全部评论(0

暂无评论

相关推荐

【经验】在keil中添加芯海MCU CS32A010K8V7的支持包

本文将介绍在keil中添加芯海MCU CS32A010K8V7的支持包,芯海科技推出的CS32A010K8V7是一款32Pin脚的ARM 32位构架Cortex-M0核的MCU,内置64K Flash,1路SPI、2路USART支持FIFO等丰富的资源。

2023-05-18 -  设计经验 代理服务 技术支持 采购服务

【经验】芯海科技通用32位MCU有效规避意外掉电的硬件设计方案

本文以芯海科技MCU CS32L010F8U6为例,简述在进行硬件设计的时候如何有效规避因为意外掉电而造成工作异常的方案。在进行硬件电路设计的时候,我们可以在单片机供电引脚上接一个电容到GND以存储电量,防止芯片意外掉电

2022-11-11 -  设计经验 代理服务 技术支持 采购服务

【经验】芯海MCU CS32F030C8T6的串口打印乱码问题

芯海CS32F030C8T6的串口问题有客户在使用芯海的CS32F030C8T6 MCU的时候遇到如下问题:1、使用9600波特率无奇偶校验,刚上电的时候串口会发一些乱码出来。乱码打印等问题,本文提供解决方案。

2022-12-08 -  设计经验 代理服务 技术支持 采购服务

芯海科技(CHIPSEA)MCU产品介绍

描述- 芯海科技专注于混合信号集成电路设计,是国内信号链MCU的领先企业。公司成立于2003年,总部位于深圳,拥有合肥、西安研发中心。产品涵盖高精度ADC、高性能MCU、测量算法及物联网一站式解决方案,广泛应用于智慧健康、压力触控、智能家居感知、工业测量等领域。公司研发人员占比62%,拥有超过400项全球专利,其中授权专利超过100件。

型号- CS32GSTAR,031C8T6,CS32F03X,030K6T6,CS32F031C8,CSU38M20,CSA37F61,CSU32P20,CS32F031G6,CS32F031K8,CSE7759,CSE7758,CSU18M63,N76XX03,CSMXXX12X2,031K8U6,031G6U6,031K6U6,CST92F30,CS32F036,CSU8RP3117B,CS32A060,CSU8RP321X,T220TWS,CSU8RP1001,IQ00 PRO,CS32F030,CS32F031,CS1243,CSU18M88,CS7730,CSU32M10,CSU32M11,CS32G020E8U6,CS1242,CSU38F20,CSU18M53,CS32M10,IQ00,CSE7761,CXXX9F12X2,CS32F030C8,CSS21P10-DFN8,CS32G02X,CSU8RP3215,CSU8RP3216,CSS21P10-DFN6,CS1237,CS1239,CS1238,CS1233,CSS31P12,HA-A10T,CS1232,CSS31P13,CS32F030G6,CSS32P21,CS1231,CS32F031G8U6,CSU18M86,030F6P6,CSU32M1X,TM5XXX28,CS1270,CST92P1X,CSU8RP311X,CS32A0,CSU8RP3115B,N76E003,CSU8RP3119B,TMXXXA28,CS125X,CS32G020,030G6U6,CS32G021,CSU18M9X,CSS34P16,CSU18M65,CSU32P10,CS32F030F6,030C8T6,NEX 3S,CSU39F10,NEX3,NXXX003,CSE7759B,S030,CS32A039,CS32G020K8U6

芯海  - 商品及供应商介绍 代理服务 技术支持 采购服务

CS32F03x IAP 升级 芯海通用 MCU 应用笔记

描述- 本技术文档提供基于UART的CS32F03x MCU IAP升级方案,包括参考代码和PC端升级工具。文档详细介绍了硬件配置、代码实现、IAP上位机测试过程,并提供了用户程序示例。

型号- CS32F036,CS32F03RA,CS32F03X,CS32F035,CS32F030,CS32F031

2024/7/29  - 芯海  - 应用笔记或设计指南  - V1.1 代理服务 技术支持 采购服务 查看更多版本

【应用】芯海MCU CS32L010F8U6用于电子烟,封装为QFN20(3mm*3mm),运行频率24MHz

芯海的MCU CS32L010F8U6在电子烟中的应用,它是一款内嵌 32 位 ARM® Cortex®-M0 内核的超低功耗微控制器,最高可运行在24MHz,内置 64K 字节的嵌入式 Flash,4K 字节的 SRAM,具有高整合度、高抗干扰、高可靠性及高性价比等优势。

2023-03-29 -  应用方案 代理服务 技术支持 采购服务

【技术大神】如何选择一款合适的MCU驱动段码液晶屏

本文作者基于自己的实际经验,分享一种驱动段码屏的简易方法,可大幅降低成本。

2016-06-27 -  器件选型 代理服务 技术支持 采购服务

芯海科技CS32F061:集成12位DAC高性价比信号链MCU,具有丰富的模拟特性,满足高精度需要

芯海科技32位通用MCU系列全新推出集成12位DAC的高性价比信号链MCU芯片CS32F061。这款MCU具备丰富的模拟特性,内置可编程逻辑单元,可简化硬件设计,是高精度数据处理及灵活信号链设计的嵌入式系统的理想选择,在电动工具、电源管理、工业控制及通信等领域拥有广泛应用前景。

2024-08-13 -  产品 代理服务 技术支持 采购服务

芯海32位MCU选型表

芯海32位MCU选型表包括常规32位MCU、32位低功耗MCU、32位车规MCU。该选型表的Core包括M0和M3两种,内含型号是芯海科技基于Arm® Cortex®-M内核、高可靠性的32位通用微控制器。 包括多款产品,内嵌Flash存储器,集成高性能ADC、丰富的模拟外设、适用于工业控制的高级定时器和通信接口,满足工业应用的质量和可靠性标准,被广泛用于工业控制、汽车电子、智能家居等领域。

产品型号
品类
Core
Freq.(MHz)
Flash(Bytes)
SRAM(Bytes)
IO
Adv.Timer
16bit GP Timer
SysTick
FWDT/WWDT
UART
SPI
I2C
12bit ADC Units(ch)
Temp.Sensor
Operating Temp.(℃)
Supply Voltage(V)
Package
CS32F030F6P6-RA
32位MCU
M0
48MHz
32KBytes
4KBytes
15
1
5
1
1/1
4
1
1
1(9)
Y
-40℃~85℃
2.0V~5.5V
TSSOP20

选型表  -  芯海 立即选型

芯海通用 MCU 应用笔记 CS32F0XX ADC 外设模块

型号- CS32,CS32F03X,CS32F0XX,CS32F0XX 系列

2024-04-01  - 芯海  - 应用笔记或设计指南  - V1.0 代理服务 技术支持 采购服务

【选型】国产MCU CS32F030替代STM32F030,2~5.5V宽压供电,-40~105℃工作温度范围更广

STM32F030系列是意法半导体最受欢迎的M0处理器MCU之一,最近因为疫情、贸易战等综合因素影响,ST的供货周期无限拉长,价格也水涨船高。国产MCU芯海科技CS32F030系列可以替代STM32F030系列,宽压供电,工作温度范围更广,解决ST缺货涨价问题。

2020-11-05 -  器件选型 代理服务 技术支持 采购服务

芯海通用 MCU 应用笔记 CS32F03x-RA 系列兼容性和移植指南

型号- CS32F030F6P6,CS32F030F8P7-RA,CS32F031K8U7-RA,CS32F03X 系列,CS32F0,CS32F036K6T7,CS32F031XXX7-RA,CS32F031K8S6-RA,CS32F030XXX7-RA,CS32F031G8U6-RA,CS32F030-RA,CS32F035K6U6,CS32F03X-RA,CS32F030F6P6-RA,CS32F030-RA 系列,CS32F0 系列,CS32F030C8T7-RA,CS32F036 系列,CS32F031K8V6-RA,CS32F03X-RA 系列,CS32F031G6U6,CS32F030 系列,CS32F036,CS32F03XXXX7-RA,CS32F03X,CS32F031K8U6-RA,CS32F030XXX6-RA,CS32F030C8T6,CS32F035,CS32F030,CS32F036K6U7,CS32F031,CS32F030K6T6,CS32F031-RA,CS32F031XXX6-RA,CS32F031G8U7-RA,CS32F031-RA 系列,CS32F0356,CS32F036F6P7,CS32F031K8U6H,CS32F031C8T6,CS32F035 系列,CS32F030C8T6-RA,CS32F031 系列,CS32F03XXXX6-RA

2023-06-12  - 芯海  - 用户指南  - V1.0 代理服务 技术支持 采购服务 查看更多版本

【经验】芯海科技8位OTP MCU CSU32P20-SOP16实际应用和仿真器之间的差别

大家都知道OPT MCU存在一个缺点:不可擦除,也就是说只能编程一次,不能重复烧入程序,所以当我们在开发的时候会使用仿真器进行开发,当程序开发测试完成后,需要使用烧录器将程序烧入芯海科技MCU CSU32P20-SOP16 。

2022-08-11 -  设计经验 代理服务 技术支持 采购服务

芯海科技推出基于CS32F03X系列MCU产品的平板电脑及其皮套键盘的整体解决方案

芯海科技推出了基于旗下CS32F03X系列MCU产品的平板电脑及其皮套键盘的整体解决方案。基于芯海科技CS32F03X系列MCU的平板电脑皮套键盘整体解决方案,凭借其过硬的技术创新、简洁的连接方式、高效的通信协议以及卓越的可靠性,为平板电脑及配套键盘市场带来更加优质、高效的开发选择。

2024-03-30 -  产品 代理服务 技术支持 采购服务
展开更多

电子商城

查看更多

品牌:芯海

品类:32位MCU

价格:¥4.1177

现货: 8,684

品牌:亿都

品类:LCD MODULE

价格:

现货: 0

品牌:芯海

品类:32位MCU

价格:¥3.0024

现货: 60,600

品牌:芯海

品类:32位MCU

价格:¥2.6934

现货: 20,928

品牌:芯海

品类:MCU

价格:¥2.1177

现货: 6,676

品牌:芯海

品类:8位MCU

价格:¥1.2000

现货: 5,802

品牌:芯海

品类:8位RISC MCU

价格:¥2.0000

现货: 5,050

品牌:芯海

品类:32位MCU

价格:¥3.1765

现货: 4,900

品牌:芯海

品类:32位MCU

价格:¥5.0667

现货: 4,039

品牌:芯海

品类:8位 RISC OTP MCU

价格:¥1.0589

现货: 3,320

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

品牌:RENESAS

品类:16-BIT MCU

价格:¥5.5190

现货:910,635

品牌:RENESAS

品类:MCU

价格:¥5.1500

现货:200,000

品牌:恒烁

品类:MCU

价格:¥1.0800

现货:154,600

品牌:Advanced Digital Chips

品类:MCU

价格:¥6.6000

现货:100,000

品牌:RENESAS

品类:MCU

价格:¥5.8041

现货:86,925

品牌:RENESAS

品类:32-BIT GENERAL MCU

价格:¥7.3800

现货:76,715

品牌:RENESAS

品类:32-BIT GENERAL MCU

价格:¥15.3000

现货:75,000

品牌:Advanced Digital Chips

品类:MCU

价格:¥9.0000

现货:64,841

品牌:ST

品类:MCU

价格:¥15.5600

现货:58,800

品牌:RENESAS

品类:32-BIT GENERAL MCU

价格:¥257.6400

现货:58,799

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

服务

查看更多

TFT LCD液晶显示屏/模组定制

可定制显示屏的尺寸0.96”~15.6”,分辨率80*160~3840*2160,TN/IPS视角,支持RGB、MCU、SPI、MIPI、LVDS、HDMI接口,配套定制玻璃、背光、FPCA/PCBA。

最小起订量: 1000 提交需求>

TFT显示屏/彩屏定制

可定制显示屏的尺寸范围0.96“~15.6”;工作温度范围:-30℃~80℃,分辨率:128*128~1920*1080;亮度:300~1200。

最小起订量: 1000 提交需求>

查看更多

授权代理品牌:接插件及结构件

查看更多

授权代理品牌:部件、组件及配件

查看更多

授权代理品牌:电源及模块

查看更多

授权代理品牌:电子材料

查看更多

授权代理品牌:仪器仪表及测试配组件

查看更多

授权代理品牌:电工工具及材料

查看更多

授权代理品牌:机械电子元件

查看更多

授权代理品牌:加工与定制

世强和原厂的技术专家将在一个工作日内解答,帮助您快速完成研发及采购。
我要提问

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

研发客服
商务客服
服务热线

联系我们

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

投诉与建议

E-mail:claim@sekorm.com

商务合作

E-mail:contact@sekorm.com

收藏
收藏当前页面