;This program will show you cycle glitter between 8 led lamps
; maker:Chen Weiwu
; date:2012-11-08
; version:1.0.0
;-------------------------------------------------------------
;Define
Ledprt equ p0
SegDisPlay equ p2
L1 equ 30h
l3 equ 32h
button1 equ p1.0
button2 equ p1.2
button3 equ p1.4
button4 equ p1.6
;----------------------
;Set the initiation address which the program runing
;----------------------
org 0
ajmp main
;----------------------
Pattern1:
mov a,#11111110B
Cycle1: mov Ledprt,a
rl a
acall delay
jnb button1,cycle1
mov Ledprt,#11111111B
ret
;-----------------------
Pattern2:
mov a,#01111111B
mov l1,#00000001B
Cycle2: mov l3,a
xrl a,l1
mov Ledprt,a
mov a,l3
rl a
mov l3,a
mov a,l1
rr a
mov l1,a
mov a,l3
acall delay
jnb button2,cycle2
mov Ledprt,#11111111B
ret
;-----------------------
Pattern3:
mov a,#10101010B
Cycle3: mov l1,a
mov Ledprt,a
acall delay
mov a,#11111111B
mov Ledprt,a
acall delay
mov a,l1
rl a
jnb button3,cycle3
mov Ledprt,#11111111B
ret
;-----------------------
Pattern4:
mov a,#11111110B
mov l1,#00000001B
Cycle4: mov Ledprt,a
acall delay
rl a
xrl a,l1
jnb button4,cycle4
mov Ledprt,#11111111B
ret
;-----------------------
;-----------------------
;delay section
delay: mov r5,#50
delay1: mov r6,#100
DELAY2: mov r7,#10
djnz r7,$
djnz r6,delay2
djnz r5,delay1
ret
;-----------------------
main: mov SegDisPlay,#00H
jb button1,To2
mov SegDisPlay,#01H
Acall Pattern1
To2:
jb button2,To3
mov SegDisPlay,#02H
Acall Pattern2
To3:
jb button3,To4
mov SegDisPlay,#03H
Acall Pattern3
To4:
jb button4,main
mov SegDisPlay,#04H
Acall Pattern4
ajmp Main
;-----------------------
end
;-------------------------------------------------------------
关键字:花样流水灯 单片机 汇编
引用地址:
花样流水灯的设计1(单片机-汇编)
推荐阅读最新更新时间:2024-03-16 14:24
单片机之STM32 中的 assert_param 函数
我们在学STM32的时候函数assert_param出现的几率非常大,上网搜索一下,网上一般解释断言机制,做为程序开发调试阶段时使用。下面我就谈一下我对这些应用的看法,学习东西抱着知其然也要知其所以然。 4 断言机制函数assert_param 我们在分析库函数的时候,几乎每一个函数的原型有这个函数assert_param();下面以assert_param(IS_GPIO_ALL_PERIPH(GPIOx));为例说一下我的理解,函数的参数IS_GPIO_ALL_PERIPH(GPIOx),我们可以寻找到原型 #define IS_GPIO_ALL_PERIPH(PERIPH) (((*(uint32_t*)&(PERIPH))
[单片机]
PIC单片机程序设计方法和的基本格式
为了快速掌握P IC 单片机 源程序的基本结构,这里给出一个典型的程序结构框架。建立源程序时首先用伪指令TITLE提供程序的标题,接着给出整个程序的总说明,并用列表伪指令LIST指定所用单片机型号和文件输出格式,再利用INCLUDE伪指令读入MPASM中提供的定义文件如《P16F84?INC》,然后对片内常用资源进行定义,再给出一般程序的基本结构框架。现举例如下。 TITLE“This is……”;程序标题 ;程序说明 LIST P=16F84,F=1NHX8M ; include -config_RC_Qsc &_WDT_0FF… ;资源定义和变量定义 STATUS EQU 03 FSR
[单片机]
22.1184晶振的单片机
首先说说晶振与51单片机的机器周期得关系:晶振的倒数是一个时钟周期单位为秒,一个机器周期等于12乘时钟周期。 再说说指令周期与时钟周期得关系:对于8031等早期的51来说,指令周期和机器周期是一样的等于12乘时钟周期,但后来出现了很多改进型的51系列单片机如80320等,指令周期等于4个时钟周期,也就是说同样的晶振速度是原来的3倍。但无论如何变,T0、T1等定时器的计时任然按机器周期来计算的,也就是说12乘时钟周期。 定时器是按溢出产生中断的,所以要用溢出值65536减你所希望的值得到定时器的初值。 那么怎么计算赋值所决定的时间呢: 首先计算出机器周期:12*(1/22.1184/1000000)秒(应该是22.1184兆吧), 因
[单片机]
完整开发工具平台进一步简化MCU设计过程
微控制器及触摸技术解决方案的领导厂商爱特梅尔公司(Atmel® Corporation)宣布推出专为支持Atmel 微控制器(MCU)和最近付运的ARM® Cortex™-M4-based SAM4L系列而开发的完整硬件和软件平台集成开发工具平台(integrated development tools platform),进一步简化MCU设计过程。 现今的嵌入式硬件设计中,由于软件设计持续变得更加复杂,并且越来越多用于终端客户产品的差异化,因此为设计人员提供全部所需的工具和嵌入式软件的完整解决方案变得更重要。甚至,随着设计周期继续缩短,完全集成且无缝使用的完整工具平台变得更关鍵 —— 因為MCU供应商必须考虑芯片之外的内容。使
[单片机]
AD转换汇编程序实例
AD转换程序实例 ;此程序是一个简单的AD转换演示例程,作0-5V电压测试 ;转换结果从C口输出 非常直观 ;转换的值ADRESH在0V是0发光管全灭, 5V时全亮 ;============================================== include p16f73.inc ORG 0X00 NOP START BCF STATUS,RP0 CLRF PORTC MOVLW B'01000001' ;D7 D6=01 AD转换时钟频率= FOSC/8 MOVWF ADCON0 ;D5 D4 D3=000 AD转换模拟通道选择RA0/AN0 ;
[单片机]
STM8单片机中断的主要功能解析
内部中断:一般是由硬件错误或者运算过程中出错引起的,一般是不可避免的; 外部中断:是处理器的外设发出的中断请求,如定时器中断,UART接收中断,外部中断一般都可以通过中断控制器进行屏蔽; 1.ITC功能概述: ……所有IO引脚都具有外部中断能力,每个端口都有独立的中断向量以及独立的标志;外设中断能力; ……软件中断能力(TRAP) ……具有灵活的优先级和中断等级管理,支持可嵌套和同级中断管理: ——多达4个软件可编程的嵌套等级;——最多有32个中断向量,其入口地址由硬件固定;——2个不可避免的中断:RESET,TRAP;——1个不可避免的最高优先级硬件中断TL1; 2.中断的主要功能 1. 实现高速CPU和低速外设之间速度
[单片机]
介绍单片机硬件抗干扰经验
单片机硬件抗干扰经验 在研制带器的电子产品时,如何提高抗干扰能力和电磁兼容性? 一、下面的系统要特别注意抗电磁干扰: 1、微控制器时钟频率特别高,总线周期特别快的系统。 2、系统含有大功率,大电流驱动电路,如产生火花的继电器,大电流开关等。 3、含微弱模拟信号电路以及高精度A/D变换电路的系统。 二、为系统的抗电磁干扰能力采取如下措施: 1、选用频率低的微控制器 选用外时钟频率低的微控制器可以有效降低噪声和提高系统的抗干扰能力。同样频率的方波和正弦波,方波中的高频成份比正弦波多得多。虽然方波的高频成份的波的幅度,比基波小,但频率越高越发射出成为噪声源,微控制器产生的最有影响的高频噪声大约是时钟频率的3倍。 2、减
[单片机]
STMCU应用过程中与电源相关的案例分享
我们在从事STM32单片机的应用开发及调试过程中,往往会碰到各类异常。其中有不少比例的问题跟电源有关。对于一个电子产品而言,电源部分很关键、很重要,但在实际开发调试中,我们偶尔会有意无意的忽视它。这里分享几个实际案例,以加强刺激,加深印象。 毕竟因为电源问题可能导致的异常很多很多,这里分享几个案例算是抛砖引玉,希望大家在调试中对电源方面加以重视。个人认为,往往电源出问题时导致的异常时并不太好分析。多数时候异常表现得更为诡异或没章法。 注:下面提到的案例中异常原因都与电源有关,但并不是说出现类似异常时一定是电源的原因。 下面主要分享五个基于STM32应用的案例。 案例1:STM32芯片的PLL无法正常工作。 有人使用STM3
[单片机]