AVR单片机2015年试题.docx

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
AVR单片机2015年试题

1、下面汇编代码、通过编译器编译,请回答问题。1 ldi r16,$22 ldi r17,$343 ldi r18,0x104 ldi r19,$15 ldi r20,$806 loop1:mul r19,r207 loop2:muls r19,r208 loop3: add r17,r169 loop4:sub r17,r1910 dec r1811 brne loop2nop(1)、如果外接晶振为4M,请问这段代码运行完毕所需要多少微秒时间?(2)、第6行运完毕后R0、R1里面的值是多少?(3)、第7行运完毕后R0、R1里面的值是多少?(4)、全部运行完毕后R17、R18里面的值是多少?注:所有值用16进制表示2、阅读下面汇编代码、回答问题。lp: ldi r16,$01 ldi r17,$02 add r16,r17 lsl r16 rjmp lp请问此程序段能运行多少次?第1次运行到“rjmp lp”处,r16的值是多少?3、阅读下面汇编代码、回答问题。ldi r16,$10 asr r16 ldi r17,$FC asr r17 nop运行到“nop”处,r16和r17的值各是多少?4、根据ATmega16单片机C语言编程相关知识,请在右边横线上填写每行程序的功能。void timer0_init(void){ TCCR0 = 0x00;TCNT0 = 0x9C; TCCR0 = 0x02; TIMSK |= 0x01; SEI(); }1、以下汇编代码通过编译器编译,请回答问题。1 ldi r16,$42 ldi r17,$383 ldi r18,0x104 ldi r19,$25 ldi r20,$806 loop1:mul r19,r207 loop2:muls r19,r208 loop3: add r17,r169 loop4:sub r17,r1910 dec r1811 brne loop2nop(1)、如果外接晶振为4M,请问这段代码运行完毕所需要多少微秒时间?(2)、第6行运完毕后R0、R1里面的值是多少?(3)、第7行运完毕后R0、R1里面的值是多少?(4)、全部运行完毕后R1(7)、R18里面的值是多少?注:所有值用16进制表示2、阅读下面汇编代码,回答问题。lp: ldi r16,$01 ldi r17,$02 add r16,r17 lsl r16 rjmp lp请问此程序段能运行多少次?第1此运行到“rjmp lp”处,r16的值是多少?(3)、阅读下面汇编代码、回答问题。ldi r16,$80 asr r16 ldi r17,$FE asr r17 nop运行到“nop”处,r16和r17的值各是多少?4根据ATmega16单片机C语言编程相关知识,请在右边填写每行程序的功能。void ad_init(void){ ADMUX=0x47; SFIOR=0x1F; SFIOR|=0x60; ADCSRA=0xAD; #asm(sei) }程序编写(1)、电路原理图如下图所示,利用C语言编写程序,编译器为ICCAVR,实现:当A按下,蜂鸣器发声,LED0~LED3发光;当B按下,LED4~LED7发光;当C按下,LED0~LED7发光;当D按下,LED0~LED7发光,同时,蜂鸣器发声。(2)、假如A=2,B=5,C=13,D=12,E=4为立即数,均已知,请利用汇编语言编写程序实现表达式A*((B+C)*D-E),最后将结果存放在R3(高位)和R2(低位)。(3)、电路原理图如下图所示,利用C语言编写程序,编译器为ICCAVR,实现:如果A按下,LED0发光;如果B按下,LED0和LED1发光;如果C按下,LED0、LED1和LED2发光;如果D按下,四个发光二极管均发光;(4)下图为Atmega16控制共阴极8段数码管的工作原理图,请以ICC AVR为后台,自己编写完整C语言程序循环显示0-9的数字,小数点要一亮一灭,要有延时函数和相关头文件。(5)单极3相步进电机有三个磁激励相,分别用A、B、C表示,每相有一个磁激线圈。通过控制三个磁激线圈电流的通断的先后时间顺序和通断频率就可以改变步进电机的变旋转方向和控制转速,a图是步进电机控制电路,b图是3相步进电机控制时序图。(a)步进电机控制电路(b) 3相步进电机控制时序图如果CPU采用Atmega16,请以IC

文档评论(0)

liudao + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档