计算机C语言等级考试模拟题(福建省)
微机原理实验报告
学 院:
班 级:
学 号:
姓 名:
小班学号:
目录
实验 1、ADS1.2 集成开发环境的使用3
一、实验目的3
二、实验内容3
三、作业3
所遇问题与解决方案7
心得体会7
实验 2、ARM 汇编程序的设计7
一、 实验目的7
二、 实验内容8
三、作业8
所遇问题与解决方案9
心得体会9
实验 3、ARM 汇编语言与 C 语言的联合编程10
一、实验目的10
二、实验内容10
三、作业10
所遇问题与解决方案13
心得体会:14
实验 4、动态显示数码管与扫描矩阵键盘14
一、实验目的14
二、实验内容14
三、作业14
所遇问题与解决方案15
心得体会16
实验 5、Flash 的编程操作与 UART 串口通信16
一、实验目的16
二、实验内容16
三、作业16
所遇问题及解决20
心得体会20
实验6、STR710F处理器的EIC与中断向量表的初始化20
一.实验目的20
二.实验内容20
三﹑作业20
实验所遇问题及解决:31
心得体会31
实验8、STR710F处理器ADC及其编程应用31
一、实验目的31
二、实验内容31
三.作业31
所遇问题及解决35
心得体会35
实验9、 STR710F处理器LCD编成及其应用36
一、实验目的36
二、实验内容36
三、作业36
所遇问题及解决36
心得体会37
实验 1、ADS1.2 集成开发环境的使用
一、实验目的
ADS 集成开发环境,使用 ADS 编译、调试并跟踪一段已有的程序,了解嵌入式开发 的基本思想和过程。
二、实验内容
ADS 集成开发环境。新建一个简单的工程文件,并编译这个工程文件。掌 握 ADS 集成开发环境的基本设置。学会在程序中设置断点,观察寄存器、系统内存和变量。
三、
1、在我们示列程序中使用了两条伪指令:
LDR R0,=0xF000
LDR R1,=0x1000FFFF
它们经过编译后被最终转换成什么指令?在编译过程中ARM 汇编器是如何处理
LDR Rn,=Expression 形式的伪指令的?
答: 第一句中的LDR指令经过编译后最终转换成MOV指令,第二句中的LDR指令经过编译后最终转换成LDR指令。在编译过程中ARM汇编器具体如下:
1 AREA init,CODE
2 ENTRY
3 LDR R0,=0xF000 [0xe3a00cf0] mov r0,#0xf000
4 LDR R1,=0x1000FFFF [0xe59f1000] ldr r1,0x0000000c ; = #0x1000ffff
5 STR R0,[R1] [0xe5810000] str r0,[r1,#0]
END
因为若加载32位立即数,如果该立即数在MOV或MVN指令范围内,则生成一个MOV或者MVN指令,否则将该常数放入存储器的一个数据缓冲区中,并生成一个以PC为基址的变址寻址的LDR指令,从数据缓冲区将这个立即数装载到指定的寄存器中。
1 AREA init,CODE
2 ENTRY
3 LDR R0,=Expression [0xe59f0004] ldr r0,0x0000000c ; = #04 LDR R1,=0x1000FFFF [0xe59f1004] ldr r1,0; = #0x1000ffff
5 STR R0,[R1] [0xe5810000] str r0,[r1,#0]
6
7 AREA Datal ,DATA
8
9Expression DCD 0x0000
10
11 END
2、编写一段代码,它能完成以下的功能:把USER 模式下的R13 的值赋为0x1111,把IRQ 模
式下的R13 的值赋为0x2222,把FIQ 模式下的R13 的值赋为0x3333,把SVC 模式下的R13
的值赋为0x4444,把Abort 模式下的R13 的值赋为0x5555,把Undef 模式下的R13 的值赋
为0x6