/*************************************** 本例程为IO直接驱动LCD的方法 以下是松瀚MCU汇编源程序 ****************************************/ LCD 图形如下: LCD真值表如下: ;源程序如下: ;驱动IO定义 P_COM3 EQU P5.4 P_COM2 EQU P5.3 P_COM1 EQU P5.2 PM_COM3 EQU P5M.4 PM_COM2 EQU P5M.3 PM_COM1 EQU P5M.…
; ; P_CLKIIC EQU P1.2 ; P_DATIIC EQU P1.3 ; PM_DATIIC EQU P1M.3 ; EE_ADDR DS 1 ;地址寄存器 ; TMP3_IIC DS 1 ; TMP2_IIC DS 1 ; TMP1_IIC DS 1 ; DATA_TEMP DS 1 ;数据缓存 ; R_DATA DS 1 ;读数据寄存器 ; W_DATA DS 1 ;写数据寄存器 ;************************************************…
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是i.MXRT1060上LCD横向渐变色显示出亮点问题的分析解决经验. 痞子衡前段时间在支持一个i.MXRT1060客户项目时遇到了LCD显示有异常亮点的问题,这个问题的定位和排查花了一点时间,整个过程现在回想起来仍觉得有意思.做嵌入式(尤其是软件)这行主要工作除了写代码就是解Bug了,而且很多时候往往是写代码容易,解Bug难,所以解Bug能力是衡量一个工程师是否资深的重要因素.Bug不仅要解得好,还得解得快,这个很考验工程师的逻辑思…
TFTLCD即薄膜晶体管液晶显示器.它与无源TN-LCD.STN-LCD的简单矩阵不同,它在液晶显示屏的每一个像素上都设置有一个薄膜晶体管(TFT),可有效地克服非选通时的串扰,使显示液晶屏的静态特性与扫描线数无关,因此大大提高了图像质量. ▲驱动流程 01.使用FSMC驱动LCD 关于FSMC,把数据写入相应的地址,FSMC就会把地址从FSMC_A出去,写入的数据会会从FSMC_D发出去.至于片选等信号线都是自动的.读的话,直接读相应的地址,就会拿到改地址上的数据. FSMC驱动外部SRAM时…
前段时间写了<STM32驱动LCD原理>和<STM32的FSMC外设简介>两篇文章,本文将对STM32驱动LCD进行实战应用.LCD是深圳市拓普微科技开发有限公司的LMT028DN,分辨率是320*240,大小2.8寸,颜色65K的彩色屏,采用的是ST7789s液晶控制IC.颜色模式是565. 01 驱动时序 我们通常说的MCU-LCD接口,就是8080接口,8080接口的详细介绍请看<STM32驱动LCD原理>. 下面是LMT028DN给出的8080模式总线时序 下面…
/* 松瀚 SN8P2501B 定时器初始化程序 */ INI_IRQ: ;定时器T0初始化 MOV A, #01100000b ;定时器模式Fcpu/4 16M/4/4=1M 1U计一次 B0MOV T0M, A ; MOV A, #256-100 ;计数寄存器赋初值(定时100U) MOV T0C, A ; B0BCLR FT0IRQ ;清中断标志 B0BSET FT0IEN ;允许T0中断 B0BSET FT0ENB ;启动T0 ;定时器TC0初始化 MOV A,#01110100B ;自…
/* 松瀚 SN8P2711 2722 ADC初始化程序 及应用实例 */ INIT_ADC: MOV A, #0XB2 // 启动ADC电路 使能AIN通道 B0MOV ADM, A MOV A,#0XF0 B0MOV ADR,A ; Fad = 1/2 Fcpu 设置ADC转换速率 ; 纯模拟输入口设置 MOV A,#0X1C ;设置 P4.2 3 4为模拟AD口 B0MOV P4CON,A RET //---应用实例----- //*****************************…
说明: 1.多屏驱动跟多图层驱动是类似的,可以使用函数GUI_SelectLayer做切换选择. 2.为了避免OLED闪烁问题,创建一个128*64bit的显存空间,然后使用emWin的GUI_TIMER_Create创建个100ms的定时器,      定时器整体刷新OLED即可,平时emWin都是直接对显存的操作,不往OLED里面刷数据. 3.LCD是采用H7的LTDC驱动,32bit SDRAM做显存,而OLED是采用FMC驱动,DTCM做显存. OLED: OLED+LCD: 链接:ht…
驱动能力 电源驱动能力 -> 输出电流能力 -> 输出电阻 指输出电流的能力,比如芯片的IO在高电平时的最大输出电流是4mA -> 该IO口的驱动驱动能力为4mA 负载过大(小电阻) -> 负载电流超过其最大输出电流 -> 驱动能力不足 -> 输出电压下降 -> 逻辑电路无法保持高电平 -> 逻辑混乱 XX 一般说驱动能力不足是指某个IO口/引脚无法直接用高电平驱动某个外设,需要加三级管(驱动脚由三极管的发射极或集电极提供)或者MOS管. IO与输出电流 单…
之前使用了 fbtft 成功驱动了lcd st7735r,现在尝试下驱动 ili9341, 配置 跟之前用 fbtft 驱动 st7735r 一样,先用 make menuconfig 配置内核,添加 fbtft .然后修改设备树,同样是在设备树spi5下添加: ili9341@0{ compatible = "adafruit,yx240qv29", "ilitek,ili9341"; reg = <0>; spi-max-frequency = &l…