汽车软板厂之STM32F1单片机TFT屏调试笔记
STM32F1系列单片机有多种外设,外设配置方式比较一致,一般是使能外设所在GPIO口时钟、使能外设的时钟,在禁止外设的情况下配置外设的时序以及中断和DMA等。大部分的外设配置相对简单,但是FSMC接口因为配置比较复杂,往往让一些初学者一头雾水。汽车软板厂记录了在STM32F103ZET6的FSMC接口配置调试TFT LCD屏相关注意事项。
1 FSMC接口GPIO配置
/** FSMC GPIOConfiguration PF0 ------> FSMC_A0 ------> LCD_RS: 0: Reg,1:Data PE7 ------> FSMC_D4 PE8 ------> FSMC_D5 PE9 ------> FSMC_D6 PE10 ------> FSMC_D7 PE11 ------> FSMC_D8 PE12 ------> FSMC_D9 PE13 ------> FSMC_D10 PE14 ------> FSMC_D11 PE15 ------> FSMC_D12 PD8 ------> FSMC_D13 PD9 ------> FSMC_D14 PD10 ------> FSMC_D15 PD14 ------> FSMC_D0 PD15 ------> FSMC_D1 PD0 ------> FSMC_D2 PD1 ------> FSMC_D3 PD4 ------> FSMC_NOE ------> LCD_RD Default:1,Value:0 PD5 ------> FSMC_NWE ------> LCD_WR Default:1,Value:0 PG12 ------> FSMC_NE4 ------>LCD_CS Default:1,Value:0
2 初始化FSMC时序
/* FSMC initializationfunction */ FSMC_NORSRAM_TimingTypeDef Timing;SRAM_HandleTypeDef hsram1;
hsram1.Instance = FSMC_NORSRAM_DEVICE; hsram1.Extended =FSMC_NORSRAM_EXTENDED_DEVICE; /* hsram1.Init */hsram1.Init.NSBank = FSMC_NORSRAM_BANK4;hsram1.Init.DataAddressMux =FSMC_DATA_ADDRESS_MUX_DISABLE;hsram1.Init.MemoryType=FSMC_MEMORY_TYPE_NOR;hsram1.Init.MemoryDataWidth =FSMC_NORSRAM_MEM_BUS_WIDTH_16;hsram1.Init.BurstAccessMode =FSMC_BURST_ACCESS_MODE_DISABLE;hsram1.Init.WaitSignalPolarity =FSMC_WAIT_SIGNAL_POLARITY_LOW;hsram1.Init.WrapMode =FSMC_WRAP_MODE_DISABLE;hsram1.Init.WaitSignalActive =FSMC_WAIT_TIMING_BEFORE_WS;hsram1.Init.WriteOperation =FSMC_WRITE_OPERATION_ENABLE;hsram1.Init.WaitSignal =FSMC_WAIT_SIGNAL_DISABLE;hsram1.Init.ExtendedMode =FSMC_EXTENDED_MODE_DISABLE;hsram1.Init.AsynchronousWait =FSMC_ASYNCHRONOUS_WAIT_DISABLE;hsram1.Init.WriteBurst =FSMC_WRITE_BURST_DISABLE; /* Timing */ Timing.AddressSetupTime = 0x04; Timing.AddressHoldTime = 0x02; Timing.DataSetupTime = 0x08; Timing.BusTurnAroundDuration = 0x00; Timing.CLKDivision = 0x00; Timing.DataLatency = 0x00; Timing.AccessMode = FSMC_ACCESS_MODE_B; 后面数值决定读写屏快慢。
FPC小编注意点:
1 因为STM32的地址是32bit的,数据是按照8bit组织的,如果lcd的数据选择8bit的话,地址A0就是正常的输出,如0x60000000输出A0=0; 0x6000 0001输出A0=1;对应数据是byte;如果lcd的数据选择16bit的话,地址A0就,如0x60000000输出A0=0; 而0x60000002对应A0=1;对应数据是word,也就是说每两个原来基于byte结构的地址对应一个地址线上实际的word长度的地址;
#define Bank1_LCD_D ((uint32_t)0x6C000002) //DispData ADDR#define Bank1_LCD_C ((uint32_t)0x6C000000) //DispReg ADDR
void LCD_WR_REG(uint16_t index){ *(__IOuint16_t *) (Bank1_LCD_C) = index;}
uint16_t LCD_READ_DATA(void){ uint16_ta = 0; a=*(__IOuint16_t *) (Bank1_LCD_D); //L return a;}
软板厂: Image2LCD软件转换时注意扫描方式和数据位宽度,以及高低为顺序。
实际效果:
ps:部分图片来源于网络,如有侵权,请联系我们删除
最新产品
医疗设备控制器软板
-
-
型 号:RS04C00269A
层 数:4
板 厚:0.3mm
材 料:双面无胶电解材料
铜 厚:1/2 OZ
特 点:产品都经过100%烧录测试
表面处理:沉金2微英寸
最小线宽/线距:0.07mm/0.06mm
数码相机软板
数码相机软板
手机电容屏软板
-
-
型 号:RM02C00712A层 数:2板 厚:0.12mm材 料:双面无胶电解材料铜 厚:1/3OZ表面处理:沉金1微英寸最小线宽/线距:0.05mm/0.05mm电磁膜:2面特 点:产品都经过100%烧录测试
手机电容屏软板
-
-
型 号:RS02C00244A层 数:2板 厚:0.12mm材 料:双面无胶电解材料铜 厚:1/3 OZ特 点:产品都经过100%烧录测试表面处理:沉金2微英寸最小线宽/线距:0.07mm/0.06mm电磁膜:2面
手机电容屏软板
-
-
型 号:RM02C00247A层 数:2板 厚:0.12mm材 料:双面无胶电解材料铜 厚:1/3 OZ表面处理:沉金1微英寸最小线宽/线距:0.07mm/0.07mm电磁膜:2面特 点:产品都经过100%烧录测试
手机电容屏软板
-
-
型 号:RM02C00892A层 数:2板 厚:0.12mm材 料:双面无胶电解铜 厚:1/3 OZ表面处理:沉金2微英寸最小线宽/线距:0.07mm/0.05mm电磁膜:2面其 他:产品都经过100%烧录测试
医疗按键软板
同类文章排行
- 2014年中国柔性线路板厂综合排名——有几家是你熟识的呢?
- 柔性电路板|| 2017年度中国电子电路PCB百强企业排行榜
- 指纹模块FPC小编带您一文了解指纹识别,看完全懂了!
- 手机FPC厂之2017年度全球PCB百强企业排行榜
- FPC厂从八个角度让你读懂指纹识别
- 2015年NTI-100全球电路板百强企业排行榜,其中中国大陆上榜企业有34家!
- pcb厂家盘点俄军经典AK系列步枪
- 指纹识别软板之各类FPC在指纹模组中的应用
- fpc软板厂家为你解析黑孔工艺
- 柔性线路板给你推送的最新资讯‖2016中国印制电路板行业50强
最新资讯文章
- 深联电路五一劳动节放假安排来啦!
- 满载而归 | 深联电路2025年慕尼黑上海电子展荣耀收官啦!
- 深联的3月份铁粉福利名单来喽,看看有没有你!
- 软板厂分享:FPC产业链的简要分析
- 汽车PCB广泛应用,智电驱动行业规模提升
- 重大喜讯!深联电路荣获“CNAS 认可证书”!
- 招聘季 | “职” 为找到独一无二的你!
- 多元领域应用新征程,电池软板能否领航?
- 喜报!深联电路荣获“推行卓越绩效先进组织(企业)”奖!
- 深联电路2025年无预警消防演练”火“速行动,筑牢生命屏障!
共-条评论【我要评论】