当前位置: 首页 > news >正文

自己做外贸网站seo搜狗排名点击

自己做外贸网站,seo搜狗排名点击,主机屋怎么做网站,自己做资讯网站hx8352_8080_8bit_FMSC板级驱动 1.LCD相关1.1LCD参数1.2 LCD引脚1.3 LCD实物1.4 LCD引脚解释 2.接线关系3.STM32F40x基于FMSC16bit修改1)地址偏移2)删除多余GPIO3)修改FMSC的配置4)LCD初始化寄存器 3.板驱动程序4.运行结果 1.LCD相关 1.1LCD参数 LCD控制芯片&…

hx8352_8080_8bit_FMSC板级驱动

  • 1.LCD相关
    • 1.1LCD参数
    • 1.2 LCD引脚
    • 1.3 LCD实物
    • 1.4 LCD引脚解释
  • 2.接线关系
  • 3.STM32F40x基于FMSC@16bit修改
    • 1)地址偏移
    • 2)删除多余GPIO
    • 3)修改FMSC的配置
    • 4)LCD初始化寄存器
  • 3.板驱动程序
  • 4.运行结果

1.LCD相关

1.1LCD参数

LCD控制芯片:HX8352
LCD控制芯片通信方式:8080@8bit
LCD分辨率:240pix * 430pix

1.2 LCD引脚

通过LCD电路图可知,带斜杠的为低电平有效。
RS为判断DBx传输的为数据或命令,高为数据,低为命令
WR、RD分别为读写使能,低电平有效
RESET为复位、CS为片选,
DB10-17为数据/命令传输端口,相当于8位同步传输,

图1:LCD输出引脚

1.3 LCD实物

图上AB位置与12标注依次对应,注意B上端有个2个空引脚。
图上C位置,由于3处没有焊接触摸屏的处理芯片和电容,所以触摸屏无效,C引脚无效。
图上D位置为4对应的SD卡引脚,为SPI驱动,此教程未使用。

图1:LCD实物图

1.4 LCD引脚解释

LCD的驱动芯片为HX8352, 驱动芯片会在出厂时,设定IM0-2,从而确定LCD控制模式,如图选定8位数据8080通信,选定的通信引脚为D8-17。

2.接线关系

这个要对应上,需要插一会。

3.STM32F40x基于FMSC@16bit修改

其实只要在FSMC16位数据通信模式上修改即可,需要修改以下几处。

1)地址偏移

FSMC为8位bit,不需要偏移一位。
只要将FSMC_Ax的x位设置为1或者0即可。
如实例:
片选选择FSMC_NE2,对应引脚PG9,储存起始位为0x64000000,
RS连接FSMC_A13,对应引脚PG2,
传输数据FSMC地址写入0x64000000+0<<13 =0x64000000
传输数据FSMC地址写入0x64000000+1<<13 = 0x64002000

/******************************* HX8352 显示屏的 FSMC 参数定义 ***************************/#define      FSMC_Addr_HX8352_CMD         ( ( uint32_t ) 0x64000000 )  //FSMC_Bank1_NORSRAM用于LCD命令操作的地址
#define      FSMC_Addr_HX8352_DATA        ( ( uint32_t ) 0x64002000 )  //FSMC_Bank1_NORSRAM用于LCD数据操作的地址 #define      FSMC_Bank1_NORSRAMx           FSMC_Bank1_NORSRAM2          //由片选引脚决定的NOR/SRAM块
/******************************* HX8352 显示屏8080通讯引脚定义 ***************************/
//片选,选择NOR/SRAM块
#define      LCD_CS_CLK                RCC_AHB1Periph_GPIOG  
#define      LCD_CS_PORT               GPIOG
#define      LCD_CS_PIN                GPIO_Pin_9
#define      LCD_CS_PinSource          GPIO_PinSource9
//DC引脚,使用FSMC的地址信号控制,本引脚决定了访问LCD时使用的地址
//PG2为FSMC_A13
#define      LCD_DC_CLK                RCC_AHB1Periph_GPIOG  
#define      LCD_DC_PORT               GPIOG
#define      LCD_DC_PIN                GPIO_Pin_3
#define      LCD_DC_PinSource          GPIO_PinSource3

在这里插入图片描述

2)删除多余GPIO

删除FSMC_D0-7所有对应的引脚控制,包括引脚时钟、引脚输入输出配置复用。

	GPIO_InitTypeDef GPIO_InitStructure;/* 使能FSMC对应相应管脚时钟*/RCC_AHB1PeriphClockCmd ( 	/*控制信号*/LCD_CS_CLK|LCD_DC_CLK|LCD_WR_CLK|LCD_RD_CLK	|LCD_RST_CLK|//LCD_BK_CLK|/*数据信号*/RCC_AHB1Periph_GPIOE|RCC_AHB1Periph_GPIOD , ENABLE );/* 配置FSMC相对应的数据线,FSMC-D0~D15 */	GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1//|GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_14|GPIO_Pin_15; 					//PD 0 1  14 15	 //8 9 10																			GPIO_Init(GPIOD, &GPIO_InitStructure);GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7|GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10;//|GPIO_Pin_11//|GPIO_Pin_12|GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15;  //PE7-10  11-15																				GPIO_Init(GPIOE, &GPIO_InitStructure);GPIO_PinAFConfig(GPIOD,GPIO_PinSource0,GPIO_AF_FSMC); GPIO_PinAFConfig(GPIOD,GPIO_PinSource1,GPIO_AF_FSMC); 
//		GPIO_PinAFConfig(GPIOD,GPIO_PinSource8,GPIO_AF_FSMC); 
//		GPIO_PinAFConfig(GPIOD,GPIO_PinSource9,GPIO_AF_FSMC);
//		GPIO_PinAFConfig(GPIOD,GPIO_PinSource10,GPIO_AF_FSMC);GPIO_PinAFConfig(GPIOD,GPIO_PinSource14,GPIO_AF_FSMC);GPIO_PinAFConfig(GPIOD,GPIO_PinSource15,GPIO_AF_FSMC); GPIO_PinAFConfig(GPIOE,GPIO_PinSource7,GPIO_AF_FSMC);  GPIO_PinAFConfig(GPIOE,GPIO_PinSource8,GPIO_AF_FSMC);GPIO_PinAFConfig(GPIOE,GPIO_PinSource9,GPIO_AF_FSMC);GPIO_PinAFConfig(GPIOE,GPIO_PinSource10,GPIO_AF_FSMC);
//		GPIO_PinAFConfig(GPIOE,GPIO_PinSource11,GPIO_AF_FSMC);
//		GPIO_PinAFConfig(GPIOE,GPIO_PinSource12,GPIO_AF_FSMC);
//		GPIO_PinAFConfig(GPIOE,GPIO_PinSource13,GPIO_AF_FSMC);
//		GPIO_PinAFConfig(GPIOE,GPIO_PinSource14,GPIO_AF_FSMC);
//		GPIO_PinAFConfig(GPIOE,GPIO_PinSource15,GPIO_AF_FSMC); 

3)修改FMSC的配置

重要是修改 FSMC_NORSRAMInitTypeDef类型 的结构体参数 FSMC_MemoryDataWidth

FSMC_NORSRAMInitTypeDef  FSMC_NORSRAMInitStructure;
FSMC_NORSRAMInitStructure.FSMC_MemoryDataWidth =	FSMC_MemoryDataWidth_8b;    //数据宽度为8bit  

4)LCD初始化寄存器

LCD控制芯片的寄存器需要初始化,其和芯片信号相关,这里为hx8352

	 LCD_W_CMD( 0x1A);LCD_W_DATA(0x02); //BTLCD_W_CMD( 0x1B);LCD_W_DATA(0x88); //VRH//****VCOM offset**///LCD_W_CMD( 0x23);LCD_W_DATA(0x00); //SEL_VCMLCD_W_CMD( 0x24);LCD_W_DATA(0x64); //LCD_W_CMD( 0x25);LCD_W_DATA(0x15); //VDVLCD_W_CMD( 0x2D);LCD_W_DATA(0x03); //NOW[2:0]=001//****OPON**//LCD_W_CMD( 0xE8);LCD_W_DATA(0x60);//Power on SettingLCD_W_CMD( 0x18);LCD_W_DATA(0x04); //Frame rate 72HzLCD_W_CMD( 0x19);LCD_W_DATA(0x01); //OSC_EN='1', start OscLCD_W_CMD( 0x01);LCD_W_DATA(0x00); //DP_STB='0', out deep sleepLCD_W_CMD( 0x1F);LCD_W_DATA(0x88); //STB=0//delayms(50);LCD_W_CMD( 0x1F);LCD_W_DATA(0x80); //DK=0//delayms(50);LCD_W_CMD( 0x1F);LCD_W_DATA(0x90); //PON=1//delayms(50);LCD_W_CMD( 0x1F);LCD_W_DATA(0xD0); //VCOMG=1//delayms(50);//262k/65k color selectionLCD_W_CMD( 0x17);LCD_W_DATA(0x05); //default 0x06 262k color // 0x05 65k color//SET PANELLCD_W_CMD( 0x36);LCD_W_DATA(0x03);//12    //屏幕正反向,红蓝交换,背景,放大屏幕等// 0x03 正常// 0x04 上下反向LCD_W_CMD( 0x29);LCD_W_DATA(0x31); //400 linesLCD_W_CMD( 0x71);LCD_W_DATA(0x1A); //RTN//Gamma 2.2 SettingLCD_W_CMD( 0x40);LCD_W_DATA(0x00);LCD_W_CMD( 0x41);LCD_W_DATA(0x45);LCD_W_CMD( 0x42);LCD_W_DATA(0x45);LCD_W_CMD( 0x43);LCD_W_DATA(0x04);LCD_W_CMD( 0x44);LCD_W_DATA(0x00);LCD_W_CMD( 0x45);LCD_W_DATA(0x08);LCD_W_CMD( 0x46);LCD_W_DATA(0x23);LCD_W_CMD( 0x47);LCD_W_DATA(0x23);LCD_W_CMD( 0x48);LCD_W_DATA(0x77);LCD_W_CMD( 0x49);LCD_W_DATA(0x40);LCD_W_CMD( 0x4A);LCD_W_DATA(0x04);LCD_W_CMD( 0x4B);LCD_W_DATA(0x00);LCD_W_CMD( 0x4C);LCD_W_DATA(0x88);LCD_W_CMD( 0x4D);LCD_W_DATA(0x88);LCD_W_CMD( 0x4E);LCD_W_DATA(0x88);LCD_W_CMD( 0x02);LCD_W_DATA(0x00);LCD_W_CMD( 0x03);LCD_W_DATA(0x00); //Column StartLCD_W_CMD( 0x04);LCD_W_DATA(0x00);LCD_W_CMD( 0x05);LCD_W_DATA(0xEF); //Column EndLCD_W_CMD( 0x06);LCD_W_DATA(0x00);LCD_W_CMD( 0x07);LCD_W_DATA(0x00); //Row StartLCD_W_CMD( 0x08);LCD_W_DATA(0x01);LCD_W_CMD( 0x09);LCD_W_DATA(0x8F); //8f//Row End//Display ON SettingLCD_W_CMD( 0x28);LCD_W_DATA(0x38); //GON=1, DTE=1, D=10//delayms(40);LCD_Delay(0xFFFFF );LCD_W_CMD( 0x28);LCD_W_DATA(0x3F); //3//3c//GON=1, DTE=1, D=11//LCD_W_CMD( 0x22); //Start GRAM write//LCD_W_CMD( 0x16);LCD_W_DATA(0xaa);  //填充方向

3.板驱动程序

stm32f40x_hx8352_LCD驱动下载连接
ask码字模font.c自带
中文字模需要导入到外部flash上
在这里插入图片描述

4.运行结果

bsp_hx8352_lcd.c 中的 test_HX8352_LCD_3() 运行结果

http://www.khdw.cn/news/43961.html

相关文章:

  • 2018年做网站赚钱吗成都疫情最新情况
  • 建设部领导干部官方网站央视新闻
  • 网站建设的合同书宁波网站优化公司价格
  • 母婴网站建设企业培训机构
  • 做网站如何赢利的广州网页搜索排名提升
  • 怎么做网站内部链接的优化武汉企业seo推广
  • 适合个人做的网站b站推广引流最佳方法
  • 大连企业做网站百度推广投诉电话客服24小时
  • 国际摄影作品网站网页自动点击软件
  • 怎么修改网站排版什么平台可以打广告做宣传
  • 平面设计必学软件福建seo
  • 网站推广服务域名关键词排名查询
  • 网站视频接口 怎么做发软文的平台
  • goodwork wordpress星沙网站优化seo
  • 大连建设工程信息网站系统优化的例子
  • 动画网站欣赏一件代发48个货源网站
  • 邯郸做网站百度指数十年
  • 伍佰亿网站推广链接点击器app
  • 三线建设学兵连网站西安地区联系人网站的开发流程
  • 佛山企业网站排名优化竞价推广怎么样
  • 自己申请一个网站怎么做互联网营销师是干什么的
  • 手机兼职在哪个网站做网站优化公司认准乐云seo
  • 在线教育网站源码aso100官网
  • 网站后台首页seo网站推广软件 快排
  • 长尾网站搜索引擎网站运营培训学校
  • 深圳网站制作工具怎么做seo信息优化
  • 网站建设工具开源宁波seo排名费用
  • 秀屿网站建设个人如何注册网站
  • 网站优化推广哪家好汕头网站建设公司
  • 能自己做网站接业务吗泉州关键词快速排名