ImageVerifierCode 换一换
格式:DOCX , 页数:10 ,大小:21.54KB ,
资源ID:4812084      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4812084.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(微机硬件实验报告.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

微机硬件实验报告.docx

1、微机硬件实验报告微机硬件实验报告篇一:计算机硬件实验报告 (6000字)计算机硬件技术实验报告第四次和第五次实验姓名:李新基 学号:XX010630实验班号:23 机器号:39目录实验四. 中断技术 . 3一实验目的 . 3二实验基本任务 . 3 1. 中断响应过程的理解 . 32. 中断程序编程练习 . 6三、已完成的选作任务。 . 81. 6)(选做)去掉l4_int.c程序最后的那条无限循环语句,看看有什么现象?可以 去掉吗? . 83. (选做) 采用事件标志处理中断 . 84(选做) 按键抖动处理 . 10实验五. 基本时钟和定时功能 . 11一实验目的 . 11二实验基础任务。 .

2、 11 1. 数字示波器的使用 . 11 2. 测试上电复位系统的aclk、和smclk时钟频率 . 11 3. 掌握基本时钟模块的编程控制 . 12 4. dco出厂校验值的频率检测 . 12 5. 利用输出的时钟信号做中断源,实现定时功能 . 13三实验小结 . 13实验代码清单。 . 14实验四。 . 14 1. . . 14 1-5 . . 16 2. . . 182.思考题 . 213.改进版 . 243选作inta . 28 3intb . . 294.原程序 . 314选作改进版 . 33实验五 .352. . 35 3. . . 36 4. . . 37 5. . . 38实验

3、四. 中断技术一实验目的1. 了解中断原理,包括对中断源、中断向量、中断类型号、中断程序以及中断响应过程的理解;2. 掌握单片机c语言中断程序设计方法;二实验基本任务1. 中断响应过程的理解阅读下面c语言中断程序l4_int.c(见后页),说明程序执行的流程和实现功能。上机实践,回答下面问题,掌握用c语言编写中断程序的方法。1) 从程序如何判断用的是哪个中断源?其中断类型号是多少?将实验板上某一按键与该中断源对应的引脚相连,运行程序,操作按键,观察现象。2)main函数中无调用函数buzz的语句,函数buzz如何能被执行?何时会被执行? 据此描述中断响应过程。3) 如果port_int函数中不

4、清分中断标志p1ifg的后果是什么?4) 如果l4_int.c中的port1_vector改为port2_vector, 其他不变,程序执行的后果是什么?为什么?(可在关中断处加一断点,运行程序,看现象,分析原因)5)如果中断源采用的是p1.5, 按键用k7,请设计连线,修改l4_int.c程序完成以中断方式响应k7的操作。问题回答:1. 程序执行的流程和实现功能。流程:主循环 实现功能:当不进行任何操作时,l4不停闪烁,如果按下k2,则l4闪烁暂停,蜂鸣器响三次后,l4继续闪烁。 1)从p1out1=bit1;可判断出中断源为p1.1中断类型号为2。现象为当不进行任何操作时,l4不停闪烁,如

5、果按下k2,则l4闪烁暂停,蜂鸣器响三次后,l4继续闪烁。2)程序中有中断向量设置,当中断信号发出时,blink被暂停,而buzz作为中断子程序被调用。 中断响应过程是指在收到中断源信号时,程序暂停主程序中正在操作的过程,优先执行中断子程序,等中断子程序完成后,再次转向主程序。3)那样会使得中断子程序一直运行而不终止,从而系统无法回到主程序。4)后果:无法执行中断操作。原因:中断向量所表示的偏执地址与中断子程序地址不一致。 5) 2. 中断程序编程练习 在实验板上用跳线将按键k5、k6分别与单片机的p1.4和p1.5相连,编程以中断方式响应按键k5和k6的请求:当按下一次k5键,实验板上的蜂鸣

6、器发出一警报声;当按下一次k6键,实验板上的发光二极管l1闪3次。主循环中控制l7循环闪亮。思考:如果用长导线将按键k5、k6分别连接在p2.2和p2.5上,如何修改程序以实现任务2功能?原题目的电路图如下所示。 思考题的电路图为: 三、已完成的选作任务。 1. 6)(选做)去掉l4_int.c程序最后的那条无限循环语句,看看有什么现象?可以去掉吗?6)现象:l4闪烁一下后不再闪烁,程序停止,即使再次按下k2,也不能使蜂鸣器发出声音。3. (选做) 采用事件标志处理中断阅读程序l4_inta.c和l4_intb.c(见后页),描述其实现功能。在实验板上将p1.0与一个按键的控制端相连, p1.

7、7与蜂鸣器的控制端相连。 比较l4_inta.c和l4_intb.c二者在编程实现上有何不同。注意各自中断子程执行时间的长短。 用l4_intb.c的方法,改写任务2的编程。l4-ina.c实现的功能是按下k1,蜂鸣器响一下,不按则不响。 l4-inb.c与l4-ina.c功能相同。电路图如下。l4-ina.c和l4-inb.c的电路图。用l4-inb.c的方式编程,电路图为 4(选做) 按键抖动处理 程序l4_key.c见后页, 其功能是用中断方式相应与p1.2连接的按键,计数按键的次数,并将所计的次数用8个发光二极管显示出来。运行该程序,并操作按键,观察实际操作的次数与显示值之间的关系。编

8、程改进l4_key.c程序,用软件方式去除按键抖动的影响。 实际操作次数与显示值之间的关系是,显示值用二进制的方式表现实际操作次数。 电路图如下所示。 实验五. 基本时钟和定时功能 一实验目的1. 了解msp430gxxx基本时钟模块的工作原理,掌握其控制方法;2. 掌握利用时钟信号和中断技术实现定时功能的方法;二实验基础任务。1. 数字示波器的使用1)将信号源的波形在示波器上显示出来,掌握测量周期、频率、峰峰值的方法;2)用孔孔导线将实验板的地信号与示波器的地信号相连,测量实验板上的vcc电源信号是否正常。测试结果为3.68v。跟预期值相差不大。2. 测试上电复位系统的aclk、和smclk

9、时钟频率编程输出单片机上电复位后的aclk、和smclk时钟,用示波器测量其频率,并记录下来。 思考:上电复位后,cpu工作的时钟信号mclk频率值是多少? aclk的时钟频率是32.89khz。smclk的时钟频率是1.149mhz。思考题:在上电复位以后,进入到view register观察,发现bcsctl2寄存器上selm位为00,sels位为0,因此,mclk的频率与smclk的频率一样,都是1.149mhz。3. 掌握基本时钟模块的编程控制参看附录a实验板原理图,用跳线将jp8中的插针信号接到晶振32.768khz侧,使晶振与单片机的p2.6和p2.7相连。编程控制基本时钟模块,设

10、置aclk分别为下面时钟频率,并通过p1.0输出aclk,用示波器观察:1) aclk=4096hz;(时钟源外部晶振,32768hz/8)2) aclk=3khz;(时钟源vloclk, 12khz/4)思考:可否编程在引脚p2.0上输出aclk? 为什么?1)4098hz。2)2.89khz。思考题:不能,p2引脚不具有输出辅助时钟的功能。4. dco出厂校验值的频率检测1)利用出厂校验值,编程使dco分别为1mhz、8mhz、12mhz、16mhz,通过p1.4输出,用示波器测量实际值。1)dco为1mhz时,实际值为1.010mhz,dco为8mhz时,实际值为8.065mhz,dco

11、为12mhz时,实际值为12.05mhz,dco为16mhz时,实际值为16.03mhz。5. 利用输出的时钟信号做中断源,实现定时功能将任务3 中p1.0输出的3khz aclk时钟信号,作为p1.5的中断申请信号,用导线将p1.5与p1.0相连即可,在中断子程中设置一个计数变量,计数中断子程被执行的次数,中断子程每被执行3000次表示一秒时间到。利用该定时功能,将8个发光二级管设计成一个秒表,显示秒值,每秒改变一次8个发光二级管的显示。思考: 如果要每隔10秒蜂鸣器响一声,如何在任务5的基础上编程实现?思考题:只需设置一个函数,执行十分度和二分度的相互转换,然后利用十分度的输出来控制蜂鸣器

12、即可。三实验小结这两次的实验内容基本上都是与硬件技术关系密切,从这两次的实验来看,计算机硬件这门课程中,c语言的学习只是一个辅助功能,更多的是考察我们对于本课程的理解和应用。实验代码清单。实验四。 1.#include in430.h #include io430.h void delay( ) /延时函数 unsigned int j; for (j=0;jvoid blink( ) /led 闪 p2out &=bit3; delay();p2out |= bit3; delay();void buzz( ) /蜂鸣响 unsigned int i; for (i=0;i篇二:计算机硬件实

13、验报告_第三次实验6 中断技术姓名:王悦昶 学号:XX010439 实验班号:周四第二节机器号:16一、实验目的 1、了解中断原理,包括对中断源、中断向量、中断类型号以及中断过程的理解; 2、掌握汇编语言中断程序的设计方法; 3、(选作)了解C语言中断程序设计方法二、实验基本任务1、中断过程的理解通过阅读汇编语言中断程序L6_P1_int.s43,说明程序执行的流程和实现的功能。回答下列问题,了解用汇编语言编写中断程序的方法。(1)、阅读程序L6_P1_int.s43,从程序中判断用的是哪一个中断源?其中断类型号是多少?设计将实验板上的某一按键与该中断源对应的引脚相连。运行程序,操作按键,观察

14、现象。答:从程序中可以判断出使用的是P1口作为中断源。P1口的中断类型是4。在中断子程中进行了触发中断的具体引脚的检测,当触发中断的是P1.1口的时候,将P2OUT寄存器中的数值取反。烧写程序后,每按下KEY2键一次,8个LED灯的亮灭状态改变一次。(2)、在L6_P1_int.s43中,没有CALL语句,中断程序如何被执行?何时会被执行?答:中断程序只有在其对应的中断源被触发的时候才会执行。中断程序的执行是由硬件控制的,与软件编程无关,硬件依次自动完成入栈保护断点、入栈保护SR、清零SR,从中断向量表中取中断向量值PC,转去执行中断服务子程序。所以不需要CALL语句也可以实现;在本例中,当K

15、EY2键被按下之后,执行中断程序。(3)、在L6_P1_int.s43中,如果中断子程序中不清分中断标志P1IFG的后果是什么?答:如果不清除分中断标志,则不论是否再次按键,中断子程序会不断的被执行。(4)、如果L6_P1_int.s43中的PORT1-VECTOR改为PORT2_VECTOR,其他不变,程序执行的后果是什么?为什么?答:不会触发中断,因为做出上述语句更改后,中断源更改为了PORT2,而在程序的初始化语句段并没有对PORT2中断相关的寄存器进行设置,故不会有中断被触发。(5)、如果去掉L6_P1_int.s43程序最后的那条无限循环语句,程序执行的流程是什么样子的?为什么?答:

16、执行到最后一句之后,EW430软件报错:The stack pointer for stack STACK is outside the stack range。因为去掉无限循环语句之后,CPU找不到下一条需要执行的语句。执行此程序所需硬件连线图如下(其中电源,晶振、复位、JTAG下载部分电路图在本实验中其余任务中都是相同的):硬件原理图如下:1修改后的程序如下:#include msp430.h ; #define controlled include fileNAMEmain ; module namePUBLIC main ; make the main label vissible o

17、utside this module ;中断向量表首地址+端口2中断向量符号偏址 DC16 intP1; set port2 vector to intP1 labelRSEG CSTACK; pre-declaration of segmentRSEG CODE ; place program in CODE segmentinit: MOV #SFE(CSTACK), SP; set up stackmain: NOP ; main programMOV.W#WDTPW+WDTHOLD,&WDTCTL ; Stop watchdog timerDINT;禁止可屏蔽中断 GIE=0;设置P1

18、为基本I/O功能MOV.B #0, &P1SELMOV.B#0, &P1OUT ;置P1OUT初值为0MOV.B#0xFF, &P1DIR;设置P1引脚为输出BIC.B #BIT2, &P2SELBIC.B #BIT2, &P2DIRBIS.B#BIT2, &P2IES ;允许可屏蔽中断 GIE=1 2;P2.2中断相关设置 BIC.B#BIT2, &P2IFG BIS.B#BIT2, &P2IE EINTJMP $ ; jump to current location $ (endless loop);中断子程序intP1: BIT.B#BIT2, &P2IFGJZexitINV.B&P2OUT BIC.B#BIT2, &P2IFG;清分中断标志位exit: RETIEND修改后的程序进行烧写后,按下KEY7键,LED灯亮暗状态转换一次。(7)、在中断子程序入口处设置一个断点,观察

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1