/***************************************

本例程为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.2 P_SEG1 EQU P0.4
P_SEG2 EQU P0.5
P_SEG3 EQU P0.6
P_SEG4 EQU P0.7
P_SEG5 EQU P5.0
P_SEG6 EQU P5.1 ;变量定义
C_FR DS 1 ;液晶扫描状态
R_DSPCOM1 DS 1
R_DSPCOM2 DS 1
R_DSPCOM3 DS 1 R_BITI DS 1 ;中断服务程序 INT_T0: ; T0中断定时1MS 依次扫描八个状态
B0BTS1 FT0IRQ
RETI
B0BCLR FT0IRQ
B0BTS1 FT0IEN
RETI
PUSH ;以下是LCD显示扫描
MOV A,#256-32
B0MOV T0C,A ;以下是LCD显示扫描
INCMS C_FR
NOP
MOV A,C_FR
SUB A,#6
B0BTS0 FC
CLR C_FR B0BCLR PM_COM1
B0BCLR PM_COM2
B0BCLR PM_COM3 MOV A,C_FR
AND A,#0X07
@JMP_A 6
JMP A_COM0
JMP A_COM1
JMP A_COM2
JMP A_COM3
JMP A_COM4
JMP A_COM5
JMP A_COM5
JMP A_COM5 A_COM0:
B0BSET PM_COM1
B0BCLR P_COM1 ;低电平驱 MOV A,R_DSPCOM1 JMP A_SEG
A_COM1:
B0BSET PM_COM2
B0BCLR P_COM2 ;低电平驱 MOV A,R_DSPCOM2 JMP A_SEG
A_COM2:
B0BSET PM_COM3
B0BCLR P_COM3 ;低电平驱 MOV A,R_DSPCOM3 JMP A_SEG A_COM3:
B0BSET PM_COM1
B0BSET P_COM1 ;高电平驱 MOV A,R_DSPCOM1
XOR A,#0XFF JMP A_SEG
A_COM4:
B0BSET PM_COM2
B0BSET P_COM2 ;高电平驱 MOV A,R_DSPCOM2
XOR A,#0XFF JMP A_SEG
A_COM5:
B0BSET PM_COM3
B0BSET P_COM3 ;高电平驱 MOV A,R_DSPCOM3
XOR A,#0XFF JMP A_SEG
A_SEG:
MOV R_BITI,A B0BCLR P_SEG1
BTS0 R_BITI. 0
B0BSET P_SEG1 B0BCLR P_SEG2
BTS0 R_BITI. 1
B0BSET P_SEG2 B0BCLR P_SEG3
BTS0 R_BITI. 2
B0BSET P_SEG3 B0BCLR P_SEG4
BTS0 R_BITI. 3
B0BSET P_SEG4 B0BCLR P_SEG5
BTS0 R_BITI. 4
B0BSET P_SEG5 B0BCLR P_SEG6
BTS0 R_BITI. 5
B0BSET P_SEG6 INT_EX: POP
RETI

用普通IO驱动LCD的控制方法-松瀚汇编源程序的更多相关文章

  1. 24C02操作--松瀚汇编源码

    ; ; P_CLKIIC EQU P1.2 ; P_DATIIC EQU P1.3 ; PM_DATIIC EQU P1M.3 ; EE_ADDR DS 1 ;地址寄存器 ; TMP3_IIC DS ...

  2. 痞子衡嵌入式:记录i.MXRT1060驱动LCD屏显示横向渐变色有亮点问题解决全过程(提问篇)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是i.MXRT1060上LCD横向渐变色显示出亮点问题的分析解决经验. 痞子衡前段时间在支持一个i.MXRT1060客户项目时遇到了LCD ...

  3. STM32驱动LCD原理

    TFTLCD即薄膜晶体管液晶显示器.它与无源TN-LCD.STN-LCD的简单矩阵不同,它在液晶显示屏的每一个像素上都设置有一个薄膜晶体管(TFT),可有效地克服非选通时的串扰,使显示液晶屏的静态特性 ...

  4. STM32驱动LCD实战

    前段时间写了<STM32驱动LCD原理>和<STM32的FSMC外设简介>两篇文章,本文将对STM32驱动LCD进行实战应用.LCD是深圳市拓普微科技开发有限公司的LMT028 ...

  5. 松瀚SN8P2501 定时器初始化程序--汇编源码

    /* 松瀚 SN8P2501B 定时器初始化程序 */ INI_IRQ: ;定时器T0初始化 MOV A, #01100000b ;定时器模式Fcpu/4 16M/4/4=1M 1U计一次 B0MOV ...

  6. 松瀚SN8P2711 2722 ADC初始化程序及应用--汇编源码

    /* 松瀚 SN8P2711 2722 ADC初始化程序 及应用实例 */ INIT_ADC: MOV A, #0XB2 // 启动ADC电路 使能AIN通道 B0MOV ADM, A MOV A,# ...

  7. 基于V7的emWin多屏显示方案模板,同时驱动LCD和OLED例程

    说明: 1.多屏驱动跟多图层驱动是类似的,可以使用函数GUI_SelectLayer做切换选择. 2.为了避免OLED闪烁问题,创建一个128*64bit的显存空间,然后使用emWin的GUI_TIM ...

  8. 电路IO驱动能力

    驱动能力 电源驱动能力 -> 输出电流能力 -> 输出电阻 指输出电流的能力,比如芯片的IO在高电平时的最大输出电流是4mA -> 该IO口的驱动驱动能力为4mA 负载过大(小电阻) ...

  9. 玩转STM32MP157- 使用fbtft驱动 lcd ili9341

    之前使用了 fbtft 成功驱动了lcd st7735r,现在尝试下驱动 ili9341, 配置 跟之前用 fbtft 驱动 st7735r 一样,先用 make menuconfig 配置内核,添加 ...

随机推荐

  1. js如何判断是手机端还是PC端访问

    function isMobile(){ var sUserAgent= navigator.userAgent.toLowerCase(), bIsIpad= sUserAgent.match(/i ...

  2. HTTP编程(六)

    此为网络编程的一个系列,后续会把内容补上.....

  3. 陈正冲老师讲c语言void关键字

    1. void a void的字面意思是“空类型”,void *则为“空类型指针”,void *可以指向任何类型的数据. void几乎只有“注释”和限制程序的作用,因为从来没有人会定义一个void变量 ...

  4. 【转】用Pthread创建线程的一个简单Demo

    一.我们直接在COCOS2D-X自带的HelloWorld工程中添加代码.首先将Pthread的文件包含进来包括lib文件.在HelloWorld.cpp中引入头文件和库. #include &quo ...

  5. 【转】Cocos2d-x 弹出对话框的设计与实现

    转自:http://www.tairan.com/archives/4854 我们时常需要这么些功能,弹出一个层,给与用户一些提示,这也是一种模态窗口,在没有对当前对话框进行确认的时候,不能继续往下操 ...

  6. 理解$watch ,$apply 和 $digest --- 理解数据绑定过程

    原文地址:http://angular-tips.com/blog/2013/08/watch-how-the-apply-runs-a-digest/ 注 这篇博文主要是写给新手的,是给那些刚刚开始 ...

  7. MS-SQL索引类型

    一.索引的概念     索引就是加快检索表中数据的方法.数据库的索引类似于书籍的索引.在书籍中,索引允许用户不必翻阅完整个书就能迅速地找到所需要的信息.在数据库中,索引也允许数据库程序迅速地找到表中的 ...

  8. 静态Web开发 DOM

    四章 Dom 1节dom中的顶级对象 dom(文档对象模型)js最终是要操作html页面,让html变成DHtml,而操作Html页面就要用到DOMDOM可以吧Html页面模拟成一个对象,如果js只是 ...

  9. [转] Symbol对象

    GIS中的离散实体有三种:点.线.面,在ArcEngine中用三种符号对应表示,分别是:MarkSymbol.LineSymbol和FillSymbol.此外还有TextSymbol用于文字标注,3D ...

  10. POJ1177 Picture 线段树+离散化+扫描线

    求最终的覆盖图形周长,写这种代码应该短而精确,差的比较远 /* Problem: 1177 User: 96655 Memory: 348K Time: 32MS Language: C++ Resu ...