资源描述:
《汇编语言程序设计new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、实验5.汇编语言程序设计一、实验目的1.掌握编写和调试汇编语言程序的方法;2.掌握模块化汇编语言程序设计方法3.了解简单电路的控制方法二、实验任务1.简单电子表的设计用8个发光二极管以秒为单位显示时间值,按下面步骤完成一个简单电子表的设计:1)硬件连线;2)编写延时子程;3)编写完整程序;4)(选做)增加按键控制功能。程序清单如下:(程序5_1.1)#include"msp430.h"NAMEmainPUBLICmainORG0FFFEhDC16initRSEGCSTACKRSEGCODEinit:
2、MOV#SFE(CSTACK),SPmain:NOPmov.w#WDTPW+WDTHOLD,&WDTCTLmov.b#0,&P2SELmov.b#0,&P4SELmov.b#0,&P5SELmov.b#0ffh,&P2OUTmov.b#0FFH,&P4OUTmov.b#0FFH,&P5OUTmov.b#0ffh,&P2DIRmov.b#0FFH,&P4DIRmov.b#0FFH,&P5DIRtime:mov#59,R4mov#4,R5MOV#0,R6MOV#0,R7second:ADD#1,R6XO
3、R#11111111b,R6mov.bR6,&P2OUTCALL#delayXOR.b#11111111b,R6DECR4JNZsecondMOV.b#0h,&P2OUTmov#59,R4minute:CALL#delayADD#1,R7XOR#11111111b,R7MOV.BR7,&P5OUTXOR#11111111b,R7DECR5JNZsecond;MOV.B#0FFH,&P5OUTbuzz:MOV.B#0FDH,&P4OUTCALL#delayMOV.B#0FFH,&P4OUTJMPini
4、tdelay:PUSHR14PUSHR15MOV#10h,R15ww2:MOV#0x4000,R14ww1:DECR14JNZww1DECR15JNZww2POPR15POPR14RETEND选作程序清单:(程序5_1.2)#include"msp430.h"NAMEmainPUBLICmainORG0FFFEhDC16initRSEGCSTACKRSEGCODEinit:MOV#SFE(CSTACK),SPmain:NOPMOV.W#WDTPW+WDTHOLD,&WDTCTLMOV.B#0,&P2
5、SELMOV.B#0FFh,&P2DIRMOV.B#0FFh,&P2OUTBIC.B#BIT5,&P6SELBIS.B#BIT5,&P6DIRBIS.B#BIT5,&P6OUTBIC.B#BIT2+BIT3+BIT4,&P1SELBIC.B#BIT2+BIT3+BIT4,&P1DIRPUSH.B#0FFhMOV.B#3Ch,R5MOV.B#4,R6MOV#0,R9k2:BIT.B#BIT2,&P1INJNZk3MOV.B#0,R9JMPkk2k3:BIT.B#BIT3,&P1INJNZk4MOV.B
6、#1,R9JMPkk2k4:BIT.B#BIT4,&P1INJNZkk2MOV.B#2,R9kk2:POPR4CMP.B#0,R9JNZkk3MOV.B#0FFh,R4MOV#3Ch,R5MOV.B#4,R6JMPdispkk3:CMP.B#1,R9JNZkk4DECR4DECR5JNZdispSUB#40h,R4BIS.B#3Fh,R4MOV.B#3Ch,R5DECR6JNZdisp;BIC.B#BIT5,&P6OUTCALL#delayBIS.B#BIT5,&P6OUTMOV.B#0FFh,R4
7、MOV.B#3Ch,R5MOV.B#4,R6JMPdispkk4:CMP.B#2,R9JNZk2JMPdispdisp:MOV.BR4,&P2OUTCALL#delayPUSHR4JMPk2delay:PUSHR14PUSHR15MOV#10h,R15ww2:MOV#0x4000,R14ww1:DECR14JNZww1DECR15JNZww2POPR15POPR14RETEND思考:如果硬件连线是将发光二极管LED8~LED1分别与P2.7~P2.0连接,按键Key4~Key2分别与P1.4~P1.
8、2连接,蜂鸣器BUZZ与P6.5连接的话,实验板上连线,如何编程实现任务1?将任务1程序中相应端口修改成实验板上硬件连线方式就能够实现任务1。2.数码管的显示控制1)程序清单如下:(程序5_2.1)#include"msp430.h";NAMEmain;PUBLICmain;ORG0FFFEhDC16init;RSEGDATA16_CLEDdata:DB3FH,06H,5BH,4FH,66H,6DH,7DH,07HDB7FH,6FH,77H,7CH,39H,5EH,7