历史上的今天

今天是:2024年09月22日(星期日)

正在发生

2020年09月22日 | 单片机汇编语言的点阵显示源码

发布者:BlissfulCharm 来源: 51hei关键字:单片机  汇编语言  点阵显示 手机看文章 扫描二维码
随时随地手机看文章

既有动态显示又有静态显示,没有电原理图,但是很简单,行扫描,上下滚动,单片机型号STC15F2K60S2(打开文件后就可以看到)


单片机源程序如下:


            /*         静态

                DL    BIT   P1.0;串行输入列信号(数据信号)(低有效)并行输出

            DH    BIT   P1.1;串行输入行信号(行扫描信号)(高有效)并行输出

            STR   BIT   P1.2;RCLK  三态输出锁存器的时钟输入

            CLK   BIT   P1.3;SRCLK        移位寄存器的时钟输入

            FOE   BIT   P1.4;/OE                输出允许控制

            ROWH  EQU   40H;字模信号,高位在前

            ROWL  EQU   41H;

            SELH  EQU   42H;行扫描信号

            SELL  EQU   43H;

            ORG   0000H;

            LJMP  MAIN;

            ORG   0100H

MAIN:  

        MOV   SP,#6FH;

        MOV   R1,#01H;配合字模信号

            MOV   R2,#01H;高字节在后,从01开始

            MOV   R3,#10H;循环16次

LOAD:  

        MOV   DPTR,#DATAH;存储行扫描信号;

        MOV   A,R1;

            MOVC  A,@A+DPTR;

            MOV   SELH,A;存储高字节

            DEC   R1;     指向低字节

            MOV   A,R1;

            MOVC  A,@A+DPTR;

            MOV   SELL,A;  存储低字节

            INC   R1;

            INC   R1;

            INC   R1;指向下一个高字节

            MOV   DPTR,#DATAL;        ;存储字模数据,过程同上

                MOV            A, R2

                MOVC    A, @A+DPTR

                MOV            ROWH, A                               

                DEC            R2

                MOV            A, R2

                MOVC    A, @A+DPTR                       

                MOV            ROWL, A

                INC            R2

                INC            R2

                INC            R2

                LCALL        LATCH;运行锁存自程序

                LCALL        DELAY;延时

                DJNZ        R3, LOAD;重复执行16次,显示所有行

                LJMP        MAIN;静态显示

LATCH:

                CLR                FOE                                ;允许输出

                CLR                STR                                ;为上升沿将移位寄存器数据锁存入数据寄存器

                MOV            R4, SELH                                ;        做准备

                MOV            R5, ROWH                        ;高位行扫描型号和字模信号

                MOV            R6, #08H                ;高低位分开读,每次读8位       

LATCH1:

                CLR                CLK                                ;为上升沿读入移位寄存器做准备

                MOV            A, R4

                RRC                A                                        ;移出最高位

                MOV            R4, A

                MOV            DH, C                        ;由P1.0输出准备进入移位寄存器

                MOV            A, R5

                RRC                A

                MOV            R5, A

                MOV            DL, C                        ;由P1.1输出准备进入移位寄存器

                SETB    CLK                                ;CLK上升沿,P1.0和P1.1数据进入移位寄存器

                DJNZ        R6, LATCH1

                MOV            R4, SELL

                MOV          R5, ROWL

                MOV          R6, #08H

LATCH2:                                                                ;同上

                CLR                CLK

                MOV           A, R4

                RRC                A

                MOV           R4, A

                MOV            DH, C

                MOV          A, R5

                RRC                A

                MOV            R5, A

                MOV            DL, C

                SETB    CLK

                DJNZ        R6, LATCH2

                SETB        STR                                        ;STR上升沿移位寄存器数据所存入数据寄存器

                RET                                                         ;显示

DELAY:                                                                ;延迟程序

                MOV            R6, #02H

LOOP1:

                MOV            R7, #0F8H                ;;估算:1us*2*(1+2*248+2) = 998us ≈ 1ms

LOOP2:

                DJNZ        R7, LOOP2

                DJNZ        R6, LOOP1

                RET

DATAH:                                ;SELECT ROW

[1] [2] [3]
关键字:单片机  汇编语言  点阵显示 引用地址:单片机汇编语言的点阵显示源码

上一篇:STC15W408AS单片机LCD1602-4线接法源程序
下一篇:SIM900A简易报警器程序(51单片机远程控制LED)

推荐阅读

ADC多通道采集是在ADC单通道DMA传输的基础上写的,代码如下:volatile u16 adcconverdata[2]={0,0};static void ADC_GPIO_Config(void){ GPIO_InitTypeDef GPIO_InitStructure;RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);GPIO_InitStructure.GPIO_Pin=GPIO_Pin_1|GPIO_Pin_2;//添加PA2的GPIO初始化代码GPIO_InitStructure.GPIO_Mode=...
Diodes 公司日前宣布推出额定 40V 的 DMTH4008LFDFWQ 及额定 60V 的 DMTH6016LFDFWQ,两者均为符合车用规范的 MOSFET,采用 DFN2020 封装。这两款微型 MOSFET 仅占较大封装 (例如 SOT223) 10% 的 PCB 区域,可在直流对直流 (DC-DC) 转换器、LED 背光、ADAS 及其他“引擎盖下”的汽车应用之中,提供更高的功率密度。DMTH4008LFDFWQ 在 VGS = 10V 时的 RDS...
浙江监管局披露了杭州华澜微电子股份有限公司(以下简称:华澜微)辅导备案公示文件。文件显示,财通证券已受聘担任华澜微首次公开发行人民币普通股(A股)并上市的辅导机构,辅导时间大致为2020年9月至2021年1月。资料显示,华澜微注册资本为1.5亿元,公司主要基于自主知识产权的固态数据存储和信息安全核心技术体系,面向客户提供从控制器芯片、模组到系...
这场新冠肺炎疫情持续时间之久,想必每个人都做好了打持久战的心里准备。在全世界范围内,以人工智能、大数据、5G等为代表的新兴技术,在疫情监测、病毒溯源、防控救治、资源调配等方面也持续发挥了非常重要的作用。大量数字化、智能化服务和场景需求更是呈现爆发式增长。除了电子商务在疫情期间充满活力,包括在线教育、远程办公、网络直播等“云”模式更...

史海拾趣

问答坊 | AI 解惑

linux内核版本选择跟ARM芯片型号有关吗?

s3c2410大多移植2.4内核或是uclinux, 2440以后基本都是2.6内核,请问内核版本选择跟芯片有关吗? 网上看到有人在2410板子上移植成功2.6内核, 请问这样的配合合理吗? 会不会有在奔3机子上装winXP这种感觉呢?…

查看全部问答∨

寻LED 电源老化装置

请问坛中谁有LED 电源老化的装备;此种装备可以让LED驱动做批量老化用;这种装备只能用led? 可否用功率电阻。…

查看全部问答∨

430没有使用的I/O口,为降低功耗如何处理?

以前好象看到相关贴子,没有查到.将之设置为输入还是输出?悬空还是接高电平,低电平.…

查看全部问答∨

怎么使用CoIDE建工程 ?

各位大侠,有用过CoIDE开发stm32的没?这里面怎么更新库,还有利用他自己的组件建立工程,怎么没有stm32f10x_it.c文件呢?难道要自己加进去?小弟初接触,忘各位指点…

查看全部问答∨

【ADC10_B】怎么使用?

ADC10_B只有一个ADC10MEM0,也就是每次只能转化一个通道数据,如果我想同时转化多个通道的数据该怎么办呢?   我原本的想法有两个:   第一,采用Single-channel, single-conversion,每次转换好一个通道后,写指令改通道,再转换, ...…

查看全部问答∨

TI femto solution

本帖最后由 dontium 于 2015-1-23 13:12 编辑 TI的收发集成方案请参考下面连接.AFE7225,TRF3720,TRF3711 ti./solution/femto_base_station …

查看全部问答∨

零死角玩转STM32

欢迎学习哈………

查看全部问答∨

用ModelSim仿真SDRAM操作(转)

在开始仿真之前,如果对SDRAM原理以及时序不是很了解的朋友,推荐看一下如下这篇文章:SDRAM-高手进阶,终极内存技术指南——完整进阶版 OK,下面正式开始仿真的过程。通过看内存技术指南,我们大概可以总结出SDRAM的工作过程: 上电后进入200us ...…

查看全部问答∨

不知道quartus这个是什么问题,我也是蒙了!

本帖最后由 jinghong21 于 2015-11-17 19:05 编辑 第一件事:现在在用单片机和FPGA写一个程序,之间用串口通信,FPGA有一个CS管脚,我用来作为接收使能的。结果程序好了,不过编译起来特别特别慢,我也是无语了,而且FPGA资源基本上已经占满了, ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved