中山网站制作策划wordpress nginx 302

张小明 2025/12/31 7:26:37
中山网站制作策划,wordpress nginx 302,备案域名一定要建好网站吗,昆明网站建设优化一、相关概念介绍1 光的三原色RGB : 三原色#xff08;Red Green Blue#xff09; 在计算机中用16位进行表示 #xff08;5 6 5#xff09;2 嵌入式LCD显示模块接口类型LCD的接口有多种#xff0c;分类很细。主要看LCD的驱动方式和控制方式#xff0c;目前彩色LCD的连接…一、相关概念介绍1 光的三原色RGB : 三原色Red Green Blue 在计算机中用16位进行表示 5 6 52嵌入式LCD显示模块接口类型LCD的接口有多种分类很细。主要看LCD的驱动方式和控制方式目前彩色LCD的连接方式一般有这么几种MCU模式、RGB模式、SPI模式、VSYNC模式、MDDI模式、DSI模式。但应用比较多的就是MCU模式和RGB模式2.1RGB模式RGB模式是大屏采用较多的模式比如我们电脑显示器。对于RGB接口的LCM主机输出的直接是每个像素的RGB数据不需要进行变换GAMMA校正等除外对于这种接口需要在主机部分有个LCD控制器(平常所说的显卡)以产生RGB数据和点、行、帧同步信号。2.2MCU模式因为主要针对单片机的领域在使用因此得名其主要特点是价格便宜。MCU-LCD接口的标准术语是Intel提出的8080总线标准16位 并行因此在很多文档中用I80来指MCU-LCD屏。对于MCU接口的LCMLCD Module其内部的芯片就叫LCD驱动器都带GRAM显存。主要功能是对主机发过的数据/命令进行变换变成每个像素的RGB数据使之在屏上显示出来。STM32需要发出特殊的指令告知LCD芯片显示内容这个指令分为两部分1LCD的屏幕配置分辨率亮度2LCD屏幕的显示内容传递数据有两种情况1配置或内容2配置的数值2.3总结对比两种模式的区别控制主体的区别RGB 模式也叫 RGB 接口模式这种模式下LCD 屏幕的显示时序比如像素时钟、行同步、场同步等是由外部的控制器来提供的在 STM32 开发里这个外部控制器一般就是 STM32 的 FMC灵活存储控制器或者专门的 LCD 控制器外设屏幕只负责按照接收到的时序和数据来完成显示自身不产生时序信号。MCU 模式也叫 8080 并行接口模式这种模式下LCD 屏幕自身带有显存和显示控制器STM32 只需要通过并行接口把需要显示的数据写入到屏幕的显存中之后的显示时序、数据的读取和屏幕刷新都是由屏幕自己的控制器来完成的。数据传输的区别RGB 模式是一种同步的数据流传输STM32 会按照屏幕要求的像素时钟持续的向屏幕传输每一个像素的 RGB 数据屏幕会实时的把接收到的数据显示出来这种模式的延迟很低适合显示动态的、高速变化的内容比如视频。MCU 模式是一种异步的传输STM32 只在需要更新显示内容的时候才会把数据写入到屏幕的显存写入完成之后STM32 就可以去处理其他的任务屏幕会从自己的显存中读取数据来完成显示这种模式下STM32 的资源占用会更低。可以把这两种模式类比成RGB 模式像是老师实时的把内容念给学生听学生听完立刻就展示出来而 MCU 模式像是老师把要讲的内容先写在学生的笔记本上学生之后自己看笔记本的内容来展示。3 液晶模块Z350IT002Z350IT002。这是一款 TFT LCD薄膜晶体管液晶显示器模块。TFT LCD 以其优秀的显示性能和低功耗特性而广泛应用于各种电子设备。3.1分辨率模块的分辨率为320RGB × 480点阵横向380像素点纵向480像素点像素是由三原色组成。3.2构造它由960个源source和480个门gate构成源是横向的门是控制纵向的像素点驱动。3.3​​​​​​​微控制器接口Z350IT002 设计了易于通过微控制器访问和控制的接口。这使得它非常适合于嵌入式系统或其他需要直接由微控制器控制显示屏的应用。3.4应用领域Z350IT002 特别适用于中小尺寸的显示需求如便携式设备、工业控制面板、小型嵌入式系统等。3.5显示效果作为一款TFT LCDZ350IT002可以提供良好的颜色对比度和亮度适合于需要中等分辨率和高色彩质量的应用。一款适用于多种中小型电子设备的TFT LCD显示模块其易于微控制器集成的特点使其成为许多嵌入式应用和工业产品的理想选择。4 控制器芯片ILI9486液晶模块Z350IT002内部使用的控制芯片是ILI9486。ILI9486 是一款流行的 LCD 控制器芯片由 Ilitek 公司生产通常用于驱动中小尺寸的 TFT薄膜晶体管LCD 显示屏。具有320RGBx480点的分辨率。它包括960通道的源驱动器和480通道的门驱动器以及用于320RGBx480点图形数据的345600字节GRAM和电源供应电路。另外ILI9486支持多种接口类型包括1并行CPU数据总线接口支持8位、9位、16位和18位。线和4线串行外设接口SPI。符合RGB16位/18位数据总线用于视频图像显示。高速串行接口提供一个数据和时钟通道支持最高达500Mbps的MIPI DSI链路。支持MDDI接口。4 使用STM32的FSMC来实现8080时序二、代码介绍需求介绍使用FSMC控制LCD显示我们想要的字符。硬件电路图D0-D15是16位数据总线接口。分别接FSMC的D0-D15。RST是LCD复位引脚低电平复位。接LCD-RSTPG15。RD是读控制引脚上升沿时读数据。接FSMC-NOEPD4。WR是写控制引脚上升沿时写数据。接FSMC-NWEPD5。RS是数据或命令选择引脚RS1写数据RS0写命令。接FSMC-A10PG0。CS是片选引脚低电平有效。接FSMC-NE4PG12。LEDA是背光电源3.0V-3.4V引脚。LEDK是背光亮度控制引脚。通过LCD-BGPB0来驱动MOS管Q5的导通电流。可以通过给LCD-BG输出PWM波来控制背光的亮度。占空比越大背光就会越亮。YD、XL、YU、XR是触摸屏控制引脚。扩展LCD的时候使用的是块1的地址一共4*64MB 256MB。NE4 所以地址范围是0X6C00 0000 ~ 0X6FFF FFFF寄存器的基地址是6C000000。LCD我们选择的是16位宽度的选择地址线时我们选择的是A10接LCD的D/CX数据/命令引脚。注意当使用16位宽的外部存储器时用HADDR[25:1]表示外部的FSMC_A[24:0]内部地址相当于左移了1位所以计算地址的时候要注意。当A100时表示写命令所以地址是0x6C00 0000。当A101时表示写数据所以地址是0x6C00 0000 111 0x6C00 0800FSMC.c代码配置/** * FSMC - LCD引脚初始化 */ void Dri_FSMC_LCD_GPIO_Init(void) { // 1. 开启时钟 // F, G, D, E RCC-APB2ENR | RCC_APB2ENR_IOPDEN; RCC-APB2ENR | RCC_APB2ENR_IOPEEN; RCC-APB2ENR | RCC_APB2ENR_IOPBEN; RCC-APB2ENR | RCC_APB2ENR_IOPGEN; // 2. 配置引脚 // 工作模式: 复用推挽输出 // MODE(11), CNF(10) // A10-A15 // !PG0-PG5 GPIOG-CRL | GPIO_CRL_MODE0; GPIOG-CRL | GPIO_CRL_CNF0_1; GPIOG-CRL ~GPIO_CRL_CNF0_0; // D0-D1 // !PD14, PD15 GPIOD-CRH | GPIO_CRH_MODE14; GPIOD-CRH | GPIO_CRH_CNF14_1; GPIOD-CRH ~GPIO_CRH_CNF14_0; GPIOD-CRH | GPIO_CRH_MODE15; GPIOD-CRH | GPIO_CRH_CNF15_1; GPIOD-CRH ~GPIO_CRH_CNF15_0; // D2, D3 // !PD0, PD1 GPIOD-CRL | GPIO_CRL_MODE0; GPIOD-CRL | GPIO_CRL_CNF0_1; GPIOD-CRL ~GPIO_CRL_CNF0_0; GPIOD-CRL | GPIO_CRL_MODE1; GPIOD-CRL | GPIO_CRL_CNF1_1; GPIOD-CRL ~GPIO_CRL_CNF1_0; // D4-D12 // PE7-PE15 GPIOE-CRL | GPIO_CRL_MODE7; GPIOE-CRL | GPIO_CRL_CNF7_1; GPIOE-CRL ~GPIO_CRL_CNF7_0; GPIOE-CRH | GPIO_CRH_MODE8; GPIOE-CRH | GPIO_CRH_CNF8_1; GPIOE-CRH ~GPIO_CRH_CNF8_0; GPIOE-CRH | GPIO_CRH_MODE9; GPIOE-CRH | GPIO_CRH_CNF9_1; GPIOE-CRH ~GPIO_CRH_CNF9_0; GPIOE-CRH | GPIO_CRH_MODE10; GPIOE-CRH | GPIO_CRH_CNF10_1; GPIOE-CRH ~GPIO_CRH_CNF10_0; GPIOE-CRH | GPIO_CRH_MODE11; GPIOE-CRH | GPIO_CRH_CNF11_1; GPIOE-CRH ~GPIO_CRH_CNF11_0; GPIOE-CRH | GPIO_CRH_MODE12; GPIOE-CRH | GPIO_CRH_CNF12_1; GPIOE-CRH ~GPIO_CRH_CNF12_0; GPIOE-CRH | GPIO_CRH_MODE13; GPIOE-CRH | GPIO_CRH_CNF13_1; GPIOE-CRH ~GPIO_CRH_CNF13_0; GPIOE-CRH | GPIO_CRH_MODE14; GPIOE-CRH | GPIO_CRH_CNF14_1; GPIOE-CRH ~GPIO_CRH_CNF14_0; GPIOE-CRH | GPIO_CRH_MODE15; GPIOE-CRH | GPIO_CRH_CNF15_1; GPIOE-CRH ~GPIO_CRH_CNF15_0; // D13-D15 // !PD8-PD10 GPIOD-CRH | GPIO_CRH_MODE8; GPIOD-CRH | GPIO_CRH_CNF8_1; GPIOD-CRH ~GPIO_CRH_CNF8_0; GPIOD-CRH | GPIO_CRH_MODE9; GPIOD-CRH | GPIO_CRH_CNF9_1; GPIOD-CRH ~GPIO_CRH_CNF9_0; GPIOD-CRH | GPIO_CRH_MODE10; GPIOD-CRH | GPIO_CRH_CNF10_1; GPIOD-CRH ~GPIO_CRH_CNF10_0; // CS(NE4), NWE, NOE // !PG12, PD5, PD4 GPIOG-CRH | GPIO_CRH_MODE12; GPIOG-CRH | GPIO_CRH_CNF12_1; GPIOG-CRH ~GPIO_CRH_CNF12_0; GPIOD-CRL | GPIO_CRL_MODE4; GPIOD-CRL | GPIO_CRL_CNF4_1; GPIOD-CRL ~GPIO_CRL_CNF4_0; GPIOD-CRL | GPIO_CRL_MODE5; GPIOD-CRL | GPIO_CRL_CNF5_1; GPIOD-CRL ~GPIO_CRL_CNF5_0; // LCD_RST, LCD_BG // 通用推挽输出 // !PG15, PB0 GPIOG-CRH | GPIO_CRH_MODE15; GPIOG-CRH ~GPIO_CRH_CNF15_1; GPIOG-CRH ~GPIO_CRH_CNF15_0; GPIOB-CRL | GPIO_CRL_MODE0; GPIOB-CRL ~GPIO_CRL_CNF0_1; GPIOB-CRL ~GPIO_CRL_CNF0_0; } /** * FSMC - LCD寄存器初始化 */ void Dri_FSMC_LCD_Register_Init(void) { // 1. 开启时钟 RCC-AHBENR | RCC_AHBENR_FSMCEN; // 2. 配置寄存器 // BCR - 4 // BTR - 5 FSMC_Bank1-BTCR[6] | FSMC_BCR4_WREN; // 写使能 FSMC_Bank1-BTCR[6] ~FSMC_BCR4_FACCEN; // 不访问FLASH FSMC_Bank1-BTCR[6] ~FSMC_BCR4_MWID_1; // 数据宽度 FSMC_Bank1-BTCR[6] | FSMC_BCR4_MWID_0; FSMC_Bank1-BTCR[6] ~FSMC_BCR4_MTYP; // 存储类型SRAM FSMC_Bank1-BTCR[6] ~FSMC_BCR4_MUXEN; // 地址、数据线不复用 FSMC_Bank1-BTCR[6] | FSMC_BCR4_MBKEN; // Bank使能 FSMC_Bank1-BTCR[7] ~FSMC_BTR4_ADDSET; FSMC_Bank1-BTCR[7] | (71 8); // 71 } /** * FSMC - LCD液晶初始化 */ void Dri_FSMC_LCD_Init(void) { // 配置引脚 Dri_FSMC_LCD_GPIO_Init(); // 配置FSMC(寄存器) Dri_FSMC_LCD_Register_Init(); }LCD.c代码#define LCD_ADDRESS_CMD (uint16_t *)(0x6C000000) #define LCD_ADDRESS_DATA (uint16_t *)(0x6C000800) /** * LCD液晶屏 - 开启背光 */ void Int_LCD_Background(void) { // PB0 - 拉高电平 GPIOB-ODR | GPIO_ODR_ODR0; SysTick_DelayMs(5); } /** * LCD液晶屏 - 复位 */ void Int_LCD_Reset(void) { // PG15 - 拉低电平 GPIOG-ODR ~GPIO_ODR_ODR15; // 5ms SysTick_DelayMs(5); // PG15 - 拉高电平 GPIOG-ODR | GPIO_ODR_ODR15; // 5ms SysTick_DelayMs(5); } void Int_LCD_WriteCmd(uint16_t cmd) { *LCD_ADDRESS_CMD cmd; } void Int_LCD_WriteData(uint16_t data) { *LCD_ADDRESS_DATA data; } /** * LCD液晶屏 - 配置初始化 */ void Int_LCD_Config_Init(void) { /* 1. 设置灰阶电压以调整TFT面板的伽马特性 正校准。一般出厂就设置好了 */ Int_LCD_WriteCmd(0xE0); Int_LCD_WriteData(0x00); Int_LCD_WriteData(0x07); Int_LCD_WriteData(0x10); Int_LCD_WriteData(0x09); Int_LCD_WriteData(0x17); Int_LCD_WriteData(0x0B); Int_LCD_WriteData(0x41); Int_LCD_WriteData(0x89); Int_LCD_WriteData(0x4B); Int_LCD_WriteData(0x0A); Int_LCD_WriteData(0x0C); Int_LCD_WriteData(0x0E); Int_LCD_WriteData(0x18); Int_LCD_WriteData(0x1B); Int_LCD_WriteData(0x0F); /* 2. 设置灰阶电压以调整TFT面板的伽马特性负校准 */ Int_LCD_WriteCmd(0XE1); Int_LCD_WriteData(0x00); Int_LCD_WriteData(0x17); Int_LCD_WriteData(0x1A); Int_LCD_WriteData(0x04); Int_LCD_WriteData(0x0E); Int_LCD_WriteData(0x06); Int_LCD_WriteData(0x2F); Int_LCD_WriteData(0x45); Int_LCD_WriteData(0x43); Int_LCD_WriteData(0x02); Int_LCD_WriteData(0x0A); Int_LCD_WriteData(0x09); Int_LCD_WriteData(0x32); Int_LCD_WriteData(0x36); Int_LCD_WriteData(0x0F); /* 3. Adjust Control 3 (F7h) */ /*LCD_WriteCmd(0XF7); Int_LCD_WriteData(0xA9); Int_LCD_WriteData(0x51); Int_LCD_WriteData(0x2C); Int_LCD_WriteData(0x82);*/ /* DSI write DCS command, use loose packet RGB 666 */ /* 4. 电源控制1*/ Int_LCD_WriteCmd(0xC0); Int_LCD_WriteData(0x11); /* 正伽马电压 */ Int_LCD_WriteData(0x09); /* 负伽马电压 */ /* 5. 电源控制2 */ Int_LCD_WriteCmd(0xC1); Int_LCD_WriteData(0x02); Int_LCD_WriteData(0x03); /* 6. VCOM控制 */ Int_LCD_WriteCmd(0XC5); Int_LCD_WriteData(0x00); Int_LCD_WriteData(0x0A); Int_LCD_WriteData(0x80); /* 7. Frame Rate Control (In Normal Mode/Full Colors) (B1h) */ Int_LCD_WriteCmd(0xB1); Int_LCD_WriteData(0xB0); Int_LCD_WriteData(0x11); /* 8. Display Inversion Control (B4h) 正负电压反转减少电磁干扰*/ Int_LCD_WriteCmd(0xB4); Int_LCD_WriteData(0x02); /* 9. Display Function Control (B6h) */ Int_LCD_WriteCmd(0xB6); Int_LCD_WriteData(0x0A); Int_LCD_WriteData(0xA2); /* 10. Entry Mode Set (B7h) */ Int_LCD_WriteCmd(0xB7); Int_LCD_WriteData(0xc6); /* 11. HS Lanes Control (BEh) */ Int_LCD_WriteCmd(0xBE); Int_LCD_WriteData(0x00); Int_LCD_WriteData(0x04); /* 12. Interface Pixel Format (3Ah) */ Int_LCD_WriteCmd(0x3A); Int_LCD_WriteData(0x55); /* 0x55 : 16 bits/pixel */ /* 13. Sleep Out (11h) 关闭休眠模式 */ Int_LCD_WriteCmd(0x11); /* 14. 设置屏幕方向和RGB */ Int_LCD_WriteCmd(0x36); Int_LCD_WriteData(0x08); SysTick_DelayMs(120); /* 14. display on */ Int_LCD_WriteCmd(0x29); } /** * LCD液晶屏 - 初始化 */ void Int_LCD_Init(void) { // 1. 通过FSMC进行连接 Dri_FSMC_LCD_Init(); // 2. 复位 Int_LCD_Reset(); // 3. 开启背光 Int_LCD_Background(); // 4. 液晶屏初始化 Int_LCD_Config_Init(); } /** * LCD液晶屏 - 清屏使用单一的颜色填满整个屏幕: 背景色 * 向LCD发出设置颜色的请求所有的像素点全部都是一个颜色 */ void Int_LCD_ClearScreen(uint16_t bgcolor) { Int_LCD_WriteCmd(0x2C); // 发送颜色 for (uint32_t i 0; i 320 * 480; i) { Int_LCD_WriteData(bgcolor); } } /** * LCD液晶屏 - 设定显示区域 */ void Int_LCD_SetDisplayArea( uint16_t x, uint16_t y, uint16_t width, uint16_t height ) { Int_LCD_WriteCmd(0x2A); Int_LCD_WriteData(x 8); // SC Int_LCD_WriteData( x 0x00FF ); // SC Int_LCD_WriteData( (x width - 1) 8 ); // EC Int_LCD_WriteData( (x width - 1) 0x00FF ); // EC Int_LCD_WriteCmd(0x2B); Int_LCD_WriteData( y 8); // SC Int_LCD_WriteData( y 0x00FF ); // SC Int_LCD_WriteData( (y height - 1) 8 ); // EC Int_LCD_WriteData( (y height - 1) 0x00FF ); // EC } /** * LCD液晶屏 - 显示图案 */ void Int_LCD_DisplaySymbol1(uint16_t x, uint16_t y, uint16_t width, uint16_t height, uint16_t fcolor) { Int_LCD_SetDisplayArea(x, y, width, height); Int_LCD_WriteCmd(0x2C); // 发送颜色 for (uint32_t i 0; i width * height; i) { Int_LCD_WriteData(fcolor); } } /** * LCD液晶屏 - 显示图案 */ void Int_LCD_DisplaySymbol(uint16_t x, uint16_t y, uint16_t width, uint16_t height, uint16_t fcolor, uint16_t bgcolor) { Int_LCD_SetDisplayArea(x, y, width, height); Int_LCD_WriteCmd(0x2C); // 发送颜色 uint16_t buffer[100] { bgcolor, bgcolor, bgcolor, bgcolor, fcolor, fcolor, bgcolor, bgcolor, bgcolor, bgcolor, bgcolor, bgcolor, bgcolor, fcolor, fcolor, fcolor, fcolor, bgcolor, bgcolor, bgcolor, bgcolor, bgcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, bgcolor, bgcolor, bgcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, bgcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, bgcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, bgcolor, bgcolor, bgcolor, fcolor, fcolor, fcolor, fcolor, fcolor, fcolor, bgcolor, bgcolor, bgcolor, bgcolor, bgcolor, fcolor, fcolor, fcolor, fcolor, bgcolor, bgcolor, bgcolor, bgcolor, bgcolor, bgcolor, bgcolor, fcolor, fcolor, bgcolor, bgcolor, bgcolor, bgcolor }; for (uint32_t i 0; i 100; i) { Int_LCD_WriteData(buffer[i]); } }main.c的代码/** * 需求 : 使用LCD液晶屏显示符号图案或文字 */ int main(void) { Int_LCD_Init(); Int_LCD_ClearScreen(BLUE); Int_LCD_DisplaySymbol(10, 10, 10, 10, RED, GREEN); while(1) { } }
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

越秀高端网站建设网站维护是什么

还在为语音合成时长达10秒的等待而烦恼吗?每次生成语音时CPU占用率飙升导致界面卡顿,用户体验大打折扣?本文将为你揭示如何通过GPU加速技术,让ChatTTS-ui的语音合成速度实现质的飞跃,从卡顿到流畅仅需几个简单配置。 【…

张小明 2025/12/28 14:15:46 网站建设

地情网站建设方案周到的商城网站建设

第一章:Open-AutoGLM接口适配难题全解析在对接 Open-AutoGLM 模型服务时,开发者常面临接口协议不一致、数据格式转换复杂以及认证机制多样等核心挑战。这些难题直接影响系统的稳定性与集成效率。接口协议差异带来的兼容性问题 Open-AutoGLM 支持 gRPC 与…

张小明 2025/12/28 14:24:26 网站建设

谁会写网站代码wordpress子页面都转到首页

Gboard输入法词库终极安装指南:轻松拥有58000专业词汇 【免费下载链接】gboard_dict_3 Gboard 词库 Magisk 模块, 基于《现代汉语词典》 项目地址: https://gitcode.com/gh_mirrors/gb/gboard_dict_3 还在为输入法词汇量不足而烦恼吗?想要在聊天、…

张小明 2025/12/29 10:21:29 网站建设

建设网站安全性虹桥街道网站建设

OBS-VST插件终极指南:如何在直播中添加专业级音频效果 【免费下载链接】obs-vst Use VST plugins in OBS 项目地址: https://gitcode.com/gh_mirrors/ob/obs-vst 在当今的直播和内容创作领域,优质的音频体验已经成为留住观众的关键因素。OBS-VST作…

张小明 2025/12/29 15:43:06 网站建设

城乡建设网站 资料员名雕装饰公司的口碑怎样

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个排序算法对比工具,要求:1.实现计数排序和快速排序 2.支持自定义数据规模 3.实时显示执行时间 4.内存占用统计 5.生成对比图表。使用Kimi-K2模型生成…

张小明 2025/12/30 17:01:59 网站建设

加工设备网电商平台seo

Anything-LLM 插件生态展望:未来可能的扩展方向 在企业知识管理日益智能化的今天,一个普遍存在的矛盾逐渐凸显:员工面对海量文档却找不到关键信息,而管理者又疲于重复解答相同问题。传统搜索工具因语义理解能力有限,难…

张小明 2025/12/28 2:11:16 网站建设