第一篇:嵌入式实训周要求
嵌入式实训周基本要求
1.每个人一个项目
2.编写“嵌入式实训周设计报告”书
3.在PC机和实验板上编写测试代码
4.实训周5每个人建立“物联网1201班xxx实训周资料”文件夹,其内包括“嵌入式实训周设计报告”和“程序工程”文件夹。
评分标准(下载学习板上实现功能得分,多人完全一样的现象,都为0分):
1.“嵌入式实训周设计报告”完整--20分
2.实现基本项目要求--------------40分
3.增加动态效果-------------------20分
4.增加基本要求外器件功能---------10分
5.创新---------------------------10分
项目随机选择(基本要求两两组合):
组合方式:BA组合,CB组合,独立项目D,个人创新设计E A:显示外设
1.1602液晶显示屏
2.LED阵列
3.数码管
4.8个LED灯
B:控制部分
1.按键
2.PC机串口
C:动作外设
1、步进电机
2、蜂鸣器
D:独立项目
1.AT2402和PC机串口通讯
E 个人创新设计(鼓励大家创新思维)
第二篇:嵌入式--实训总结
实训总结
班级:卓越1301 姓名:刘* 短短三周的很快就过去了,在中软国际嵌入式方向班的第二次实习马上就要结束了。虽然只有短短的三周,但我学会了很多知识,学习了在Linux-Fedora14操作系统的环境下完成基于Smart210SDK开发板和DS18B20的温度采集及显示系统还有按键控制LED灯并实现开机和关机的相关功能,这些知识让我们对嵌入式有了更进一步的了解与熟悉。
作为一名大学生,纵观现在的就业形势,国家高校的扩招,世界金融危机的横扫,大学生应该有一种居安思危的紧迫感,特别是对已经度过几年大学的我来说,毕业并不是一个遥远的词汇。宝剑锋从磨砺出,梅花香自苦寒来,缺少了平时的锻炼,没有厚积当然不能有薄发。首先我得有思想上的紧迫感,在学校学习的都是理论知识,实践经验则是少之又少。综合能力强的人才才是这个社会需要的,成长成为社会需要的人才是我的个人奋斗目标。有了强大的精神动力,有了坚如磐石的毅力,相信成功并不遥远。
首先,通过这些天的实训我学到了很多知识。这一阶段在Linux-Fedora14操作系统的环境使用Smart210SDK开发板做一些程序设计并烧写到SD卡中通过Smart210SDK开发板来实现程序的执行,通过对Smart210SDK开发板的一步一步的熟悉和了解我们开展了嵌入式的基本的程序烧写、调试、执行这些相关的锻炼过程。
最后我们做了两个项目:
第一个是基于Smart210SDK开发板的按键控制LED灯并且实现开机和关机的相关功能与实现---项目功能是:实现长按开发板上的K1键实现开机或关机,在开机状态下能够实现K1短按控制LED1的点亮与熄灭、K2短按控制LED2的点亮与熄灭、K3短按控制LED3的点亮与熄灭、K4短按控制LED4的点亮与熄灭。项目涉及的相关技术是:相关寄存器的调用,延时子函数的调用,LED灯的初始化,实现按键的长按与短按的控制的C语言程序的设计与实现。
第二个是基于Smart210SDK开发板和DS18B20的测量并在minicom上显示的功能与实现---项目功能:首先实现DS18B20的初始化,然后在DS18B20中写数据、数据转换、读数据、进行数据间的格式转换,最后在minicom上显示出所读出的温度,并且实现当温度高于32°C的时候LED灯闪烁,当温度高于35°C的时候蜂鸣器响。项目涉及的相关技术是:相关寄存器的调用,UART的串口与DS18B20的初始化,延时子函数的调用,字符与字符串的输入输出,计算温度的并进行数据类型的转换的C语言程序的设计与实现!
在此次的实训中我感觉到我们最大的不足就是动手的能力太差,这次实训也让我深刻的了解到,不管在工作中还是在生活中要和老师、同学保持良好的关系是很重要的。做事首先要先做人,要明白做人的道理,如何与人相处是现代社会的做认得一个最基本的问题,对已自己这样一个即将步入社会的人来说,需要学习的东西很多。从一起做项目的同学身上我看到了谦虚谨慎、细心努力的态度,在以后我的生活中我还会留意身边同学的优点,从他们身上找寻我所缺少的品质,不断学习。从老师那里我看到了企业人的生活面貌,没有事情可以不劳而获,今天老师们能够领导我们是他们之前努力的结果,虽然老师没有和我们讲很多公司里的事情,可是他们的言行中所表现出来的都是比我们要严谨的多的对工作的态度。最后谢谢老师辛苦的教导我们!
姓名:刘* 学号:13******** 日期:2014.07.04
第三篇:嵌入式实训报告
嵌入式实训报告
班级:电子信息1301
姓名:钟海明
学号:3138702144
同组人:胡晓海
指导老师:韦龙新 目录:
一、实训目的---------------------3
二、实训要求---------------------3
三、实训内容---------------------3
1、嵌入式系统开发环境的搭建----------3
2、嵌入式程序的编译与下载------------3
3、uboot的移植----------------------4
4、linux内核的移植------------------4
5、NFS网络文件挂载------------------5
6、FTP和TFTP的运用-----------------6
7、试验箱镜像的烧写-----------------7
8、串口实验和TCP实验同时传送AD值--7
四、实训心得体会及体会----------8
一、实训目的:
学习和掌握ARM嵌入式Linux系统的体系结构和基本指令,熟悉Linux下的设计流程和编程流程,能够实现一定功能的嵌入式的设计,为之前的理论课程实践验证和为今后的学习及将来从事的技术工作打下一定的基础。
二、实训要求:
1、嵌入式系统开发环境的搭建
2、嵌入式程序的编译与下载
3、uboot的移植
4、linux内核的移植
5、NFS网络文件挂载
6、FTP和TFTP的运用
7、试验箱镜像的烧写
8、串口实验和TCP实验同时传送AD值
三、实训内容:
1、嵌入式系统开发环境的搭建:
首先在笔记本电脑下安装虚拟机VMware,安装成功后拷贝安装好的Fedora到本机上在虚拟机上找到路径打开。打开虚拟机进入Fedora选择用户为root密码为123456。交叉环境的安装,下载好arm-linux-gcc的编译包,解压安装到/opt下。
2、嵌入式程序的编译与下载:
用vi编辑一个(.C)的文件,保存退出后使用(arm-linux-gcc-o 编译后的文件名 编译文件名)的指令编译,编译成功后用FTP或TFTP将可执行文件拷贝到实验开发板中,chmod +x 文件名 修改权限(./文件名)执行编译文件。
3、uboot的移植
下载U-boot的安装包,解压到/opt路径下进入u-boot。修改Makefile将CROSS_COMPILE=/opt/Embedsky/4.3.3/bin/arm-linux-后执行#make distclean #make smdk2440_config #make
4、Linux内核的移植:
下载Linux的安装包,解压的/opt路径下进入Linux执行#make menuconfig进行配置
配置内核支持NFS启动文件系统
内核支持NFS分区(即编译时在File system中选中[*] Root file system on NFS), 以及支持内核IP_PNP(即编译时在Networking中选中[*] IP: kernel level autoconfiguration)
File systems--->
Network File Systems---> <*> NFS file system support ## 必选 [*] Provide NFSv3 client support ## 可选 [*] Root file system on NFS ## 必选
Networking---> [*] Networking support Networking options---> [*] IP: kernel level autoconfiguration ## 必选 需要打开IP:Kernel level autoconfiguration 以及下面所有的选项包括DHCP, BOOTP, RARP,而且NFS Client Support不能是模块,必须编译进内核。配置完毕后,保存退出。执行下面的命令来生成内核映像。
#make dep #make
#make zImage 映像文件产生在/arch/arm/boot/目录下,名称“zImage”。
5、NFS网络文件挂载:
1)首先修改虚拟机网络为:
192.168.0.43 输入以下命令:
#cd /root
#mkdir nfs
#touch aaa
#cd /mnt
#mkdir nfs
#vi /etc/exports 进入修改内容为:
/root/nfs 192.168.0.*(rw,sync,no_root_squash)存盘退出
#ifconfig(查看网络)
#ifconfig eth1 192.168.0.43
#ifconfig eth1 down
#ifconfig eth1 up
#ping 192.168.0.43
#/etc/init.d/nfs start
#mount-t nfs 192.168.0.43:/root/nfs /mnt/nfs /*此时可以在/root/nfs下新建一个文件,如果在/mnt/nfs下也有,表示NFS挂载成功。
6、TFTP的运用:
修改计算机的IP为192.168.1.43,用网络线将开发板和实验板链接起来(开发板的IP默认问192.168.1.6),打开电脑的菜单栏运行输入cmd,#telnet 192.168.1.6进去开发板用户名为root。如果进不去,打开计算机的Telnet的允许指令,还有一个就是看网络有没有ping通。打开TFTP应用程序, 将Windows文件传送到开发板使用指令: #tftp-r 文件名-g 192.168.1.43 将开发板的文件传送到Windows使用指令: #tftp-l 文件名-p 192.168.1.43 进入查看文件是否有添加,有添加则表示传送成功。
7、试验箱镜像的烧写: 连接好串口和USB,安装USB的驱动(安装驱动由于试验箱和USB线的问题我们那一组试了无数次都没有安装成功,最后还是通过换用别人的电脑才成功的)。实验箱按键拨到下载模式,打开DNW软件选择5,6,7,分别下载内核,u-boot,根文件系统,按键拨到工作模式重启实验箱,看是否正常启动即可。
8、串口实验和TCP实验同时传送AD值: 串口实验
修改串口实验的C文件并用arm-linux-gcc编译器编译生成可执行文件,利用TFTP传送到开发板的/root下,改变权限chmod +x 之后(./)执行./adc 和./uart程序,同时打开串口调试助手波特率选择9600,虚拟机的串口COM1断开,串口调试助手连接串口。接收端选择文本模式,此时就可以看见接收区收到每隔一秒钟收到的AD值,和名字学号。
TCP实验
在虚拟机中打开TCP实验的文件,修改Makefile文件中arm-linux-gcc 编译器的路径,和server.c文件中的hell[]数主的字符为zhonghaiming3138702144.保存退出。#Make 之后会生成一个为client和server的两个程序。此时将两个编译生成的文件传送到开发板上,给权限执行。同时打开网络调试助手,执行client时选择TCPserver IP为Windows IP192.168.1.43,Telnet中执行(#./client 192.168.1.43 8080)点击发送即可在Telnet中接收到 由网络调试助手发送过来的数据。执行./server时 选择TCPclient IP为开发板IP 192.168.1.6 执行(#./server 8080&)点击连接就可以在网络调试助手上接收到(zhonghaiming318702144)。
网络AD测试,先编译,之后和执行server步骤一样,每连接一次,发送一次AD值和姓名学号。
四、实训心得体会及总结:
三周的实训说快也快,说慢也慢。可以说这三周的实训并不是很顺利,由于对试验箱的不熟悉和嵌入式理论与实际的差距在加上嵌入式本身有一定的难度,所以走了很多的弯路。从NFS的挂载开始ping网络一步步的开始试,找原因找百度,最终还是没有成功的用NFS挂载到试验箱上,这期间几乎用了一周的时间,效率可见。
虽然走了许多的弯路,但是我觉得有时候弯路并不是坏事,就此次实训来说,我就知道了挂载实验箱不仅仅可以用NFS挂载还可以用TFTP和FTP以及实验板的rz命令直接挂载,进入实验板不仅仅可以用scoreCRT软件还可以用虚拟机的minicom以及Windows下的Telnet命令直接进入试验箱。
这次实训最大的感触就是要细心多尝试,遇到问题多看多问不要逃避,不会的要虚心求教。要把握好时间观念不要在一个地方死磕,多和同学交流,每个人遇到的问题都不一样当下次你遇到和他一样的问题是说不定你就会了。所以在这里也要感谢同组人和同学的帮助,以及老师耐教学和指导。
第四篇:嵌入式实训总结
嵌入式实训总结
2012年8月我参加了学校安排的课题实训,基地在北京,学院安排我们集体坐火车一同前去,浩浩荡荡的队伍开始出发了。刚来北京的时候,映入眼绵的都是高楼大厦,一直想到的地方终于到了,好多以前的同学听说我要去北京实训都很羡慕不已,我自己也隐隐感到自豪。
我参加的课题实训是嵌入式方向的,开课的内容主要是嵌入式开发方面的,C语言,数据结构,LINUX基本操作,网络编程,操作系统和汇编语言,这些都是嵌入式不可缺少的。每个专业技能都决定了你以后找工过。我们班分了很多小组,每组都有小组长,小组长直接对我们负责。教课老师很认真,都是从很基础的开始讲;同学们听课也很认真,由于代码操作比较多,键盘的声音源源不断的在响。好久没有感觉到这种浓重的学习气氛了,而在这紧张而充实的学习氛围中我获益匪浅,感受颇多。
授课过程中老师们也传授了一些找工作方面的经验,比如简介的样式和写法,面试中的一些着装,礼貌用语和技巧,对此基地的老师还精心的为我们安排了一场模拟面试,在其中我们学到了很多有关于面试方面的经验。
通过这几个月的实训我学到了很多,同时也让我们意识到我们要学的更多。从程序的设计到编写、画图、调试、修改、完善、到最后的实训报告,每个人都付出了时间和精力去做好自己的任务帮助队友,所以团队的合作和队友之间的相互协助非常重要。通过实训让我们更深一步的对自己的专业,对自己的能力,对自己所学的有正确的认识,并且能在以后的学习工作中不断提高和完善自己。特别是讲C语言和进程通信中老师给了我们每个小组的几个小项目,让我学到了更多项目经验,这在学校之前是没有的。这次实训也碰到了些问题,比如项目文档的写法,代码的规范,流程图的画法,这些都有讲究,在老师和同学的帮助下,我不断的提高了在这些方面的学习。
生活上班主任郭老师和王老师对我们关怀备至,让我们没有感觉在外面的那种不适感,同学们也互帮互助,所以生活上大致没什么问题,这让我们更好的去学专业。很感谢学校有这样的实训安排。
总的来说,这次实训还是比较成功的,无论是个人动手能力还是团队协作能力都得到了很好的锻炼。在实训过程中老师也交给我们很多简单实用的技巧。我们也学到了,做好做对一个项目固然重要,同时美观程度也是必不可少的,无论是从参观者的角度还是自己看的角度都很重要。
第五篇:嵌入式设计实训大纲
嵌入式系统实训大纲
适用专业:电子信息工程技术 学 制: 学 时:2周 学 分:2.0
一、实习的性质与目的通过本次实训,运用已学的课程知识,根据任务要求进行软硬件系统的设计和调试,对《嵌入式系统》课程中涉及的arm9s3c2410芯片结构、控制原理、硬件和编程等方面有一定的感性认识和实践操作能力,从而加深对本课程知识点的理解,使学生应用知识能力、设计能力、调试能力以及报告撰写能力等方面有显著提高。
二、教学要求 1.任务介绍
1、题目: 基于arm的模拟交通灯控制器设计
2、设计要求: 利用jxarm9_2410的实验箱上的资源(6个7段数码管、4个led等及按键)来设计一个“模拟交通灯控制器”。试验箱电路见附图。控制面板包括:6位数码显示、2组交通灯(每组交通灯包括红和绿2个灯)、十个数字按键键盘、电源按键、电源指示灯和一个运行键。工作流程如下:(1)按下电源键,电源指示灯亮;(2)按运行键,模拟交通灯控制器工作;(3)LED实时显示当前的交通灯状态;(4)红灯和绿灯的工作顺序如下:
2.功能分析(1)按下电源键,电源指示灯亮;(2)按运行键,模拟交通灯控制器工作;(3)LED实时显示当前的交通灯状态;(4)红灯和绿灯的工作顺序如下:绿灯先亮50S 绿灯闪烁5次 绿灯灭,同时红灯亮10S 红灯闪烁5次
红灯先亮50S 红灯闪烁5次 红灯灭,同时绿灯亮10S 绿灯闪烁5次(5)用2位数码管实时倒计时间,倒计时流程如下:从50S倒计时到00S “00”闪烁 从10S倒计时到00S “00”闪烁 绿灯先亮50S 绿灯闪烁5次 绿灯灭,同时红灯亮10S 红灯闪烁5次(6)运行过程中,若再按下电源键,则控制器停止工作,电源指示灯灭。
三、实习方法
(三)安全文明生产与班组生产技术管理 1)安全文明生产 2)
五、成绩评定平时表现+学生作品+实习报告
六、实习要求
1、实习中要严格服从领导,听从指挥。
2、严格遵守实训室的各项规章制度,爱公共财产,损坏要赔偿。
3、严格遵守实习队纪律,无特殊情况不准请假,对无故缺勤者要严肃处理。
4、尊敬实习指导教师;
5、自始自终地时刻注意安全,未经现场教师同意,不准操作送电,更不准乱动,否则一切后果由自己负责,所有参加实习者要互相监督,发现违生产技术管理 反安全规定和乱动设备的行为立即制止,以确保安全。
6、虚心学习,刻苦钻研,努力实践,认真做好实习日记,完成实习作业。实习结束后认真完成实习报告,写出丰富全面的实习内容,保质保量完成实习任务。电子10—
1、2班嵌入式系统设计实习计划 根据教学进度安排,电子10—
1、2班进行为期2周的嵌入式系统实习计划。计划安排如下: 实训时间:
一、2012年9月3日——2010年9月16日 实训地点:
二、计算机1101室 实训领导小组:
三、组长:袁德明 副组长:李志球 实训队长:
四、刘天飞 指导老师: 单士铎 实训目的和内容见实训大纲(五、另附)
六、实训时间分配和实训项目: 月 日 星天实习内容 备期 数 注3 1 1 实习准备、动员,发放工具,分组,清点计算机,领实习日志、报告、记录本晚 等。布置任务并分解任务.自习4 2 1 熟悉实验箱上的资源,熟悉试验箱上的接口电路 写
3 1 优选方案并设计电路图,并验收书面文档 实
4 1 优选方案并设计软件流程图,并验收书面文档习
5 1 设计并调试程序 报 8 2 查阅资料 6、7 告 9 设计并调试程序 10 设计并调试程序 11 设计并调试程序 12 设计并调试程序
验收设计成果成绩考核 交实习日志、报告、记录本,交工具、计算机放回原处
七、生分组及指导教师 分人学生名单(每组第一名为组长)指导老备注 组 数 师 1 6 等 单士铎
等 2 6 等
等 3 6 等 刘天飞
4 等 4 6 等
等
八、训考核及成绩评定 按学校的有关规定考核学生表现等情况;考核评定成绩,按优、良、中、及格、不及格五级记入学生成绩档案
九、实训注意事项及要求
1、教师按“院实习管理办法”中有关规定执行。
2、学生按院“学生管理办法”和实习动员要求执行。
3、学生要严格遵守各项规章制度,注意安全,杜绝一切事故发生。电子信息工程 2012/8/30 电子10-1、2第指导教师安排表 节 次 星期一 星期二 星期三 星期四 星期五 1节 单士铎 刘天飞、单士铎 刘天飞 刘天飞 刘天飞 2节 3节 单士铎
单士铎 刘天飞 刘天学院
飞 4节 刘天飞 5节 6节 单士铎 刘天飞
自习
单士铎
单士铎 7节
嵌入式系统设计实习指导书
1.课程设计的目的 《嵌入式系统》是一门实践性很强的课程,为了提高学生嵌入式综合程序设计的能力,在学完了《嵌入式系统》课程之后,结合实际问题设计应用程序,旨在加深对嵌入式系统课程知识的理解,加深对使用C语言进行嵌入式程序设计与开发的认识,掌握使用C语言开发嵌入式系统程序来解决实际问题的基本方法和过程,提高进行应用程序设计和分析的基本能力,为今后的学习与实践打下良好的设计基础。2.课程设计题目 由指导教师实现拟定设计题目及要求供学生选择。3.设计准备工作 根据设计任务书给定的题目确定设计的具体题目,结合实验箱上的资源进一步学习嵌入式系统的内容,重点是ARM处理器、LED接口、7段数码管的接口、键盘接口的硬件电路及工作原理,以及进一步熟悉ADTIDE开发环境的使用,掌握利用嵌入式C语言进行程序设计方法,根据选定的题目了解实际工作的任务和内容,收集有关原始信息和资料,结合设计要求,理清设计思路,明确设计内容。4.设计过程内容及方法、步骤 1)需求分析:根据选定的题目,了解实际工作中的任务和内容,收集有关原始信息和资料; 2)系统分析:结合设计要求,对系统进行分析,确定系统功能和系统结构及模块划分; 3)硬件电路的设计:分析工作中需要的电路,采用专业绘图软件进行绘制电路图;并保证电路正确。4)软件流程图设计:根据各模块的功能需要,设计出相应功能的软件流程图; 5)代码设计:根据各模块的功能,在相应函数中设计程序代码,实现所需功能,并进行模块调试,纠正错误; 6)系统测试:利用模拟数据,对整个程序进行运行测试,找出系统存在的问题和不足,并适当给与改正; 7)撰写项目报告。5.设计成果 1)设计成果:包括项目报告、程序源程序代码、硬件电路图。2)项目报告的要求: 项目报告的内容一般包括:引言;设计内容、系统分析;设计方案;开发环境;硬件设计;软件设计、存在问题及原因、使用手册、设计过程中疑难问题的解决办法,系统需要改进的地方和注意的问题;总结等几个部分。(1)项目报告书文字要通顺、层次清楚、对攻功能实现方法、关键技术、主要代码应注有文字说明,必要时用表格列出;(2)设计说明书文字一般不少于30000字。6.设计期间的基本要求 1)学生在教师的指导下,应积极、主动地独立完成课程设计所规定的全部任务。2)应严格按照进度进行设计,不得无故拖延。3)要遵守学院的作息时间,严格遵守设计纪律,原则上不得请假,因特殊原因必须请假者,一律由系领导批准。6.设计期间的基本要求 1)学生在教师的指导下,应积极、主动地独立完成课程设计所规定的全部任务。2)应严格按照进度进行设计,不得无故拖延。
3)要遵守学院的作息时间,严格遵守设计纪律,原则上不得请假,因特殊原因必须请假者,一律由系领导批准。4)设计方案有原则性错误、未按规定时间完成设计、抄袭他人设计、不按设计要求或未完成全部设计内容、无故旷课二次及以上、缺勤时间达三分之一及以上者,不允许参加答辩,成绩定为不及格。
任务一:熟悉实验箱硬件接口电路 1、7段数码管接口电路
2、键盘电路
3、JXARM9-2410教学实验系统硬件资源分配 1).地址空间分配以及片选信号定义 表3-1 JXARM9-2410地址空间分配表 数据宽读/写 地址区间 说 明 度(位)属性 0x00000000~0x0003fffff 16 R/W FLASH存储器:28F320:4M字节; 控制LED跑马灯及键盘扫描: 0x02000000 bit0~3 控制键盘扫描; 8 W bit4~7控制跑马灯的显示。低电平有效。读入键盘扫描值:R
0x02000002 bit0~3有效,某位为低时,对应列有键按下。0x02000004 8 W 数码管数据寄存器。数码管扫描控制寄存器:
0x02000006 8 W bit0~bit5:低电平有效。2).外部中断分配 表3-2 JXARM9-2410外部中断分配表
中断口 说明 备注 INT0 按键中断测试 INT1 IDE中断 INT2 USB中断 INT3 触摸屏中断 INT4 网口中断 INT5 GPRS中断 JP2的1、2断接,选择L3DATA;
2、3断接,选择GPRS中断。INT6 CF卡中断 JP2的1、2断接,选择L3LOCK;
2、3断接,选择CF卡中断。任务二
熟悉开发环境 1基础知识 本章将以leddemo程序为例讲述在ADT IDE集成开发环境下,怎样编写、编译和调试程序,关于ADT IDE的更加详细的使用说明请参考“附录B ANSI C和GCC库文件的使用及设置”以及“ADT IDE用户手册”。1.检查硬件连接 检查实验箱配件是否齐全,包括主板,核心板和LCD等; 2.连接调试器
1)当使用JXARM9-2410内置简易调试模块时,请将计算机并口与实验箱左上角的并口通过并口延长线实现连接,并将JP7跳线通过跳线帽短接。
2)当使用ADT1000高级仿真器时,请将计算机并口与仿真器实现连接,然后通过14Pin的JTAG对连线与JXARM9-2410的JTAG口实现连接,并将JP7跳线上的跳线帽去掉。连接如下图所示: 图1-1 JXARM9-2410教学实验系统硬件连接图
注意事项:
1.实验箱和ADT1000分别使用各自装置配套电源,不要混用。2.不要同时连接ADT1000仿真器和简易调试模块,同时只能选择其中一种方式。
3.编辑、编译、调试
1)建立工程: 打开ADT1000,点击“File->New菜单”,弹出New对话框,如下图所示,选择Project页,在Project页中选择调试设备,对于使用ADT 1000仿真器的用户,请选择“ARM7LPT”,对于简易调试器的用户,请选择“ARM7SIMPLE”,在“Project name”和“Location”中输入工程名称和路径,请注意路径和工程名中不能包含空格。在工程类型中选择“EXEC”。
图1-2 新建工程 2)新建一个文件并保存为d:leddemoleddemo.c,编辑该文件,添加如下代码:
/****************************************************************************/ /*文件名称: LEDSEG7.C */ /*实验现象: 数码管依次显示出0、1,2、„„
9、a、b、C、d、E、F
*/ /****************************************************************************/ #define U8 unsigned char static int delayLoopCount=1000;unsigned char seg7table[16] = {
/* 0 1 2 3 4 5 6 7*/ 0xc0, 0xf9, 0xa4, 0xb0, 0x99, 0x92, 0x82, 0xf8, /* 8 9 A B C D E F*/ 0x80, 0x90, 0x88, 0x83, 0xc6, 0xa1, 0x86, 0x8e, };void
Delay(int
time);/****************************************************************************/
/* 函数说明: JXARM9-2410 7
段构共阳数码管测试
*/ /* 功能描述: 依次在7段数码管上显示0123456789ABCDEF */ /* 返回代码: 无 */ /* 参数说明: 无 */ /****************************************************************************/ void Test_Seg7(void){ int i;*((U8*)0x02000006)= 0x00;for(;;){ /* 数码管从0到F依次将字符显示出来 */ { for(i=0;i<0x10;i++)/* 查表并输出数据 */ *((U8*)0x02000004)= seg7table[i];Delay(1000);
}
/* 数码管从F到0依次将字符显示出来 */ for(i=0xf;i>=0x0;i--){ /* 查表并输出数据 */ *((U8*)0x02000004)= seg7table[i];
Delay(1000);
}
} } /****************************************************************************/ /* Function name : 循环延时子程序 */ /* Description : 循环 'time' 次 */ /* Return type :void */ /* Argument : 循环延时计数器 */ /****************************************************************************/ void Delay(int time){
int i;
for(;time>0;time--)for(i=0;i } 3)将leddemo.c文件加入到工程leddemo中,如下图所示,点击右键菜单: 图1-3 加入文件到工程示意图将弹出文件选择对话框,选择d:leddemoleddemo.c文件,并点击“打开”按钮。 图1-4 文件选择对话框 4)新建一个文件并保存为d:leddemoldscript,编辑该文件,添加如下内容: SECTIONS { .= 0x0c000008; .text : { *(.text)} .data : { *(.data)}.rodata : { *(.rodata)}.bss : { *(.bss)} __EH_FRAME_BEGIN__ =.;__EH_FRAME_END__ =.;PROVIDE(__stack =.); .debug_info 0 : { *(.debug_info)}.debug_line 0 : { *(.debug_line)}.debug_abbrev 0 : { *(.debug_abbrev)}.debug_frame 0 : { *(.debug_frame)} } 该文件为链接脚本文件,其意义和编写方法将在“实验2 ARM汇编语言编程实验”中解释,更进一步的解释请参考“附录A 链接定位脚本”。该文件必须通过第5步中的工程设置对话框设置到链接参数中才有效。 5)如下图所示,在工作区窗口中的leddemo工程名上右键点击并选择“Setting”菜单项。 图1-5 工程设置示意图弹出工程设置对话框,选择“Link”页,在“Link script”中输入“.ldscript”,然后点击“OK”按钮。 图1-6 Link选项 6)如下图所示,在工作区窗口中的leddemo工程名上右键点击并选择“Build”菜单项。图1-7 工程编译示意图编译成功后结果如下图所示。 图1-8 编译结果示意图 7)连接仿真器到JXARM9-2410 JTAG连接。并将调试器和JXARM9-2410上电,然后点击“Debug”菜单的“Remote Connect”进行连接,如下图所示。 图1-9 调试菜单正常连接结果如下图所示。 图1-10 连接结果示意图如果连接正确“Debug”菜单项将如下图所示 图1-11 正确连接后的调试菜单示意图 8)点击Debug->Download菜单下载程序到SDRAM中 图1-12 程序下载下载成功后,将显示入口点的源代码,如下图所示: 图1-13 下载成功后的调试窗口示意图 9)运行程序,点击Debug->Go菜单项,运行该程序,如果运行正常,JXARM9-2410-1上的六个七段数码管将显示十六进制数据。 图1-14 运行程序 10)点击Debug->Stop停止程序运行。任务三:采用动态显示的方法在7段数码管上显示如下字符 任务四:实现4个led发光二极管的跑马灯 任务五:实现模拟交通灯系统 a 实现红、绿的循环控制。使用红、绿二种不同颜色的LED灯实现此功能,由南往北方向红、绿二个灯依次依次显示60秒和40秒,由东往西方向的红绿二个灯依次显示40秒和60秒上。b用数码管显示倒计时。可以利用动态显示或静态显示。c 南北方向控制车辆的绿灯熄灭的同时,控制蜂鸣器响2秒来作为警报。