中南大学嵌入式系统实验指导书2014
- 格式:doc
- 大小:4.70 MB
- 文档页数:28
《嵌入式系统》实验报告姓名:苏美龙学号: 10401700403 班级:电气工程1002班湖南工业大学电气与信息工程学院2013年4月实验一 ARM汇编指令实验1一、实验目的1.初步学会使用Embest IDE for ARM 开发环境及ARM软件模拟器;2.通过实验掌握简单ARM汇编指令的使用方法。
二.实验设备1.硬件:PC机;2.软件:Embest IDE 2004集成开发环境。
Windows98/2000/NT/XP。
三.实验内容1.熟悉开发环境的使用,并使用LDR/STR和MOV等指令访问寄存器或存储单元。
2.使用ADD/SUB/LSL/LSR/AND/ORR等指令,完成基本数学/逻辑运算。
四.实验原理ARM处理器共有37个寄存器:31个通用寄存器,包括程序计数器(PC),这些寄存器都是32位;6个状态寄存器,这些寄存器也是32位,但只使用了其中的12位。
1.ARM通用寄存器通用寄存器(R0~R15)可分为3类,即不分组寄存器R0~R7.分组寄存器R8~R14.程序计数器R15。
2.存储器格式ARM体系结构将存储器看作是从零地址开始的字节的线性组合。
字节0~3存放第一个字,字节4~7存放第2个字,以此类推。
ARM体系结构可以用两种方法存储字数据,分别称为大端格式和小端格式。
3.GNU基础知识Embest IDE集成了GNU汇编器as、编译器gcc和链接器ld。
因此,编写程序要符合CNU的语法和规则。
关于as.gcc和ld的具体使用,请参照Embest IDE所带的电子文档ProgRef.chm。
五实验程序1. 实验A参考程序.equ x, 45 /* 定义变量x,并赋值为45*/.equ y, 64 /* 定义变量y,并赋值为64*/.equ stack_top, 0x1000 /* 定义栈顶0x1000*/.global _start.text_start: /*程序代码开始标志*/MOV sp, #stack_topMOV r0, #x /* x的值放入R0 */STR r0, [sp] /* R0的值保存到堆栈*/MOV r0, #y /* y的值放入R0 */LDR r1, [sp] /* 取堆栈中的数到R1 */ADD r0, r0, r1STR r0, [sp]stop: B stop /*程序结束,进入死循环*/.end2. 实验B参考程序.equ x, 45 /* 定义变量x,并赋值为45*/.equ y, 64 /* 定义变量y,并赋值为64*/.equ z, 87 /* 定义变量z,并赋值为87*/.equ stack_top, 0x1000 /* 定义栈顶0x1000*/.global _start.text_start: /*程序代码开始标志*/MOV r0, #x /* x的值放入R0 */MOV r0, r0, lsl #8 /* R0的值乘以2的8次方*/MOV r1, #y /* y的值放入R1 */ADD r2, r0, r1, lsr #1 /* R1的值除以2加上r0的值放入R2 */ MOV sp, #0x1000STR r2, [sp]MOV r0, #z /* z的值放入R0 */AND r0, r0, #0xFF /* 取R0的低八位*/MOV r1, #y /* y的值放入R1 */ADD r2, r0, r1, lsr #1 /* R1的值除以2加上r0的值放入R2 */LDR r0, [sp] /* y的值放入R1 */MOV r1, #0x01ORR r0, r0, r1MOV r1, R2 /* y的值放入R1 */ADD r2, r0, r1, lsr #1 /* R1的值除以2加上r0的值放入R2 */stop:B stop /*程序结束,进入死循环*/.end六.实验结果及分析答:实验A实现了两个数据的加法运算功能;实验B实现了基本数学运算及逻辑运算功能,详细分析如下所示:实验A流程框图:实验A运行结果:实验A调试结果:实验A存储器分析结果:实验B运行结果:实验B调试结果:实验B存储器分析结果:实验二 ARM汇编指令实验2一、实验目的通过实验掌握使用LDM/STM、B和BL等指令完成较为复杂的存储区访问和程序分支,学习使用条件码,加强对CPSR的认识。
嵌入式系统实验指导王艳春李英一张劲松实验一嵌入式微处理器系统的开发环境一、实验环境PC机一台软件: ADS 1.2集成开发环境一套二、实验目的1.了解嵌入式系统及其特点;2.熟悉嵌入式系统的开发环境和基本配置并能编写简单的汇编程序三、实验内容1.嵌入式系统的开发环境、基本配置2.使用汇编指令完成简单的加法实验四、实验步骤(1)在D:\新建一个目录,目录名为experiment。
(2)点击 WINDOWS 操作系统的“开始|程序|ARM Developer Suite v1.2 |Code Warrior for ARM Developer Suite”启动Metrowerks Code Warrior,或双击“ADS 1.2”快捷方式启动。
启动ADS 1.2 如图1-1所示:图1-1启动ADS1.2(3) 在CodeWarrior 中新建一个工程的方法有两种,可以在工具栏中单击“New”按钮,也可以在“File”菜单中选择“New…”菜单。
这样就会打开一个如图1-2 所示的对话框。
选择【File】->【New…】,使用ARM Executable Image工程模板建立一个工程,名称为ADS,目录为D:\experiment。
图1-2 新建文件在这个对话框中为用户提供了7 种可选择的工程类型:1)ARM Executabl Image:用于由ARM 指令的代码生成一个ELF 格式的可执行映像文件;2)ARM Object Library:用于由ARM 指令的代码生成一个armar 格式的目标文件库;3)Empty Project:用于创建一个不包含任何库或源文件的工程;4)Makefile Importer Wizard:用于将Visual C 的nmake 或GNU make 文件转入到CodeWarrior IDE 工程文件;5)Thumb ARM Executable Image:用于由ARM 指令和Thumb 指令的混和代码生成一个可执行的ELF 格式的映像文件;6)Thumb Executable image:用于由Thumb 指令创建一个可执行的ELF 格式的映像文件;7)Thumb Object Library:用于由Thumb 指令的代码生成一个armar 格式的目标文件库。
嵌入式操作系统实验指导书苗暹黄连丽目录实验一 Linux命令使用实验二 vi编辑器的使用实验三 shell编程实验(一)实验四 shell编程实验(二)实验五 Linux开发工具的使用实验六 Linux编程实验(一)实验七 Linux编程实验(二)实验八 Linux的系统及网络管理实验实验一 Linux命令使用班级:姓名:学号:上机时间:任课教师:实验教师:实验成绩:一、实验目的1.掌握Linux的一般命令格式。
2.掌握有关文件和目录操作的常用命令。
3.掌握有关进程操作的常用命令。
4.熟练使用man命令。
二、实验注意事项实验环境与系统是共用设施,请不要在系统内做对系统或对其他用户不安全的事情。
要求每个同学登录后系统后,要在主目录(/home/student)下创建一个属于自己的子目录(以自己(拼音)名字或学号)。
以后所有工作都要在自己的目录内进行。
建议以后的实验都在同台计算机上做,这样可以保持连续性。
三、实验内容及步骤:1.登录进入系统。
开机,选择进入,再选择登陆窗口,输入用户名:,输入密码:,进入Ubuntu图形桌面环境。
2.使用简单命令:date,cal,who,echo,clear等,了解Linux命令格式。
要启动一个终端,可以选择在终端提示符下输入:date↲显示:。
在终端提示符下输入:who ↲显示:。
在终端提示符下输入:who am I ↲显示:。
在终端下显示Hello! 命令:。
在终端提示符下输入:clear ↲显示:。
在终端提示符下输入:cal ↲显示:。
3.浏览文件系统:(1)运行pwd 命令,确定当前工作目录,记录之:。
(2)运行ls命令,查看当前目录下有哪些文件和子目录,简略记录。
(3)运行ls -l命令,理解文件各字段的含义,找一个文件标注。
(4)运行ls -ai命令,理解各字段的含义。
(5)使用cd /命令,将当前目录改变为根目录(/)。
运行ls -l命令,结合书中给出的Linux树状目录结构,了解各目录的作用。
《嵌入式原理与应用》实验指导手册xxx大学xxx学院制写给教师地话:为了使学生获得嵌入式系统开发相关地综合实践能力,在开展理论教学过程中,建议同步开展课程实训。
课程实训环节地内容与理论教学环节地内容相对应。
整个课程实训分为两个部分:课堂实训与综合实训。
每个部分均包含一定数量地实例。
(1)课堂实训偏重于对某个知识点地学习,理解与应用,以教材上地案例为主,任课老师可以根据学生地学习情况,选择实验内容并做适当地扩展与延伸;(2)综合实训偏重于综合实践应用设计,可以完全由学生自由DIY,据作者本人所在教学团队地经验,在课堂实训落实到位地情况下,绝大部分同学完全可以独立完成综合实训内容。
本指导手册提供地综合实训解决方案仅供老师们参考。
本教材除第16章浮点运算与数字信号处理部分地案例外,其它所有地实验也可用于STM32F103系列地微控制器地教学。
目录第一章实验中涉与到地硬件 (1)单色发光二极管电路 (1)信号转接区 (1)单脉冲电路 (1)双色发光管,开关电路 (2)蜂鸣器电路 (3)电压输出模块 (3)第二章软件使用介绍 (4)创建新项目 (4)RCC配置 (6)GPIO管脚配置 (7)生成项目源码 (8)编写程序 (10)调试与运行 (12)第三章课堂实训 (16)课堂实训1 时钟树地实验 (16)课堂实训2 GPIO口地输出实验 (19)课堂实训3 GPIO口地输入输出实验 (19)课堂实训4 位带操作实验 (20)课堂实训5 中断实验 (21)课堂实训6 Systick实验 (21)课堂实训7 定时器基本定时实验 (22)课堂实训8 定时器输出比较实验 (22)课堂实训9 定时器PWM实验 (23)课堂实训10 定时器外部时钟模式实验 (23)课堂实训11 定时器级联实验 (24)课堂实训12 定时器输入捕获实验 (24)课堂实训13 阻塞方式串行通信实验 (25)课堂实训14 非阻塞方式串行通信实验 (25)课堂实训15 外设与存储器地DMA通信实验 (26)课堂实训16 存储器到存储器地DMA通信实验 (26)课堂实训17 软件触发下地DAC实验 (27)课堂实训18 定时器触发下地DAC实验 (27)课堂实训19 DMA方式下地DAC实验 (28)课堂实训20 软件触发ADC实验 (28)课堂实训21 定时器触发ADC实验 (29)课堂实训22 规则组采样ADC实验 (29)课堂实训23 多重ADC实验 (30)第四章综合实训 (31)综合实训1 交通灯地设计 (31)综合实训2 电子琴地设计 (36)综合实训3 信号发生器地设计 (41)综合实训4 实验考试 (46)第一章实验中涉与到地硬件下面介绍一下实验中涉与到地实验设备硬件电路,微控制器选用地是ST公司地Cortex-M4架构地32位RISC ARM处理器STM32F407ZE(QFP144),同学们在参加实验之前必须进行预习,需求查找与实验内容相关地硬件电路,读懂并理解。
实验报告课程名称:嵌入式系统开发姓名:任课教师:学院:信息科学与工程学院专业班级:物联网工程2016年12月目录实验一ARM汇编指令 (1)1.实验目的 (1)2.实验设备 (1)3.实验内容 (1)1)实验A--------完成运算x+y,把结果存入堆栈寄存器(R13)中 (1)2)实验A运行截图 (1)3)实验B-----完成运算8x+y/2 orr 0x01+ (z and 0xFF+y/2)/2,将结果保存在R2中 (6)4)实验B运行截图 (6)实验二 ARM处理器工作模式 (13)1 实验目的 (13)2 实验设备 (13)3实验内容 (13)4 实验截图 (14)1)进入系统模式 (17)2)初始化系统模式下的R0-R14寄存器 (18)3)切换到FIQ模式 (19)4)初始化FIQ模式下特有的寄存器R8-R14 (19)5)切换到中止模式 (20)7)切换到管理模式 (22)8)初始化管理模式下特有的寄存器R13-R14 (22)9)切换到IRQ模式 (23)10)初始化IRQ模式下的R13-R14 (23)11)J进入未定义模式 (24)12)初始化未定义模式下的寄存器R13-R14 (24)5 实验心得 (25)实验三 C语言程序(一) (26)1 实验目的 (26)2 实验设备 (26)3 实验内容 (26)4 实验截图 (26)实验四 C语言程序实验(二) (35)1 实验目的 (35)2 实验设备 (35)3 实验内容 (35)4 实验截图 (35)5 实验心得 (45)实验五汇编和C语言的相互调用实验 (46)1 实验目的 (46)2 实验设备 (46)3 实验内容 (46)4 实验截图 (46)5 实验心得 (56)实验六综合编程实验 (57)1 实验目的 (57)2 实验设备 (57)3 实验内容 (57)4 实验截图 (57)5 实验心得 (66)实验一 ARM汇编指令1.实验目的(1)初步学会使用ADS1.2集成开发环境及ARM软件模拟器;(2)通过实验掌握简单ARM汇编指令的使用2.实验设备(1)硬件:PC机(2)软件:ADS1.2集成开发环境,Windows98/2000/NT/XP3.实验内容(1)熟悉ADS开发环境,并使用LDR/STR和MOV等指令访问寄存器或存储单元;(2)使用ADD/SUB/LSL/LSR/AND/ORR/等指令完成基本数学逻辑运算。
《嵌入式系统开发实训》指导书一、实训的目的和作用实训是培养和锻炼学生在学习完《嵌入式系统开发》后综合应用所学理论知识解决实际工程设计和应用问题的能力、进行工程实训的重要教学环节,它具有动手、动脑,理论联系实际的特点,是培养在校工科大学生理论联系实际、敢于动手、善于动手和独立自主解决设计实践中遇到的各种问题能力的一种较好方法。
《嵌入式系统开发》是一门应用性、综合性、实践性较强的课程,没有实际的有针对性设计环节,学生就不能很好的理解和掌握所学的技术知识,更缺乏解决实际问题的能力。
所以通过有针对性的实训,使学生学会系统地综合运用所学的技术理论知识,提高学生在嵌入式应用方面的开发与设计本领,系统的掌握嵌入式系统设计方法。
本实训是配合课堂教学的一个重要的实践教学环节,不仅要培养学生的实际动手能力,检验学生对本课程学习的情况,更要培养学生在实际的工程设计中查阅专业资料、工具书或参考书,掌握工程设计手段和软件工具,并能以图纸和说明书表达设计思想和结果的能力。
培养学生事实求是和严肃认真的工作态度。
通过本实训使学生深入了解嵌入式系统开发的步骤与方法,掌握嵌入式系统的软硬件协同开发要点及使用方法。
掌握能够根据实际问题综合应用嵌入式软件、硬件的基本技能,编写相应的程序。
巩固和强化理论教学内容,综合课程教学中的实验环节,培养和锻炼学生的工程实践能力,具备嵌入式系统软硬件协同开发应用程序的能力。
二、实训主要内容与要求要求每个学生(或小组)都要自己动手独立设计完成一个典型的嵌入式应用小系统。
设计题目可以在给出的参考题目中选,也可以自己选设计题目,但难度不应小于参考题目,需经指导教师审查后方可确定是否采纳或修改设计题目。
一般以1~2人为一个小组,分工协作,可以进行充分的讨论和互助。
完成所选课题的硬件和软件的设计与调试。
独立解决设计和调试过程中遇到的基本问题。
总结整个实践过程,写出实训报告(包括方案选择比较、总体思路、理论分析、系统设计,软件流程图,加注释的源程序,调试过程中遇到的问题及解决办法,总结与体会,参考文献)。
《嵌入式系统导论》实验指导书安阳工学院计算机科学与信息工程系飞思卡尔MCU实验中心编写目录前言 (2)一认识DG128开发开发环境 (3)1.HCS12实验系统概述 (3)1.1HCS12系列微控制器与DP256/DG128 (3)1.2实验系统组成 (5)1.3HCS12实验系统使用方法与步骤概述 (5)2.HCS12实验系统硬件说明 (7)2.1开发子板 (7)2.2BDM调试器与BDM电缆 (7)2.3I/O母板 (8)2.4其它 (9)3.编译工具说明 (10)3.1概述 (10)3.2CODEWARRIOR使用方法 (10)4.BDM调试器使用方法 (15)4.1BDM调试器基本工作原理 (15)4.2BDM调试命令及使用方法 (15)二实验项目 (19)实验1 熟悉实验用软件开发平台——CODEWARRIOR (19)实验2 用超级终端和监控程序通讯调试程序 (19)实验3 键盘编程实验 (26)实验4 SCI串行口实验 (29)实验5 C程序的建造与调试 (33)实验6 用TIMER实现精密定时 (34)实验7 A/D转换实验 (39)实验8 动态LED数码管显示 (44)前言该实验指导书是为安阳工学院计算机科学与信息工程系《计算机科学与技术》本科专业嵌入式专业方向开设的《嵌入式系统导论》课程而撰写的配套实验指导书。
《嵌入式系统导论》是一门专业方向必修课,该课程的主要教学目的是教会学生设计嵌入式小系统的能力。
其中包括汇编语言程序的设计能力以及简单的嵌入式系统硬件设计能力。
设计能力属于工程技术能力,它要求学生在拥有扎实的基础理论和专业知识基础上,进一步形成设计能力,要求学生会分析问题,能解决问题。
这种能力的培养除了要求上理论课以外,还要要求学生参加一定量的工程实践训练。
工科学生的实验课,尤其是设计性的实验课,它是标准化的和模块化的工程实践训练环节。
本门课程的实验在整个课程中的地位十分重要,它一方面可以使学生深入理解和把握专业理论知识,另一方面使学生学会运用理论来解决实际中遇到的问题。
(此文档为word格式,下载后您可任意编辑修改!) 郑州航空工业管理学院嵌入式系统实验报告(修订版)20 – 20第学期赵成,张克新编著院系:姓名:专业:学号:电子通信工程系2014年3月制实验一ARM体系结构与编程方法一、实验目的了解ARM9 S3C2410A嵌入式微处理器芯片的体系结构,熟悉ARM微处理器的工作模式、指令状态、寄存器组及异常中断的概念,掌握ARM指令系统,能在ADS1.2 IDE中进行ARM汇编语言程序设计。
二、实验内容1.ADS1.2 IDE的安装、环境配置及工程项目的建立;2.ARM汇编语言程序设计(参考附录A):(1)两个寄存器值相加;(2)LDR、STR指令操作;(3)使用多寄存器传送指令进行数据复制;(4)使用查表法实现程序跳转;(5)使用BX指令切换处理器状态;(6)微处理器工作模式切换;三、预备知识了解ARM嵌入式微处理器芯片的体系结构及指令体系;熟悉汇编语言及可编程微处理器的程序设计方法。
四、实验设备1. 硬件环境配置计算机:Intel(R) Pentium(R) 及以上;内存:1GB及以上;实验设备:UP-NETARM2410-S嵌入式开发平台,J-Link V8仿真器;2. 软件环境配置操作系统:Microsoft Windows XP Professional Service Pack 2;集成开发环境:ARM Developer Suite (ADS) 1.2。
五、实验分析1.安装的ADS1.2 IDE中包括和两个软件组件。
在ADS1.2中建立类型的工程,工程目标配置为;接着,还需要对工程进行、及链接器设置;最后,配置仿真环境为仿真方式。
2.写出ARM汇编语言的最简程序结构,然后在代码段中实现两个寄存器值的加法运算,给出运算部分相应指令的注释。
; 文件名:3.列写出使用LDR、STR指令的汇编程序,并在关键语句后面给出相应的注释。
4.“使用多寄存器传送指令进行数据复制”汇编程序分析。
中南大学考试试卷--评分标准2014 --2015 学年一学期;嵌入式微控制器技术课程 56 学时;考试形式:开卷专业年级:自动化、测控、电气12级 ;总分100分,占总评成绩70 %;时间120分钟试卷由两部分组成,第一部分是有关AT89S51/2微控制器,第二部分是有关TMS320F2812DSP。
第一部分AT89S51/2微控制器一、填空题:(每空1分,共13分)1、AT89S52微控制器的一个机器周期包含了( 6)个状态周期,( 12)个振荡器周期。
2、执行MOVX @DPTR,A指令,控制信号PSEN、RD、WR的电平状态分别为(高、高、低)。
3、串行口控制寄存器SCON的SM0、SM1和SM2位为101时,此时接收数据送入SBUF的条件是(第9位数据为1(或RB8=1)),串行口波特率是由( 振荡频率和SMOD位一起确定)确定,如有第9位数据(校验位)应该从(RB8)读取。
4、根据AT系列微控制器的命名规则,命名为AT89LV51-24PI微控制器,其电路生产工艺是( CMOS ),封装形式和引脚数目是( DIP40 ),运行电压可以低至( 2.7或3.3 )V,内置程序存储器类型为( FLASH )。
5、AT89S52微控制器单片机的P0和P2口除了可以进行I/O操作外,在系统外扩时,可作为( 数据与地址线),此时(P0口)是数据与地址复用口,可通过(ALE )控制信号将地址锁存。
二、简答题(10分)如果AT89S52微控制器需要按某一标准波特率(如9600bit/s,19200bit/s等)与其它系统进行串行通信,此时该微控制器晶振频率有什么特别要求,并用具体计算实例说明之。
本题答案:此时微控制器晶振频率要满足在通过定时器计数初值分频后能产生指定的标准波特率(也可直接回答晶振频率一般选择11.0592M)。
(4分)具体计算实例:波特率计算式为:2SMOD*f osc/(32*12*(28-a))选择晶振频率f osc为11.0592M,计数初值a=FDH,SMOD=0或者/1,就可得到标准波特率9600bit/s或者19200bit/s。
嵌入式系统实验指导书襄樊学院物理与电子信息学院实验要求1.进入实验室前完成的部分1)认真阅读实验指导书,弄懂实验原理和实验内容。
2)编写实验所要用到的程序,将其放在U盘上。
3)写出预习报告。
2. 进入实验室后完成的部分1)建立工程,加入已准备好的程序文件。
2)对程序进行调试,修改错误,获得要求的结果。
3)保存调试后的程序。
3.实验结束后的部分对实验结果进行分析、总结,写出实验报告。
实验报告内容及格式1.实验目的2.实验设备3.实验原理及环境4.实验内容只做文字叙述,程序部分放在程序清单中。
流程图也可不画。
5.程序清单本实验使用的完整程序。
如果使用了本实验或前面实验中完全相同的子程序,可不列写,只做注明即可。
6.实验步骤7.实验总结主要包括对实验结果、调试过程、错误及产生的原因的分析,以及本次实验的重要收获等。
此项为实验成绩评定的重要依据。
实验1 Keil C51的使用(汇编语言)实验目的:初步掌握Keil C51(汇编语言)和ZY15MCU12BD型综合单片机实验箱的操作和使用,能够输入和运行简单的程序。
实验设备:ZY15MCU12BD型综合单片机实验箱一台、具有一个RS232串行口并安装Keil C51的计算机一台。
实验原理及环境:在计算机上已安装Keil C51软件。
这个软件既可以与硬件(ZY15MCU12BD型综合单片机实验箱)连接,在硬件(单片机)上运行程序;也可以不与硬件连接,仅在计算机上以虚拟仿真的方法运行程序。
如果程序有对硬件的驱动,就需要与硬件连接;如果没有硬件动作,仅有软件操作,就可以使用虚拟仿真。
实验内容:1.掌握软件的开发过程:1)建立一个工程项目选择芯片确定选项。
2)加入C 源文件或汇编源文件。
3)用项目管理器生成各种应用文件。
4)检查并修改源文件中的错误。
5)编译连接通过后进行软件模拟仿真。
6)编译连接通过后进行硬件仿真。
2.按以上步骤实现在P1.0输出一个频率为1Hz的方波。
嵌入式系统开发作业指导书第一章前言嵌入式系统是一种特定用途的计算机系统,通常被嵌入到其他设备中,以完成特定的任务。
嵌入式系统开发涉及到硬件设计、软件开发和系统验证等多个方面。
本指导书旨在帮助学生理解并顺利完成嵌入式系统开发的作业。
第二章实验要求2.1 实验目标本次作业的实验目标是设计并实现一个简单的嵌入式系统,完成指定任务并满足特定要求。
通过这个实验,学生将会了解嵌入式系统的基本概念、开发流程和相关工具的使用。
2.2 实验内容在本次作业中,学生需要完成以下任务:1. 硬件设计:根据要求,设计并实现嵌入式系统的硬件电路。
2. 软件开发:使用指定的编程语言,编写适配于目标硬件的嵌入式系统软件。
3. 系统验证:测试和验证已开发的嵌入式系统,确保其满足设计要求。
2.3 实验要求1. 学生需要按照实验指导书中的指导完成实验要求。
2. 实验过程中需要注意安全,并且遵循实验规范。
3. 学生需要详细记录实验过程,包括设计理念、实施方法、结果分析等。
4. 实验报告需要包括硬件设计图、软件源代码和系统测试结果等。
第三章实验流程3.1 硬件设计在硬件设计阶段,学生需要完成以下步骤:1. 确定嵌入式系统的功能和性能要求。
2. 根据要求设计硬件电路,包括主控芯片、外设接口等。
3. 完成原理图设计和PCB布局,并进行必要的仿真和验证。
3.2 软件开发在软件开发阶段,学生需要完成以下步骤:1. 选择适当的编程语言和开发工具。
2. 根据硬件设计和功能需求,编写嵌入式系统的软件代码。
3. 进行编译、烧录和调试,确保软件能够正确运行。
3.3 系统验证在系统验证阶段,学生需要完成以下步骤:1. 设计合适的测试用例,包括功能测试和性能测试。
2. 运行测试用例,记录测试结果并进行分析。
3. 优化系统的设计和实现,以满足性能要求。
第四章实验注意事项1. 本实验需要学生具备一定的硬件和软件开发基础知识。
2. 在实验过程中,学生需要按照指导书中的要求和步骤进行实验。
淮阴工学院嵌入式系统实验指导书编者:唐永锋适用学院:电气学院电子与电气工程学院2014年 6 月 23 日目录实验一开发环境的搭建与调试 (1)实验二 S5PV210数码管实验 (14)实验三 S5PV210 GPIOLED控制实验 (20)实验四 S5PV210串口实验 (25)实验五S5PV210步进电机控制实验 (33)实验一开发环境的搭建与调试1、实验目的(1)、熟悉Eclipse开发环境的搭建;(2)、熟悉Eclipse的调试方法,2、实验内容创建一个工程,新建一个Makefile文件,新建一个脚本文件,新建一个汇编源文件,编译工程,并配置FS-JTAG调试工具,配置Eclipse调试工具。
3、实验设备(1)、硬件:CVT-A8-III教学平台,PC机,A8 JTAG仿真器。
(2)、软件:PC机操作系统(Windows XP)+ Eclipse开发环境。
4、实验步骤4.1 Eclipse开发环境的安装Eclipse是著名的开放源代码、跨平台的自由集成开发环境(IDE)。
它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成,具体包括四个部分组成——Eclipse Platform、JDT、CDT和PDE。
JDT支持Java开发、CDT支持C开发、PDE用来支持插件开发,Eclipse Platform则是一个开放的可扩展IDE,提供了一个通用的开发平台。
最初主要用来Java语言开发,通过安装不同的插件Eclipse可以支持不同的计算机语言,比如C++等开发工具。
许多软件开发商以Eclipse为框架开发自己的IDE。
Eclipse的目标是成为可进行任何语言开发的IDE集成者,使用者只需下载各种语言的插件即可。
打开光盘下的目录,安装文件包,安装步骤如下:4.1.1安装ARM-GCC 交叉编译工具打开yagarto-bu-2.21_gcc-4.6.2-c-c++_nl-1.19.0_gdb-7.3.1_eabi_20111119.exe。
中南大学《嵌入式系统与单片机》实验报告学生姓名周来喜指导教师贺建彪学院信息科学与工程学院专业班级物联网工程2班学号0909112108实验彩灯控制系统一.实验目的1. 熟悉单片机实验箱的操作环境;2. 了解如何编制单片机程序,并将程序下载到单片机中;3. 创新性思维,多思考出彩灯的变化花样。
二.实验要求1. 熟悉单片机实验箱的操作环境,掌握上电、断电等基本操作与过程;2. 了解程序下载操作方法;3. 编写多种花样的程序来实现彩灯控制。
4.编写实验报告。
三、实验分析与设计本次实验是简单的单片机应用,单片机使用51单片机,操作平台是恒科电子实验平台。
程序编译连接之后就自动下载到单片机里。
1.实验分析:实验采用汇编代码实现,在程序中实现某种花样,参考源代码c01.asm,这个源程序会将P1.2清零后置一,每次改变使用一次delay,这样可以保证状态的持续。
在此基础上多重复花样即可。
2.实验设计:操作上比较简单。
主要是熟记各种指令用法。
另外最重要的是会汇编的两条指令:mov与jmp。
【delay子程序】:这段程序实现延时100ms的功能,它是基于“DJNZ R6,$”这条指令执行时间为2us这个基础之上的。
使用两层循环,将此句话执行:250*200=50000次,也就是100000us,换算成ms为100ms。
四、实验代码ORG 0000HMOV SP,#60H ; /*送堆栈首址*//*第一种全亮再全灭*/MAIN0:MOV R0,#2MOV P1,#00HMOV A,#2ACALL DELAYCASE0:MOV P1,#0FFHMOV A,#1ACALL DELAYMOV P1,#00HMOV A,#1ACALL DELAYDJNZ R0,CASE0 ; /*判闪循环是否结束*//*第二种顺序亮然后顺序灭*/MAIN1:MOV R0,#2MOV P1,#00HMOV A,#2ACALL DELAYCASE1:CPL P1.0MOV A,#1ACALL DELAYCPL P1.1MOV A,#1ACALL DELAYCPL P1.2MOV A,#1ACALL DELAYCPL P1.3MOV A,#1ACALL DELAYCPL P1.4MOV A,#1ACALL DELAYCPL P1.5MOV A,#1ACALL DELAYCPL P1.6MOV A,#1ACALL DELAYCPL P1.7MOV A,#1ACALL DELAYCPL P1.0MOV A,#1ACALL DELAYCPL P1.1MOV A,#1ACALL DELAYCPL P1.2MOV A,#1ACALL DELAYCPL P1.3MOV A,#1ACALL DELAYCPL P1.4MOV A,#1ACALL DELAYCPL P1.5MOV A,#1ACALL DELAYCPL P1.6MOV A,#1ACALL DELAYCPL P1.7MOV A,#1ACALL DELAYDJNZ R0,CASE1 ; /*判闪循环是否结束*/ /*第三种顺序亮然后倒序灭*/MAIN2:MOV R0,#2MOV P1,#00HMOV A,#2ACALL DELAYCASE2:CPL P1.0MOV A,#1ACALL DELAYCPL P1.1MOV A,#1ACALL DELAYCPL P1.2MOV A,#1ACALL DELAYCPL P1.3MOV A,#1ACALL DELAYCPL P1.4MOV A,#1ACALL DELAYCPL P1.5MOV A,#1ACALL DELAYCPL P1.6MOV A,#1ACALL DELAYCPL P1.7MOV A,#1ACALL DELAYCPL P1.7MOV A,#1ACALL DELAYCPL P1.6MOV A,#1ACALL DELAYCPL P1.5MOV A,#1ACALL DELAYCPL P1.4MOV A,#1ACALL DELAYCPL P1.3MOV A,#1ACALL DELAYCPL P1.2MOV A,#1ACALL DELAYCPL P1.1MOV A,#1ACALL DELAYCPL P1.0MOV A,#1ACALL DELAYDJNZ R0,CASE2; /*判闪循环是否结束*/ /*第四种顺序亮然后倒序灭*/MAIN3:MOV R0,#2MOV P1,#00HMOV A,#2ACALL DELAYCASE3:CPL P1.0CPL P1.4MOV A,#1ACALL DELAYCPL P1.1CPL P1.5MOV A,#1ACALL DELAYCPL P1.2CPL P1.6MOV A,#1ACALL DELAYCPL P1.3CPL P1.7MOV A,#1ACALL DELAY ;turn offCPL P1.3CPL P1.7MOV A,#1ACALL DELAYCPL P1.2CPL P1.6MOV A,#1ACALL DELAYCPL P1.1CPL P1.5MOV A,#1ACALL DELAYCPL P1.0CPL P1.4MOV A,#1ACALL DELAYDJNZ R0,CASE3 ; /*判闪循环是否结束*/ /*第五种流水线,每次亮两个*/MAIN4:MOV R0,#2MOV P1,#00H /*全灭*/MOV A,#2ACALL DELAYCASE4:CPL P1.0CPL P1.2MOV A,#1ACALL DELAYCPL P1.0CPL P1.2MOV A,#1ACALL DELAYCPL P1.1CPL P1.3MOV A,#1ACALL DELAYCPL P1.1CPL P1.3MOV A,#1ACALL DELAYCPL P1.2CPL P1.4MOV A,#1ACALL DELAYCPL P1.2CPL P1.4MOV A,#1ACALL DELAYCPL P1.3CPL P1.5MOV A,#1ACALL DELAYCPL P1.3CPL P1.5MOV A,#1ACALL DELAYCPL P1.4CPL P1.6MOV A,#1ACALL DELAYCPL P1.4CPL P1.6MOV A,#1ACALL DELAYCPL P1.5CPL P1.7MOV A,#1ACALL DELAYCPL P1.5CPL P1.7MOV A,#1ACALL DELAYDJNZ R0,CASE4 ; /*判闪循环是否结束*/ /*第六种由外向内亮,由内向外灭*/MAIN5:MOV R0,#2MOV P1,#00H /*全灭*/MOV A,#2ACALL DELAYCASE5:CPL P1.0CPL P1.7MOV A,#1ACALL DELAYCPL P1.1CPL P1.6MOV A,#1ACALL DELAYCPL P1.2CPL P1.5MOV A,#1ACALL DELAYCPL P1.3CPL P1.4MOV A,#2ACALL DELAYCPL P1.3CPL P1.4MOV A,#1ACALL DELAYCPL P1.2CPL P1.5MOV A,#1ACALL DELAYCPL P1.1CPL P1.6MOV A,#1ACALL DELAYCPL P1.0CPL P1.7MOV A,#1ACALL DELAYDJNZ R0,CASE5 /*判闪循环是否结束*/ /*第七种顺序亮然后倒序灭*/MAIN6: /*由外向内亮,由外向内灭*/MOV R0,#2 /*循环5次*/MOV P1,#00H /*全灭*/MOV A,#2ACALL DELAYCASE6:CPL P1.0CPL P1.7MOV A,#1ACALL DELAYCPL P1.1CPL P1.6MOV A,#1ACALL DELAYCPL P1.2CPL P1.5MOV A,#1ACALL DELAYCPL P1.3CPL P1.4MOV A,#2ACALL DELAYCPL P1.0CPL P1.7MOV A,#1ACALL DELAYCPL P1.1CPL P1.6MOV A,#1ACALL DELAYCPL P1.2CPL P1.5MOV A,#1ACALL DELAYCPL P1.3CPL P1.4MOV A,#2ACALL DELAYDJNZ R0,CASE6 ; /*判闪循环是否结束*/ /*第八种由外向内亮(每次只亮两个灯)*/MAIN7:MOV R0,#2MOV P1,#00H /*全灭*/MOV A,#2ACALL DELAYCASE7:CPL P1.0CPL P1.7MOV A,#1ACALL DELAYCPL P1.0CPL P1.7MOV A,#1ACALL DELAYCPL P1.1CPL P1.6MOV A,#1ACALL DELAYCPL P1.1CPL P1.6MOV A,#1ACALL DELAYCPL P1.2CPL P1.5MOV A,#1ACALL DELAYCPL P1.2CPL P1.5MOV A,#1ACALL DELAYCPL P1.3CPL P1.4MOV A,#1ACALL DELAYCPL P1.3CPL P1.4MOV A,#2ACALL DELAYDJNZ R0,CASE7 ; /*判闪循环是否结束*/ /*第九种由外向内亮,由内向外亮(每次只亮两个灯)*/ MAIN8:MOV R0,#2MOV P1,#00H /*全灭*/MOV A,#2ACALL DELAYCASE8:CPL P1.0CPL P1.7MOV A,#1ACALL DELAYCPL P1.0CPL P1.7MOV A,#1ACALL DELAYCPL P1.1CPL P1.6MOV A,#1ACALL DELAYCPL P1.1CPL P1.6MOV A,#1ACALL DELAYCPL P1.2CPL P1.5MOV A,#1ACALL DELAYCPL P1.2CPL P1.5MOV A,#1ACALL DELAYCPL P1.3CPL P1.4MOV A,#1ACALL DELAYCPL P1.3CPL P1.4MOV A,#1ACALL DELAYCPL P1.2CPL P1.5MOV A,#1ACALL DELAYCPL P1.2CPL P1.5MOV A,#1ACALL DELAYCPL P1.1CPL P1.6MOV A,#1ACALL DELAYCPL P1.1CPL P1.6MOV A,#1ACALL DELAYDJNZ R0,CASE8 ; /*判闪循环是否结束*/ /*第十种先亮0,2,4,6,再灭,再亮1,3,5,7,再灭*/ MAIN9:MOV R0,#2MOV P1,#00H /*全灭*/MOV A,#2ACALL DELAYCASE9:CPL P1.0CPL P1.2CPL P1.4CPL P1.6MOV A,#1ACALL DELAYCPL P1.0CPL P1.2CPL P1.4CPL P1.6MOV A,#1ACALL DELAYCPL P1.3CPL P1.5CPL P1.7MOV A,#1ACALL DELAYCPL P1.1CPL P1.3CPL P1.5CPL P1.7MOV A,#1ACALL DELAYDJNZ R0,CASE9 ; /*判闪循环是否结束*//*第十一种先亮0,2,4,6,再亮1,3,5,7,再灭0,2,4,6;再灭1,3,5,7*/ MAIN10:MOV R0,#2 /*循环5次*/MOV P1,#00H /*全灭*/MOV A,#2ACALL DELAYCASE10:CPL P1.0CPL P1.2CPL P1.4CPL P1.6MOV A,#1ACALL DELAYCPL P1.1CPL P1.3CPL P1.5CPL P1.7MOV A,#1ACALL DELAYCPL P1.0CPL P1.2CPL P1.4CPL P1.6MOV A,#1ACALL DELAYCPL P1.1CPL P1.3CPL P1.5CPL P1.7MOV A,#1ACALL DELAYDJNZ R0,CASE10 ; /*判闪循环是否结束*//*第二种先亮左四,亮右四,灭左四,灭右四*/MAIN11:MOV R0,#2 /*循环5次*/MOV P1,#00H /*全灭*/MOV A,#2ACALL DELAYCASE11:CPL P1.1CPL P1.2CPL P1.3MOV A,#1ACALL DELAYCPL P1.4CPL P1.5CPL P1.6CPL P1.7MOV A,#1ACALL DELAYCPL P1.0CPL P1.1CPL P1.2CPL P1.3MOV A,#1ACALL DELAYCPL P1.4CPL P1.5CPL P1.6CPL P1.7MOV A,#1ACALL DELAYDJNZ R0,CASE11 ; /*判闪循环是否结束*//*第十三种先亮左四,再亮右四,灭左四,灭右四*/MAIN12:MOV R0,#3MOV P1,#00H /*全灭*/MOV A,#2ACALL DELAYCASE12:CPL P1.0CPL P1.1CPL P1.2CPL P1.3MOV A,#1ACALL DELAYTMP:CPL P1.4CPL P1.5CPL P1.6CPL P1.7CPL P1.0CPL P1.1CPL P1.2CPL P1.3MOV A,#1ACALL DELAYDJNZ R0,TMP ;判闪循环是否结束AGAIN: MOV P1,#0FFHMOV A,#30 ;置延时初值(100ms*30)延时3sACALL DELAY ;调用延时子程序AJMP MAIN0 ;重复DELAY: ;延时100ms子程序MOV R7,#200 ;500us*200=100msDLY0:MOV R6,#250 ;2us*250=500usDJNZ R6,$DJNZ R7,DLY0DJNZ ACC,DELAY ;200ms*ACCRETEND五、实验心得体会通过本次实验学习了怎样用单片机实现循环彩灯的控制,设计彩灯的图案变换,循环间隔的控制。
上机一Linux 系统下的C语言编译环境(验证型4学时)一上机目的1 学习Linux 环境,熟悉Linux下C语言程序的运行环境,了解所用计算机系统软、硬件配置。
2 初步了解在该集成环境下如何编辑、编译、连接和运行一个C程序,即运行一个C程序的全过程。
3 通过运行简单的C程序,初步了解C程序的基本结构及特性。
二上机内容1 建立自己的文件夹,以备存放文件。
进入Linux系统环境,选择合适的编辑器和编译工具。
输入简单C程序(可用教科书上的例题),了解C程序运行的全过程。
1、计算整数m的n次幂.2、打印最长的输入行运行结果:1 每次上机前,认真预习本次上机实验内容,按老师的要求,需编写的程序,应书写整齐。
2 上机输入和调试程序,调试通过后,打印出程序清单并把运行结果记录下来(在条件允许下)。
3 上机结束后,按照上机指导书的具体要求,整理出上机报告(字迹工整),下次上机交给指导教师。
4 上机报告应包括以下内容:(1)上机题目;(2)算法说明(复杂的可用流程图表示);(3)程序清单(有条件用打印机打印出来);(4)运行结果;(5)对运行情况作分析,以及本次实验所取得的经验。
如程序未能通过,应分析错误原因。
以下题目三选一。
1已知三角形的三边a、b、c(通过键盘输入),编写一个程序求三角形的面积。
2 编写程序实现求一元二次方程式的根,ax2+bx+c=0中的a、b、c从键盘输入。
3 编写程序实现求任意三个数的平均值。
上机二 C语言基本语法实验一上机目的1 进一步掌握运行一个C语言程序的方法和步骤。
2 分清C语言的符号、标识符、保留字的区别。
3 掌握C语言的数据类型,会定义整型、实型、字符型变量以及对它们的赋值方法。
4 学会数据输入方式和数据输出格式及各种格式转意符。
5 学会使用C的运算符以及用这些运算符组成的表达式。
三上机内容1 输入并运行下面程序,分析其运行结果。
main(){ char c1,c2;c1=46;c2=47;printf(“%3c%3c”, c1,c2);printf(“%3d%3d”, c1,c2);}将程序第二行改为:int c1,c2;再运行,分析其结果。
《嵌入式系统原理与设计》实验指导书学院:班级:指导教师:实验一ARMSYS平台开发环境及工具熟悉一、实验目的1、掌握ARMSYS平台开发环境2、学习ARM 的端口配置方法3、掌握ARM STD2.51 开发平台的使用方法二、实验设备硬件:THUS-1 型嵌入式(ARM)实验/开发系统;ARM 仿真器套件(包括仿真器、25 针并口延长线、14 针(或20 针)排线);串口线(2、3 平行);PC 机(Pentumn100)软件:PC 机操作系统Windows 98/2000/NT/XP ;ARM STD2.51 集成开发环境;仿真器驱动程序三、实验内容熟习ARM SDT2.51 平台的开发环境。
四、实验原理1、超级终端的建立①点击“开始→程序→附件→通讯→超级终端”,进入图1,选择COM1,点击确定;图1②如图2,输入名称,选择图标(第一个),点击确定;图2③对端口进行如下设置,并确定:图3注意:当关闭超级终端时提示是否保存,选择“是”,下次不需要再建,直接打开“ARM”即可。
2、JTAG的设置①将JTAG口与目标板连接好;②双击桌面图标,打开ARM7调试代理,将其设置为如图4所示,然后点击Test按钮。
如果JTAG口与目标板连接好,则在ARM7调试代理的左侧的空白处会出现“Detect ARM7TDMI”的字样。
图4注意:在运行SDT的调试器ADW调试程序的过程中,始终不要关闭ARM7调试代理。
3、ARM SDT的应用ARM SDT 是ARM 公司推出的一整套集成开发工具。
SDT 经过逐年维护和更新,目前最新版本为2.5.2。
新建一个项目的步骤如下:①运行ARMSDT2.5 集成开发环境(ARM Project Manager),点击开始菜单中的程序组的ARM SDT V2.51中的ARM Project Manager启动主程序或者点击桌面图标启动主程序。
出现主程序界面,如图5所示。
图5②若要新建一个项目,选择File|New 菜单,在对话框中选择PROJECT,新建一个工程文件(project1),如图6所示。
《嵌入式开发与应用》课程设计指导书主编适用专业:计算机科学与技术(嵌入式技术)年月目录前言 (1)1 课设目的与意义 (2)2 课程设计内容 (2)3课程设计的步骤与方法 (35)4 课程设计要点 (36)5 课程设计报告 (36)6 课程设计成绩考核 (38)2前言课程设计作为一门实践性课程,通过课程设计,使学生加深理解、巩固课堂教学和平时实验内容,使学生初步具备嵌入式应用开发的系统分析、系统设计、系统实现与测试的实际能力,强化学生的知识实践意识、提高动手能力,发挥学生的想象力和创新能力,从而培养技术应用型人才。
本课程设计要求如下:1、学生按题目分组参加课程设计,要求每个学生有明确的分工,每组成员4-6人;2、必须按照工程化开发流程,撰写相应的文档和代码,最后还必须通过课设答辩。
课设成果包括设计文档、程序代码等。
文档必须按照规定的格式撰写(具体见“五、课程设计报告”,否则必须调整好格式才能参加答辩。
3、课设答辩必须撰写PPT,简要阐述所完成的主要工作,自我阐述时间控制在8分钟之内;自我阐述之后,还需回答指导教师所提的2-3个问题。
一、课程设计目的和意义嵌入式系统的教学可以分为课堂理论教学、实验教学和课程设计三个层面。
这三个层面的目标有所不同。
理论学习的主要目标是掌握嵌入式系统的一般原理,例如实时调度策略、自动控制算法等;实验教学的主要目的是掌握嵌入式系统的主要开发流程和基本方法,例如开发工具链的使用、小型应用开发等;课程设计的主要目的是通过实际的嵌入式应用系统开发实例掌握嵌入式系统设计和开发的技能和专门知识,积累实践和工程经验。
二、课程设计内容1、并发控制——生产者-消费者问题计算机在运行时执行过程从大到小可以分为作业、进程和线程三个等级。
所谓线程,是系统能够独立调度和分派的最基本单元。
线程自己并不拥有系统资源,只是在运行的时候占用一点必不可少的资源。
如果在一个程序中同时运行多个线程来完成不同的工作,则称之为多线程。
《嵌入式系统》实验指导书中南大学信息科学与工程学院二O一四年四月目录实验一开发板设置及连接 (2)实验二 Linux和WINCE启动及外围功能测试 (6)实验三 Linux下USB host口测试以及交叉编译 (12)实验四 keil uvision4集成开发环境的使用 (17)实验五 ADS1.2集成开发环境的使用 (23)实验一 开发板设置及连接1. 实验目的① 熟悉LJD-e2440的硬件接口,硬件电路,了解硬件连接的注意事项。
② 学会如何在PC 上装USB 驱动。
2.实验内容① 学会配置dnw ,连接串口。
② 安装usb 下载驱动。
3.实验设备PC 机、LJD- e 2440开发板、电源线、USB 线、串口线、USB 驱动程序。
4. 接口名称说明LJD- e 2440开发板平面图如下图所示。
LJD- e 2440开发板平面图开发板接口名称说明5. 实验步骤1)硬件连接①用交叉串口连接线(在计算机桌面上用红笔画叉的串口线为交叉线)将开发板上的串口P2 与PC 机串口1 相连(如果需要用到USB转串口的同学,请将USB转串口线的串口端与交叉线串口连接,USB端连接到PC 机的USB口相连);②用USB 连接线将开发板(CON2)与PC 机相连;③将5V电源连接到开发板J4 的接口上;④将液晶屏连接到开发板 J2 的LCD接口上。
2)调试终端配置在 PC 机上运行DNW软件(路径为E:\实验室安装软件备份\LDJ-E2440安装资料\DNW带驱动),右击我的电脑选择“管理”,在“设备管理器”中查看端口号,在configuration菜单中选择相应的设置,其中Baud Rate 设置为115200波特率, Com Port设置为COM1,download address设置为0x32000000。
3)进入BIOS系统上电后如果按下任意键,就会进入BIOS系统,如下图所示,切记,以后我们的实验室中只能使用到[0],[5],[7]这三个选项,其他的选项不要去操作,否则可能会破坏开发板内核的系统,导致系统无法启动。
4)USB驱动安装接上USB线后,如果驱动已经存在,通过查看“设备管理器”会出现如下图红色框框所示驱动,如果不存在则需安装驱动,具体步骤参见“E:\实验室安装软件备份\LDJ-E2440安装资料\DNW带驱动”下的“USB下载驱动安装说明.doc”文档。
6.实验结果:本实验让大家更清楚的了解开发板,熟悉开发板的接口。
总的来说,这些接口,只有以太网接口、USB接口、SD 卡可以热插拔,其他均不可以,操作时要小心。
还有,不要用手直接接触板上芯片,以免因静电而毁坏芯片,必要时可以用手触摸USB 或以太网口接口现放电,再进行其他操作,了解了USB驱动程序在PC机上的安装。
实验二 Linux和WINCE启动及外围功能测试1.实验目的①熟悉超级终端或者DNW,熟悉LJD-e 2440Linux和WINCE启动设置,熟悉LJD-e 2440 的BIOS 功能,了解开发板启动流程和外围资源。
②熟悉dnw的下载功能。
③熟悉uversion4的在线调试功能2.实验内容学会如何在PC机上使用DNW,进行Linux和WINCE系统启动设置,熟悉设置方法,在非操作系统下,主要对蜂鸣器进行测试,RTC 实时时钟测试,ADC 测试,按键测试,触摸屏测试,LCD 屏测试,根据使用说明书进行外围功能测试。
3.实验设备PC 机、LJD-e 2440开发板、电源线、USB 线、串口线、JTAG线、Jlink-v8调试器、USB 驱动程序。
4.实验步骤1)用超级终端或者DNW连接串口①超级终端方式:接好串口线后,打开超级终端(在“开始——附件——通讯”下),设置参数为:波特率115200,8 位,无奇偶位,停止位1,无硬件流。
② DNW方式:参考实验一中实验步骤2。
2)LJD- e 2440 的BIOS 功能①进入BIOS方法:连接好串口并配置好后,开发板上电,就会看到串口工具中打印系统启动消息,如果在大概3秒钟内没有在串口工具中输入任何东西,则会自动启动系统,因此在开发板上电后不停按任意键,直到出现下图所示界面。
② BIOS介绍:LJD- e 2440开发板所带的BIOS主要功能有文件下载(USB 和串口)、FLASH 烧写(NOR 和NAND)、启动存储在FLASH 中的程序、设置启动参数(针对LINUX )等。
BIOS 菜单的0 和2 号功能分别是USB 和串口下载,都是配合DNW 这个程序使用的,在DNW 上的Configuration 菜单的Options 选项里可以选择PC 和开发板通讯的串口和波特率,还可以指定USB 下载时开发板要将下载的文件保存到SDRAM 中的起始地址,对于LJD- e 2440 开发板,SDRAM 的物理起始地址是0x30000000,结束地址是0x34000000,大小是64Mbytes,所以指定的USB下载地址要在此范围内。
另外BIOS自身占用了0x30200000以下的空间,因此在用BIOS 的USB 下载功能时应指定地址大于等于0x30200000。
用串口下载时,BIOS 内部固定了下载地址为0x30400000。
BIOS 在下载结束后,会询问是否执行下载的程序,利用此功能可引导LINUX 和WINCE 及用户自编的应用程序。
注意用USB 下载要先在PC 机上装好驱动程序,保证USB 连接好,有时PC机上出现无法识别的USB 设备时,可在PC机键盘上按下ESC键取消下载,等几秒钟再输入0 启动USB 下载。
BIOS 的2 号功能可执行NAND FLASH 的烧写,目前支持三星的32M 和64M 两种型号。
BIOS 对NAND FLASH 作了简单分区,主要是为适应LINUX 操作系统,分区0 为BOOT 区,存储BOOTLOAD,如BIOS;分区1 用做存储内核,用户也可将自己的程序烧入此分区;分区2 用作存储根文件系统。
BIOS 在启动后,若等待5S 钟没接收到控制串口的数据,会自动将存储在分区1 的程序读到0x30400000 地址开始的SDRAM 中并运行。
用户可在下载完数据后不运行,输入2 后选择分区将下载的数据烧写到NAND FLASH 里去,注意若下载的文件大于分区大小时,BIOS 会有提示,但仍可执行烧写。
功能[0]:通过USB DEVICE 下载程序,并运行。
功能[5]:从NAND FLASH 运行程序,启动操作系统。
功能[7]:配置一些系统参数和Linux 启动参数。
3)启动Linux系统(QT)的步骤①接好串口线,打开超级终端并配置好,开发板上电,进入BIOS,键盘上输入“7”选择BIOS 的7号功能,进行BIOS的参数设置,出现如下图所示界面。
②在"please select item:" 提示输入"0"回车,在"please enter value:"提示下输入"1"后回车。
最后输入15 选择退出,接着提示是否保存刚才的设置,输入y 即可保存设置了。
③设置Linux 自启动后,按下开发板“复位键”,BootLoader 等待一段时间,如果没有输入,将会自动启动这个linux 系统,这时将在串口和LCD 屏(选配模块)有信息显示,通过串口可以进入Linux 的命令模式,在LCD 屏上,将有QT 界面的显示,要进入QT,先要进行触摸屏的校准后,一路NEXT 下去,才能进入QT 的界面。
下图是在pc机的超级终端中能看到的启动Linux 后的信息:4)启动WINCE①接好串口,打开超级终端并配置好,按开发板上的复位键重新启动,在计算机上按任意键进入BIOS,进入BIOS 的7 选项配置启动参数功能菜单中。
②在"please select item:"提示输入"0"回车,在"please enter value:"提示下输入"3"。
同时退出保存参数。
重新上电复位,在3秒内,不进行任何操作,将自动启动Wince。
注意,WINCE 的装载要一段时间。
下图是wince系统启动过程中打印出来的信息。
5)开发板外围资源测试先找到BIOS 测试程序LJD2440_Test-II.bin,这个bin 文件在“E:\LDJ-E2440安装资料\LJD-E2440\目标代码 \LJD2440_Test-II.bin”中,下载步骤如下:①打开DNW软件,在DNW 中选择Configuration菜单下的option,设置UART/USB 下载运行地址为0x32000000,波特率为115200,选择相应的串口号。
②在开发板上按复位键后,再在pc机键盘上不停的按任意键进入BIOS 的主功能菜单。
③接上USB DEVICE 的连接线,这时要保证USB 驱动程序已装好(前面已详细讲过USB驱动的具体安装),在DNW 中输入"0"进入USB 下载并运行,这时出现“Download&Run is selected ”提示,如果没有出现"USB host is connected.Waiting a download."提示,则打开“设备管理器——通用设备串行总线控制器——FriendliyARm USB Download Driver”,右击选择“卸载”,在“通用串行总线控制器”上右击选择“扫描硬件改动”,将弹出“找到新的硬件向导”对话框,选择“自动安装软件”单击下一步,安装完毕后点击“完成”,然后在DNW 中将出现"USB host is connected.Waiting a download." 这时可以通过USB下载了。
如果出现"USB host is connected.Waiting a download."提示,直接进行usb下载。
(注意用USB 下载要先在PC 端装好驱动程序,保证USB 连接好,有时PC 端出现发现无法识别的USB 设备时,可在BIOS 中输入ESC 取消下载,等几秒钟再输入"0"启动USB 下载。
USB 连接是否成功在启动信息中有提示,如下图)④点击"USB Port"→"Transmit/restore"选项,选择LJD- e 2440_Test.bin这个映像文件在光盘目录的"目标代码"文件夹下, 接着点击打开,这样就开始下载了。
⑤下载结束后,会自动运行。
出现如下界面:测试程序运行后,就可以进行相应的外围资源测试了,通过选择测试程序主功能菜单相应的选项,就可以进行测试。