广大嵌入式作业二

一、修改main.s源文件,增加以下内容:

string:
    .asciz "广州大学\n\0"  
data_format:
    .ascii "求和结果:%d\n\0"                 //printf使用的数据格式控制符
 
data_format1:
    .ascii "%08x:%02x\n\0"                 //printf使用的数据格式控制符,其中8表示输出位数,
                                         //0表示将输出的前面补上0,直到占满指定列宽为止
//(1.7)【不变】开总中断
	cpsie  i  
//显示hello_information定义的字符串
	ldr r0,=hello_information   //待显示字符串首地址
	bl  printf		            //调用printf显示字符串
	
	ldr r0, =string     
	bl printf    
	//bl .   //在此打桩(.表示当前地址),理解发光二极管为何亮起来了?
 
	
//(1)======启动部分(结尾)=======================================
 
//(2)======主循环部分(开头)=====================================
 
 
sum_loop:  
    add r2, r2, r1   //r2 += r1  
    add r1,r1, #1   //r1++  
    cmp r1, #11      //比较r1是否等于11  
    bne sum_loop     //如果不是,继续循环  
  	
  	mov r1, #sumResult
    str r2,[r1]	//将结果存入sumresult变量   
  
    //显示求和结果
    ldr r0,=data_format
    mov r1,r2 	//加载求和结果到r1  
    bl printf   //调用打印整数的函数,参数是r0,r1  
  
    //显示sumresult的地址  
    mov r0, #sumResult //将sumResult的地址加载到r0  
    bl printf   //调用打印地址的函数,参数是r0  
    
	//bl .   //在此打桩(.表示当前地址)
 
 
 
main_loop:                      //主循环标签(开头)
//(2.1)主循环次数变量mMainLoopCount+1
		ldr r2,=mMainLoopCount     //r2←mMainLoopCount的地址
		ldr r1, [r2]
		add r1,#1
		str r1,[r2]	
//(2.2)未达到主循环次数设定值,继续循环
        ldr r2,=MainLoopNUM
		cmp r1,r2
		blO  main_loop     //未达到,继续循环
//(2.3)达到主循环次数设定值,执行下列语句,进行灯的亮暗处理
 

2、实验结果:

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值