嵌入式实验报告_第1页
嵌入式实验报告_第2页
嵌入式实验报告_第3页
嵌入式实验报告_第4页
嵌入式实验报告_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、序号35嵌入式实验报告姓名:王天雷班级:231142学号:20141004363学院:自动化学院专业:自动化指导老师:张莉君2017年6月 实验一思考题:(1)在嵌入式系统编程当中,汇编语言和C语言分别有什么优势?是否可以完全摈弃其中一种语言?为什么?答:汇编语言执行效率高,具有直接和简捷的特点,可有效地访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等,且占用内存少,执行速度快,是高效的程序设计语言。但其适用范围较窄。不同的机器对应不同汇编指令,使用汇编语言能面向机器并较好地发挥机器的特性,得到质量较高的程序,但开发周期长。而C语言则适用范围广,可移植性强,开发周期短,但是

2、与汇编语言比较知性效率低。两者混合使用,可结合各自优点,故不可完全摒弃其中一种语言。(2)ARM汇编调用C语言以及C语言调用ARM汇编时,如何传递参数?本次实验例程中参数是如何传递的?答:当参数不超过4个时,可使用寄存器R0R3来传递参数,当参数个数超过4个时,还可以使用数据栈来传递参数。返回结果通过R0R3传递。本次实验例程中数据传递是通过寄存器R3传递的数据。(3)例程中查询方式的按键,采用了软件防抖措施,其工作流程是什么?还有哪些方式可实现按键防抖?答:例程中软件防抖工作流程是先扫描按键keyl,若keyl键按下则执行下面程序,若有键按下,则调用延时程序,延时返回后继续扫描key1键,结

3、束后判断按键是否确实发生,若有,则将rGPBDAT地址信号左移五位,实现led1的点亮,然后开始扫描key2键,防抖原理如key1。硬件法:1、电容滤波法:利用其充放电特性,使整流后的脉动直流电压变成相对比较稳定的直流电压。2、RS触发器法:两个与非门构成一个RS触发器,当按键未按下时,输出为1,当键按下时,输出为0.3、中断法:各个按键都接到外部中断口上,当任何一个按键按下时,引起中断。(4)c语言和汇编语言中是如何操作寄存器的?答:通过对寄存器地址、数据的输入、传递、输出来操作的。报告要求:(1)说明实验内容三中例程软件的功能并给出实现流程图。答:首先用汇编程序进行一些初始定义,然后调用c

4、语言实现主要main函数功能。语言函数中定义好LED灯和按键输入输出端口地址,Main函数中选取GPB5、6、7三个端口,和GPF0、1,然后开始扫描按键KEY1,将rGPBDAT地址初始化为0 xff;,用rGPFDAT与按键信号相与,判断key1键是否按下。若有,则调用延时函数,结束后判断按键是否确实发生,若有,则将rGPBDAT地址信号左移五位,实现led1的点亮;若无,则进入下一段程序判断key2键是否按下,工作原理同key1键的判断过程。流程图如下:否是扫描K2是否有键按下扫描K1是否有键按下GPBDAT地址左移6位,点亮Ied2灯GPBDAT地址左移5位,点亮ledl灯选GPB5,

5、GPB6,GPB为端口输出禁止GPF端口上拉GPBDAT设置初始地址为Oxff端口B寄存器预定义开始2)给出实验内容三中按键软件防抖功能的详细实现流程图。开始否星否LI断是否如下衢星否辭下曰7TE相应灯灭调用延T(3)给出实现开发板上3个LED按流水灯方式闪烁的程序,其中具有必要注释,并附AXD中调试成功的截图。答:AREAInit,CODE,READONLY;该伪指令定义了一个代码段,段名为InitENTRYResetEntryldrr0,=0 x53000000movr1,#0 x0;程序的入口点标识;关闭看门狗movsp,#0 x38000000IMPORTMainblMain;定义堆栈

6、指针;声明主函数Main;调用主函数strr1,r0;下面是延迟子程序EXPORTdelaydelaysubr0,r0,#1;r0=r0-1cmpr0,#0 x0;将r0的值与0相比较bnedelay;比较的结果不为0(r0不为0),继续调用delay,否则执行下一条语句movpc,lrEND截图如下:;返回;程序结束符iCEWfrQEEraG?EXi_biGTH_lf!i歼現工IYaLliH-ctwieL-443qXp394MaaMXIDM卄IX期刚卜討刚E丽-rSsccjnc4Al-rlC!-2-1L-TlJzaaJJEBTt-=-WOaZMEDl-P*aiaaEN-al-ODFE吋讥Ft

7、邸”1軒F2U-fLli(XirueRr/:IUcDgtIL-44LB1IK4Eam凹r-缶*1-fknwmv_pnHiT-ill-H-Ftp*hd|CA4-ta-!3S2ICa:DLaLa:銅皿ND谕glCfaLpulHabiIw诅gM1CLsfILmgHM&:ttaiHmi4=ArFfliThi;塔和Fltillhfwr*iTltHkii邛iinElL-hRar血JXHEinaKPL-imBxLhbYlvnFanriaEjmaiJantn1tf|*|0ltfltflfl*|剛DQ.E)K.II1Q.EJIEPa|tQ|3S|I|冲|m畅厲F|JJ|T砂|0?忙niEU-A7F3尹吓fiFF

8、ll=-|5-;1*2|Ru-raxuLd卍山丫3乂eJmi门*旳口:二d|近kid:么la斗&口QDxH:知LEirimi.TsHevLi劭口固爼芻n/Efbm站PSLS列詔冊皱計蕊刃柚41总話VisLliB=Ewrict-43CuK)a94iXIK-MmTUPWMEroC!aiKMiMMaa&KQCKO卜=4aaKOQEWC-rfCWECM-S7st3加如呦-rS-ri.atvxaioM-nt-rJJ3妙加ga卜=13aanjrrm:l-s-WaaQEDlaiZWJEDM:l-i?DFr即甘atFt卫氈仕!ETlbdgddcTlSEILP4UdatrUE叫2ILDrfEPCTB-smt-.

9、WJBIC?W_wnIEE_Zf.SKL-n=,ZW!i.ZW!.:EFA*ifllXIQEEQJ加“卑E3E僞口卑上红tfEF-席罚.也OFH.kiLaca)LKf*!-UEAOZtT-X:KiJQiu-cl实验二思考题:(1)比较实验1和实验2中ADS下的工程设置的异同点,并分析其不同点设置的理由。答:实验1中Linker里面的loutputRObase地址设为0 x30000000,这是S3C2440的SDRAM的首地址。二在实验二中outputRObase地址改为0 x00000000,这是s3c2440的nandflash的首地址。实验一程序是在NorFlash模式下运行,实验二是在

10、NandFlash模式下。(2)在本实验中为什么要把可执行程序下载到NANDFlash中运行,而不是直接下载到SDRAM中运行?如果直接下载到SDRAM中运行会发生什么情况?答:中断向量表位于地址0 x30000000一下,如IRQ中断向量地址为0 x00000018,、FIQ中断向量地址为0 x0000001c;而SDRAM一般是映射到地址0 x30000000以后。此程序中使用了中断,若程序下载到SDRAM中,则会因中断向量地址不对而找不到中断函数,则程序无法正常执行。故要将程序下载到NANDFlash中运行。本实验中,FCLK设置为200MHz,S3C2440主频可达到400MHz,若想

11、设置FCLK为400MHz,寄存器MPLLCON该如何设置(通过查阅S3C2440芯片手册,根据所提供计算公式来计算)。答:已知开发板外部时钟晶振Fin=12MHz要是PLL输出FCLK=400MHz,则可令公式中m=200,p=3,s=2;则相应的MDIV=192=0 xc0,PDIV=1,SDIV=2;故MPLLCON=(0 xc012)+(0 x014)+(0 x02)实验报告要求:(1)请画出本程序发生按键中断后,中断响应及返回的整个流程图。(2)本实验程序中定时器timer0是如何实现按键防抖动的,请画出中断方式的按键,软件防抖动的流程图。开始否是否LI断是否如下吋星否束曰SZE:按犍中断淀吋器关闭调用延日擢序实验小结:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论