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

本例程为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. poj 2299 Ultra-QuickSort (归并排序 求逆序数)

    题目:http://poj.org/problem?id=2299 这个题目实际就是求逆序数,注意 long long 上白书上的模板 #include <iostream> #inclu ...

  2. MySQL open table

    背景:    MySQL经常会遇到Too many open files,MySQL上的open_files_limit和OS层面上设置的open file limit有什么关系? 源码中也会看到不同 ...

  3. SCOI2009生日快乐

    竟然是搜索……囧 还以为是什么神题…… uses math; var x,y:extended; n:longint; function find(x,y:extended;z:longint):ex ...

  4. Linux 根文件系统制作

    1.创建根文件目录 mkdir rootfs(名字是随便取的) 2.创建子目录 cd rootfs mkdir bin dev etc lib proc sbin sys usr mnt tmp va ...

  5. xml 实现圆形图 和 椭圆形图

    1. 效果图 2.圆形图 <ImageView android:layout_width="wrap_content" android:layout_height=" ...

  6. 中国Azure媒体服务RESTAPI的Endpoint

    Amber Zhao  Thu, Feb 26 2015 4:09 AM 由于海外Azure和中国Azure有不同的domain,很多用户在使用媒体服务RESTAPI时,需要指定中国Azure媒体服务 ...

  7. 扩展Oracle表空间

    1. 查看当前表空间利用率SELECT UPPER(F.TABLESPACE_NAME) "表空间名", D.TOT_GROOTTE_MB "表空间大小(M)" ...

  8. 第二个App“今日美文”上架【原】

    App store 下载地址 开发这个App的本意 之前偶然找到一个叫<每日一文>的应用,正是我一直想找的,优点如下: 界面够简单 推荐的文章也很好,而且都不太长 每天都不一样 但是用起来 ...

  9. 内省与JavaBean

    概述 JavaBean代表一类特殊的Java类,这种类主要用来存储和传递属性信息,JavaBean中的方法主要用于设置和获取这些私有属性,他们有一定的命名规则,我们可以把它们想象为一个侧重属性信息的类 ...

  10. 五个小例子教你搞懂 JavaScript 作用域问题

    众所周知,JavaScript 的作用域和其他传统语言(类C)差别比较大,掌握并熟练运用JavaScript 的作用域知识,不仅有利于我们阅读理解别人的代码,也有助于我们编写自己的可靠代码. 下面笔者 ...