ARM实训指导书_第1页
ARM实训指导书_第2页
ARM实训指导书_第3页
ARM实训指导书_第4页
ARM实训指导书_第5页
已阅读5页,还剩1页未读, 继续免费阅读

下载本文档

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

文档简介

1、键盘中断实验1 实验目的1通过实验掌握中断式键盘控制与设计方法;2熟练编写S3C2410 中断服务程序。2 实验内容编写中断处理程序,处理一个键盘中断,并在串口打印中断及按键显示信息。3 预备知识1了解键盘电路的构成以及原理;2了解中断的作用以及处理过程。4 实验设备硬件:S3C2410 嵌入式实验箱一套,JTAG 仿真器一个。软件:PC 机操作系统Win98、Win2000 或WinXP,ADS1.2 集成开发环境,仿真器驱动程序,超级终端通讯程序。5 实验原理及说明用户设计行列键盘接口,一般常采用3 种方法读取键值。一种是中断式,另外两种是扫描法和反转法。 中断式:在键盘按下时产生一个外部

2、中断通知CPU,并由中断处理程序通过不同的地址读取数据线上的状态,判断哪个按键被按下。本实验采用中断式实现用户键盘接口。中断方式的原理示意图如图24-1 所示。图24-1 中断处理示意图6 实验步骤硬件连接:参照实验十三中硬件连接方法,进行电路的连接。2参照“程序指令篇”中四个实验的工程创建过程, 新建工程KeyPad.mcp,编辑并添加以下三类文件:(1) .s 文件:2410init . s,2410slib . s;(2) .h 文件:def. h,option.h,2410addr.h,2410lib.h,2410slib.h, mmu.h, 2410keypad.h,spi.h;(3

3、) .c(C)文件:2410lib.c, mmu.c, 2410test.c, 2410keypad.C, Spi.c;4编译keypad;5运行超级终端,选择正确的串口号,并将串口设置为:波特率()、奇偶校验(None)、数据位数(8)和停止位数(1),无流控,打开串口;6下载程序并运行,按下任意键(S3C2410RP 实验箱键盘),在超级终端中观察是否输出相应键值,结果如图24-8 所示:串口通讯实验1 实验目的1掌握ARM 的串行口工作原理;2编程实现ARM 的UART 通讯;3掌握S3C2410 寄存器配置方法。2 实验内容实现查询方式串口的收发功能。接收来自串口(通过超级终端)的字符

4、并将接收到的字符发送到超级终端。3 预备知识1熟悉ADS 集成开发环境的基本功能;2了解串口通讯的基本知识;3熟悉S3C2410 串口有关寄存器。4 实验设备1S3C2410RP 实验箱一套,JTAG 仿真器一个。2软件:PC 机操作系统Win98、Win2000 或WinXP,ADS1.2 集成开发环境,仿真器驱动程序,超级终端通讯程序。3实验说明串口在嵌入式系统中是一个重要的资源,常用来做输入输出设备,在后续的实验中也将使用串口的功能。串口的基本操作有三个:串口初始化、发送数据和接收数据,这些操作都是通过访问上节中描述的串口控制寄存器进行,下面将分别说明:(1)串口初始化程序MMU_Ini

5、t(); /初始化内存管理单元/设置系统时钟ChangeClockDivider(1,1); / 1:2:4ChangeMPllValue(0xa1,0x3,0x1); / FCLK=202.8MHzPort_Init(); /初始化I/O 口Uart_Init(0,); /初始化串口Uart_Select(0); /选择串口0(2)发送数据while(!(rUTRSTAT0&0x2); /等待发送缓冲空rUTXH0=data; /将数据写到数据端口(3)接收数据while(rUTRSTAT0&0x1=0x0); /等待数据data=rURXH0; /读取数据5 实验步骤硬件连接:参照实验十三

6、中硬件连接方法,进行电路的连接。2程序指令篇”中四个实验的工程创建过程, 新建工程UART.mcp,编辑并添加以下三类文件:(1) s 文件:2410init . s,2410slib . s;(2) h 文件:def. h,option.h,2410addr.h,2410lib.h,2410slib.h, mmu.h;(3) c(C)文件:2410lib.c,Main.C, mmu.c;*文件说明:2410init.s初始化cpu、内存等状态,完成后跳转到C 语言入口;2410swis.s软中断处理相关;2410slib.s库中内存管理等函数的调用;def.h宏定义;option.h定义时钟

7、、地址、总线宽度等;2410addr.h寄存器地址状态定义;2410lib.h , 2410lib.c(C 语言)前者声明函数库变量,后者定义库中常用函数(如串口函数);2410slib.h , 2410slib.s(汇编语言) 前者声明函数库变量,后者定义库中常用函数(如内存管理等);mmu.h , mmu.c内存管理单元的声明和函数定义;test.c , Main.c , *.c定义系统运行方式(*.c 表示以工程名命名的c 文件以及其他可能用到的c 文件);4编译UART;5运行超级终端,选择正确的串口号,并将串口设置为:波特率()、奇偶校验(None)、数据位数(8)和停止位数(1),

8、无流控,打开串口;6运行程序,在超级终端中输入的数据将回显到超级终端上,如图14-6实时时钟实验1 实验目的1了解实时时钟在嵌入式系统中的作用;2掌握实时时钟的使用。2 实验内容1编程实现实时时钟功能,每秒显示实时时钟;2编程实现实时时钟告警功能。3 预备知识1熟悉ADS 集成开发环境的基本功能;2了解S3C2410 的实时时钟模块的使用。4 实验设备1S3C2410RP 实验箱一套,JTAG 仿真器一个。2软件:PC 机操作系统Win98、Win2000 或WinXP,ADS1.2 集成开发环境,仿真器驱动程序,超级终端通讯程序。5 实验原理及说明1实时时钟在嵌入式系统中的作用在一个嵌入式系

9、统中,实时时钟单元可以提供可靠的时钟,包括时分秒和年月日;即使在系统处于关机状态下,它也能正常工作(通常采用后备电池供电),它的外围也不需要太多的辅助电路,典型的就是只需要一个高精度的晶振。6 实验步骤硬件连接:参照实验十三中硬件连接方法,进行电路的连接。2参照“程序指令篇”中四个实验的工程创建过程, 新建工程RTC.mcp,编辑并添加以下三类文件:(1) .s 文件:2410init.s,2410slib.s;(2) .h 文件:def. h,option.h,2410addr.h,2410lib.h,2410slib.h,mmu.h, 2410RTC.h;(3) .c(C)文件:2410l

10、ib.c,MAIN.C, mmu.c, 2410RTC.c;*文件说明:2410init.s初始化cpu、内存等状态,完成后跳转到C 语言入口;2410swis.s软中断处理相关;2410slib.s库中内存管理等函数的调用;def.h宏定义;option.h定义时钟、地址、总线宽度等;2410addr.h寄存器地址状态定义;2410lib.h , 2410lib.c(C 语言)前者声明函数库变量,后者定义库中常用函数(如串口函数);2410slib.h , 2410slib.s(汇编语言) 前者声明函数库变量,后者定义库中常用函数(如内存管理等);mmu.h , mmu.c内存管理单元的声明和函数定义;test.c , Main.c , *.c定义系统运行方式(*.c 表示以工程名命名的c 文件以及其他可能用到的c

温馨提示

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

评论

0/150

提交评论