《单片机小系统应用》由会员分享,可在线阅读,更多相关《单片机小系统应用(20页珍藏版)》请在金锄头文库上搜索。
1、单片机小系统应用,张阿磊(组长)杨小庆王 盼2012.10.4,组员,发光二极管的点亮控制电路图(1),程序,简化,发光二极管的点亮控制电路图(2),同亮流,逐1,逐2,DU流,拓展,发光二极管的点亮控制电路图(3),点8,发光二极管的点亮控制电路图(4),寻址,点亮一个LED信号灯的流程图及程序,开始,对P1.0口清零,保持,ORG 0000HLJMP MAINORG 0100HMAIN: CLR P1.0 ; 点亮LEDSJMP MAIN ; 等待END,返回,将程序从地址0000H 开始存放在存储器中,将主程序MAIN从地址 0100H开始存放在存 储器中,同时点亮/熄灭八个LED信号灯
2、的流程图,开始,START:P1 #00H,延时程序,P1 #0FFH,延时程序,延时程序,R4#0FFH,NOP,R4-1=0?,R3-1=0?,R3#0FFH,N,Y,N,Y,同时点亮/熄灭八个LED信号灯的程序,ORG 0000H START: MOV P1,#00H ACALL DELAY MOV P1,#0FFH ACALL DELAY AJMP START DELAY: MOV R3,#0FFH DEL2: MOV R4,#0FFHDEL1: NOPDJNZ R4,DEL1DJNZ R3,DEL2RET END,返回,从上到下逐个点亮/熄灭八个 LED信号灯的流程图及程序(一),O
3、RG 0000H START: MOV P1,#0FEH ACALL DELAY MOV P1,#0FDH ACALL DELAY MOV P1,#0FBH ACALL DELAY MOV P1,#0F7H ACALL DELAYMOV P1,#0EFH ACALL DELAY MOV P1,#0DFH ACALL DELAY MOV P1,#0BFH ACALL DELAY MOV P1,#7FH ACALL DELAY AJMP START DELAY: MOV R3,#0FFH DEL2: MOV R4,#0FFHDEL1: NOPDJNZ R4,DEL1DJNZ R3,DEL2RET
4、END,开始,P1#0FEH,延时,P1#0FDH,延时,延时,P1#7FH,不断赋值延时,返回,从上到下逐个点亮/熄灭八个 LED信号灯的流程图及程序(二),ORG 0HLJMP STARORG 30H STAR: MOV A,#7FH LOOP: RL AMOV P1,ALCALL DELAYLJMP LOOP DELAY: MOV R7,#250 D1: MOV R6,#250 D2: NOPNOPNOPNOPNOPNOPDJNZ R6,D2DJNZ R7,D1RETEND,开始,指定STAR从30H单 元开始执行,A#7FH,A左移一位,P1A,延时程序,返回,以DOWN UP模式逐个
5、点亮/熄灭八个LED,开始,A#FEH,P1A,R2#7,A左移一位,P1A,延时,R2#7,延时,P1A,A右移一位,右移7次,左移7次?,Y,N,Y,N,DOWN,UP,DOWN UP程序,ORG 0HMOV A,#0FEH ;下行初值MOV P1,AMOV R2,#7 DOWN: RL A ;下行方向ACALL DEL50MOV P1,ADJNZ R2,DOWNMOV R2,#7 UP: RR A ;上行方向ACALL DEL50 MOV P1,ADJNZ R2,UPMOV R2,#7SJMP DOWNDEL50: MOV R7,#0FFH ;延时50ms DEL1: MOV R6,#0
6、FFHDJNZ R6,$DJNZ R7,DEL1RETEND,返回,我对7中寻址指令的理解,(1)位寻址。位寻址方式中的操作数不再是整个字节,而是某一个位,指令中给出的是位地址。 (2) 立即寻址。采用这种方式时,指令中直接给出了参与操作的8位或16位二进制常数,并在此常数前面加“#”作为标志。 (3) 寄存器寻址。寄存器寻址是对指令选定的寄存器进行读写,能实现这种寻址方式的寄存器有:R0R7、A、B和DPTR。 (4) 直接寻址。在直接寻址方式中,指令直接给出操作数所在的存储单元地址。直接寻址方式只能使用8位二进制地址,因此这种寻址方式仅限于对内部RAM进行访问。 (5) 寄存器间接寻址。首
7、先将操作数的地址存放在某个指定的寄存器中,寄存器间接寻址是把指定寄存器的内容作为地址,由该地址所指定存储单元内容作为操作数。(6) 变址寻址。变址寻址方式是将基址寄存器(DPTR或PC)的内容加上累加器A中的内容作为操作数的地址。变址寻址只适用于程序存储器ROM (7) 相对寻址。所寻找的地址用相对于本条指令所在地址的偏移量来表示,用于指定程序转移的目的地址。,本次任务中遇到的问题及解决方法,建立了程序目标文件后,编译失败,反复检查都没有错。无奈只得将程序复制,删除工程项目,再重新建立,最后突然就编译通过了。 软件调试通过且电路连接正常但硬件无法仿真,仔细检查发现有两个同型号电阻的标号重复了。
8、重新对其编号后,电路可以仿真了。 软件调试通过且电路连接正常,按下仿真按钮,LED灯两端有高低点评的变化,但LED灯不亮,马上想到可能是分压电阻太大造成的,于是我将原来5K的电阻换成125,再仿真,LED灯闪烁。 软件调试通过,但进行硬件仿真实现8个LED闪烁时,总有一个LED不亮,找王龙帮忙,原来不亮LED没接好。,没逗号,返回,点击,问题在这儿,返回,太大了,返回,接触不良,还没有搞明白的问题,8位二进制有符号数 11111111B -127 同时11111111B -0 8位二进制数有00000000B +0和11111111B -0两个零,16位二进制数为何只有0000H 0一个零 BCD码、二进制数、十进制数、八进制数、十六进制数能比较大小吗? 51单片机的20、40引脚为什么都不画出,搭建原理图需要连接时怎么办? 80H的高8位是什么,低八位是什么? 何为准双向口?锁存器如何置1? LJMP、SJMP、AJMP用法和功能上有何区别?,?,谢谢观赏,WPS Office,Make Presentation much more fun,WPS官方微博kingsoftwps,