武汉大学计算机学院 嵌入式实验报告

合集下载

【优质文档】武汉大学计算机学院 嵌入式实验报告-word范文模板 (25页)

【优质文档】武汉大学计算机学院 嵌入式实验报告-word范文模板 (25页)

本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除!== 本文为word格式,下载后可方便编辑和修改! ==武汉大学计算机学院嵌入式实验报告武汉大学计算机学院课程实验(设计) 报告课程名称:嵌入式实验专业、班: 08级姓名:学号:学期: 201X-201X第1学期成绩(教师填写)实验一 80C51单片机P1口演示实验实验目的:(1) 掌握P1口作为I/O口时的使用方法。

(2) 理解读引脚和读锁存器的区别。

实验内容:用P1.3脚的状态来控制P1.2的LED亮灭。

实验设备:(1)超想-3000TB综合实验仪 1 台(2)超想3000仿真器 1 台(3)连线若干根(4)计算机1台实验步骤:(1) 编写程序实现当P1.3为低电平时,发光管亮;P1.3为高电平时,发光管灭。

(2) 修改程序在执行读P1.3之前,先执行CLR P1.3,观察结果是否正确,分析在第二种情况下程序为什么不能正确执行,理解读引脚和读锁存器区别。

实验结果:(1) 当P1.3为低电平时,发光管亮;P1.3为高电平时,发光管灭。

(2) 不正确。

因为先执行CLR P1.3之后,当读P1.3的时候它的值就一直是0,所以发光管会一直亮而不会灭。

单片机在执行从端口的单个位输入数据的指令(例如MOV C,P1.0)时,它需要读取引脚上的数据。

此时,端口锁存器必须置为‘1’,否则,输出场效应管导通,回拉低引脚上的高输出电平。

系统复位时,会把所有锁存器置‘1’,然后可以直接使用端口引脚作为输入而无需再明确设置端口锁存器。

但是,如果端口锁存器被清零(如CLR P1.0),就不能再把该端口直接作为输入口使用,除非先把对应的锁存器置为‘1’(如 SETBP1.0)。

(3) 而在引脚负载很大的情况(如驱动晶体管)下,在执行“读——改——写”一类的指令(如CPL P1.0)时,需要从锁存器中读取数据,以免错误地判断引脚电平。

嵌入式实训总结报告总结

嵌入式实训总结报告总结

一、实训背景随着物联网、智能家居等领域的快速发展,嵌入式系统在各个行业中的应用越来越广泛。

为了提高我们的嵌入式系统开发能力,我们学院特组织了一次为期两周的嵌入式实训。

本次实训旨在通过实际操作,让我们掌握嵌入式系统的开发流程、常用开发工具和编程技巧,为今后的工作打下坚实的基础。

二、实训内容1. 嵌入式系统基础知识实训的第一阶段,我们学习了嵌入式系统的基本概念、组成、分类以及发展历程。

通过学习,我们对嵌入式系统有了更深入的了解,为后续实训奠定了理论基础。

2. 嵌入式开发环境搭建在熟悉嵌入式系统基础知识的基础上,我们开始搭建开发环境。

实训过程中,我们学习了如何使用Keil、IAR等集成开发环境,掌握了代码编写、编译、调试等基本操作。

3. 嵌入式编程语言实训过程中,我们学习了C语言、汇编语言等嵌入式编程语言。

通过实际编程,我们掌握了嵌入式编程的基本技巧,如寄存器操作、中断处理、定时器等。

4. 嵌入式硬件开发为了提高我们的硬件开发能力,实训中我们学习了如何使用单片机、传感器等硬件设备。

通过实际操作,我们掌握了电路设计、PCB制作、硬件调试等技能。

5. 嵌入式系统项目实践实训的最后阶段,我们进行了嵌入式系统项目实践。

我们选择了智能家居项目,通过团队协作,实现了环境监测、设备控制等功能。

三、实训收获1. 理论与实践相结合通过本次实训,我们深刻体会到理论与实践相结合的重要性。

理论知识为我们提供了坚实的基石,而实践操作则让我们将所学知识应用于实际项目中。

2. 团队协作能力在项目实践过程中,我们学会了如何与团队成员沟通、协作,共同完成项目。

这为我们今后在工作中与同事合作打下了基础。

3. 编程能力提升通过学习C语言、汇编语言等编程语言,我们的编程能力得到了显著提升。

我们掌握了嵌入式编程的基本技巧,为今后从事相关工作打下了基础。

4. 硬件开发能力实训过程中,我们学习了电路设计、PCB制作、硬件调试等技能,提高了我们的硬件开发能力。

嵌入式系统实习报告总结

嵌入式系统实习报告总结

一、实习背景随着信息技术的飞速发展,嵌入式系统作为计算机科学、电子工程、通信工程等多个学科交叉的产物,已经成为当今社会的重要技术领域。

为了更好地了解嵌入式系统的开发与应用,提升自己的实践能力,我在近期参加了为期一个月的嵌入式系统实习。

二、实习内容1. 嵌入式系统基础知识学习实习期间,我首先学习了嵌入式系统的基本概念、组成原理以及工作流程。

通过学习,我了解到嵌入式系统主要由微处理器、存储器、输入/输出接口、外设等组成,其核心是微处理器。

同时,我也学习了嵌入式系统与通用计算机系统的区别,如嵌入式系统具有实时性、可靠性、低功耗等特点。

2. 嵌入式开发环境搭建在掌握嵌入式系统基础知识后,我学习了如何搭建嵌入式开发环境。

这包括选择合适的开发板、安装操作系统、配置编译器等。

通过实际操作,我掌握了使用Keil、IAR等集成开发环境进行嵌入式系统开发的技能。

3. 嵌入式系统编程实践在实习过程中,我参与了多个嵌入式系统编程项目。

这些项目包括基于ARM处理器的温度控制系统、基于STM32的智能家居控制系统等。

在项目中,我学习了C语言编程、汇编语言编程、中断处理、定时器编程等嵌入式系统编程技巧。

4. 嵌入式系统调试与优化在嵌入式系统开发过程中,调试与优化是至关重要的环节。

实习期间,我学习了使用JTAG、串口等工具进行嵌入式系统调试,并掌握了软件优化、硬件优化等方法。

5. 嵌入式系统项目案例分析为了更好地理解嵌入式系统的应用,我分析了多个嵌入式系统案例。

这些案例包括工业控制、消费电子、通信等领域。

通过学习,我对嵌入式系统的实际应用有了更深入的认识。

三、实习收获1. 理论知识与实践能力的提升通过本次实习,我对嵌入式系统的理论知识有了更深入的理解,同时实践能力也得到了很大提升。

在实习过程中,我学会了如何将理论知识应用于实际项目中,解决实际问题。

2. 团队协作与沟通能力的提高在实习项目中,我与团队成员共同完成项目任务。

这使我学会了如何与团队成员进行有效沟通、协作,提高了我的团队协作能力。

嵌入式实训报告2篇

嵌入式实训报告2篇

嵌入式实训报告嵌入式实训报告精选2篇(一)嵌入式实训报告一、实训目的和背景嵌入式系统在现代社会中应用广泛,具有重要的实际意义。

为了进步学生的实际应用才能,我们组织了一次嵌入式实训。

通过实际操作与理论,培养学生的嵌入式系统开发才能和解决实际问题的才能。

二、实训内容1. 嵌入式系统开发环境的搭建:学生首先学习如何搭建嵌入式系统的开发环境,包括安装集成开发环境、配置编译工具链等。

2. 嵌入式系统根底知识的学习:学生学习嵌入式系统的根本概念、原理和架构,理解嵌入式系统的工作原理和开发流程。

3. 嵌入式系统软件开发:学生通过实际编程理论,掌握嵌入式系统的软件开发技术,包括编写驱动程序、应用程序等。

4. 嵌入式系统硬件开发:学生通过实际操作,学习嵌入式系统的硬件开发技术,包括电路设计、硬件接口设计等。

5. 嵌入式系统应用理论:学生完成一个实际工程,将所学的嵌入式系统开发技术应用到实际问题的解决中,加深对嵌入式系统的理解和应用才能。

三、实训过程1. 搭建嵌入式系统开发环境:学生按照实训指导书的要求,完成嵌入式系统开发环境的搭建。

2. 学习嵌入式系统根底知识:学生通过听课和自学,理解嵌入式系统的根本原理和架构。

3. 软件开发理论:学生根据实训指导书中的实例,编写嵌入式系统的软件程序。

4. 硬件开发理论:学生根据实训指导书中的实例,完成嵌入式系统的硬件设计和接口设计。

5. 应用理论:学生根据自己的兴趣和实际需求,选择一个实际工程,并使用嵌入式系统开发技术,完成工程的开发和施行。

四、实训效果通过嵌入式实训,学生深化学习了嵌入式系统的开发技术和实际应用,掌握了嵌入式系统的开发流程和方法。

同时,学生通过理论操作,进步了自己的动手才能和解决问题的才能。

实训过程中,学生不断考虑和探究,解决了许多实际问题,获得了良好的效果。

五、总结与展望嵌入式实训是一次富有意义的理论活动,通过实际操作与理论,加深了学生对嵌入式系统的理解和应用才能。

嵌入式实训报告范文2篇2

嵌入式实训报告范文2篇2

嵌入式实训报告范文 (2)嵌入式实训报告范文 (2)精选2篇(一)嵌入式实训报告一、实训背景嵌入式系统是一种以具体任务为中心,集成了硬件与软件的计算机系统。

由于其体积小、功耗低、功能强大等特点,嵌入式系统被广泛应用于各个领域,如家电、汽车、医疗等。

通过参与嵌入式实训,我希望能够掌握嵌入式开发的基本原理和方法,提高自己的实践能力。

二、实训目标1.掌握嵌入式系统的基本知识和开发工具的使用;2.了解嵌入式系统的硬件架构和软件设计流程;3.能够根据需求设计并实现简单的嵌入式系统。

三、实训内容1.学习嵌入式系统基础知识:通过课堂教学和自主学习,了解了嵌入式系统的概念、特点及应用领域。

深入学习了ARM架构和C语言的基本知识,并进行了相应的实践操作。

2.学习嵌入式开发工具的使用:学习了Keil MDK和IAR Embedded Workbench等常用的嵌入式开发工具的安装和配置方法。

通过实操操作,掌握了调试、编译、下载等基本功能的使用。

3.学习嵌入式系统设计流程:了解了嵌入式软件开发的常用流程,包括需求分析、系统设计、编码实现、调试测试、系统验证等。

通过案例分析和实践操作,对嵌入式系统设计流程有了更深入的了解。

4.设计并实现简单的嵌入式系统:根据实训要求,我选择了一个简单的嵌入式系统项目,通过分析需求、设计系统架构、编写软件代码、调试测试等环节,最终成功完成了项目。

四、实训总结及收获通过参与嵌入式实训,我不仅掌握了嵌入式系统的基本知识和开发工具的使用,还锻炼了自己的实践能力。

我深刻认识到嵌入式系统开发需要全面的知识储备和较高的技术水平,同时也需要良好的分析、设计和沟通能力。

通过实训,我对嵌入式系统开发流程有了更深入的理解,对嵌入式系统的设计和开发也有了更高的认识和要求。

在未来的学习和工作中,我会继续深入学习嵌入式系统开发相关知识,并不断提高自己的实践能力。

嵌入式系统是未来的发展方向,通过不断探索和实践,我相信我能够在这个领域取得更好的成果。

嵌入式实训报告范文2篇

嵌入式实训报告范文2篇

嵌入式实训报告范文嵌入式实训报告范文精选2篇(一)嵌入式实训报告一、实训目的和背景嵌入式实训的目的是通过设计和实现一个嵌入式系统,培养学生的嵌入式系统开发才能和团队协作才能。

本次实训的背景是为了满足社会对嵌入式系统开发人才的需求,进步学生的实际动手才能。

二、实训内容1. 硬件平台的选择和搭建:选择了一款ARM开发板作为硬件平台,并搭建了相应的开发环境。

2. 系统设计和分析:根据实训要求,我们团队设计了一个智能门锁系统,包括用户认证、门锁控制和远程监控功能。

3. 软件开发:使用C语言和嵌入式开发工具进展软件开发,实现了用户认证、门锁控制和远程监控等功能。

4. 硬件连接和调试:将开发板和相关传感器、执行器等硬件设备进展连接和调试,确保系统可以正常运行。

5. 功能测试和调优:对系统进展全面测试,发现并修复了一些问题,并对系统进展了性能优化。

三、实训心得和体会通过本次实训,我深入认识到嵌入式系统开发的复杂性和挑战性。

在实训过程中,我们团队遇到了许多问题,比方硬件和软件的兼容性、性能优化等方面。

但是通过团队的努力和合作,我们成功解决了这些问题,并完成了一个功能完善的嵌入式系统。

此外,我还学到了许多软件开发和硬件调试的技巧,进步了自己的实际动手才能。

在团队协作方面,我们团队成员之间互相配合,共同解决问题,形成了良好的协作机制。

总结起来,本次嵌入式实训让我受益匪浅,学会了许多实际应用的技能和知识,并进步了自身的综合才能。

四、实训成果展示在实训完毕后,我们团队成功完成了一个智能门锁系统,具备用户认证、门锁控制和远程监控等功能。

系统的稳定性和可靠性得到了验证,并且在实际使用中得到了积极的反应。

附图:〔展示系统界面、硬件设备连接示意图等〕五、实训改良意见尽管本次实训获得了良好的成果,但仍有一些方面需要改良。

首先,实训的时间安排可以更合理一些,以便更充分地利用时间进展理论操作。

其次,可以增加一些真实场景的案例分析和解决方案的设计,以提升学生的实际应用才能。

嵌入式实习报告(共5篇)

嵌入式实习报告(共5篇)

嵌入式实习报告(共5篇)第一篇:嵌入式实习报告一、嵌入式系统开发与应用概述在今日,嵌入式ARM 技术已经成为了一门比较热门的学科,无论是在电子类的什么领域,你都可以看到嵌入式ARM 的影子。

如果你还停留在单片机级别的学习,那么实际上你已经落下时代脚步了,ARM 嵌入式技术正以几何的倍数高速发展,它几乎渗透到了几乎你所想到的领域。

本章节就是将你领入ARM 的学习大门,开始嵌入式开发之旅。

以嵌入式计算机为技术核心的嵌入式系统是继网络技术之后,又一个IT领域新的技术发展方向。

由于嵌入式系统具有体积小、性能强、功耗低、可靠性高以及面向行业具体应用等突出特征,目前已经广泛地应用于军事国防、消费电子、信息家电、网络通信、工业控制等各个领域。

嵌入式的广泛应用可以说是无所不在。

嵌入式微处理器技术的基础是通用计算机技术。

现在许多嵌入式处理器也是从早期的PC 机的应用发展演化过来的,如早期PC 诸如TRS-80、Apple II 和所用的Z80 和6502 处理器,至今仍为低端的嵌入式应用。

在应用中,嵌入式微处理器具有体积小、重量轻、成本低、可靠性高的优点。

嵌入式处理器目前主要有Am186/88、386EX、SC-400、Power PC、68000、MIPS、ARM 等系列。

在早期实际的嵌入式应用中,芯片选择时往往以某一种微处理器内核为核心,在芯片内部集成必要的ROM/EPROM/Flash/EEPROM、SRAM、接口总线及总线控制逻辑、定时/计数器、WatchDog、I/O、串行口、脉宽调制输出、A/D、D/A 等各种必要的功能和外设。

二、实习设备硬件:Embest EduKit-IV实验平台、ULINK2仿真器套件、PC机软件:μVision IDE for ARM集成开发环境、Windows 98/2000/NT/XP三、实习目的1.初步掌握液晶屏的使用及其电路设计方法;掌握S3C2410X处理器的LCD控制器的使用;掌握通过任务调用的方法把液晶显示函数添加到uC/OS-II中;通过实验掌握液晶显示文本及图形的方法与程序设计。

嵌入式实习报告3篇

嵌入式实习报告3篇

嵌入式实习报告 3 篇嵌入式实习报告篇 1班级:优异 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语言程序的设计与实现。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

武汉大学计算机学院课程实验(设计)报告课程名称:嵌入式实验专业、班: 08级姓名:学号:学期:2010-2011第1学期成绩(教师填写)实验一80C51单片机P1口演示实验实验目的:(1)掌握P1口作为I/O口时的使用方法。

(2)理解读引脚和读锁存器的区别。

实验内容:用P1.3脚的状态来控制P1.2的LED亮灭。

实验设备:(1)超想-3000TB综合实验仪 1 台(2)超想3000仿真器1 台(3)连线若干根(4)计算机1台实验步骤:(1)编写程序实现当P1.3为低电平时,发光管亮;P1.3为高电平时,发光管灭。

(2)修改程序在执行读P1.3之前,先执行CLR P1.3,观察结果是否正确,分析在第二种情况下程序为什么不能正确执行,理解读引脚和读锁存器区别。

实验结果:(1)当P1.3为低电平时,发光管亮;P1.3为高电平时,发光管灭。

(2)不正确。

因为先执行CLR P1.3之后,当读P1.3的时候它的值就一直是0,所以发光管会一直亮而不会灭。

单片机在执行从端口的单个位输入数据的指令(例如MOV C,P1.0)时,它需要读取引脚上的数据。

此时,端口锁存器必须置为‘1’,否则,输出场效应管导通,回拉低引脚上的高输出电平。

系统复位时,会把所有锁存器置‘1’,然后可以直接使用端口引脚作为输入而无需再明确设置端口锁存器。

但是,如果端口锁存器被清零(如CLR P1.0),就不能再把该端口直接作为输入口使用,除非先把对应的锁存器置为‘1’(如 SETB P1.0)。

(3)而在引脚负载很大的情况(如驱动晶体管)下,在执行“读——改——写”一类的指令(如CPL P1.0)时,需要从锁存器中读取数据,以免错误地判断引脚电平。

实验二 80C51单片机RAM存储器扩展实验实验目的:学习RAM6264的扩展实验内容:往RAM中写入一串数据,然后读出,进行比较实验设备:(1)超想-3000TB综合实验仪 1 台(2)超想3000仿真器1 台(3)连线若干根(4)计算机1台实验步骤:(1)根据流程图设计程序。

(2)RAM_CS插孔连到译码输出P2.7插孔,P1.0连接到L0。

(3)调试运行程序RAM.ASM。

对62256进行读写。

若L1灯闪动,表示62256RAM读写正常。

一直亮说明扩展数据存储器有损坏。

(4)读写正确数码管显示“6264—0”。

若读写错误,数码管显示“6264—E”。

实验结果:程序框图:连线图案:程序解读:ORG 0000HAJMP START ;;无条件跳转到STARTORG 0030H ;;START的首地址START:MOV SP,#60H ;;设置堆栈段,是个过程化语句,因为堆栈的前端一般有其他内容,; ;此程序用不到。

MOV DPTR,#0000H ;;DPTR是数据指针寄存器。

扩展数据存储器62256的地址,;;从0000H开始测试,共32K ,但下面语句只测试了前4KMOV R6,#0FHMOV A,#55H ;;测试字,本实验只用了55H;;/////////////////RAM1: MOV R7,#0FFHRAM2: MOVX @DPTR,A ;;MOVX读写数据存储器,把55H写到0000HCLR P1.0 ;;清零,即为暗状态INC DPTR ;;DJNZ R7,RAM2 ;;R7减1,如不为零则跳转,内循环!!256DJNZ R6,RAM1 ;;R6减1,如不为零则跳转,外循环!!16;;共测试4KMOV DPTR,#0000H ;;从新给地址0000H ,下步读MOV R6,#0FH ;;写多少,读多少;;////////////////////////RAM3: MOV R7,#0FFHRAM4: MOVX A,@DPTRCJNE A,#55H,RAM6 ;;比较前两个操作数,不相等则跳转SETB P1.0 ;;亮INC DPTRDJNZ R7,RAM4DJNZ R6,RAM3;;////////////////////RAM5: CLR P1.0CALL DELAY ;;延迟, 实现闪烁!!SETB P1.0CALL DELAYSJMP RAM5 ;;是个死循环;;////////////////////DELAY: MOV R5,#0FFHDELAY1: MOV R4,#0FFHDJNZ R4,$DJNZ R5,DELAY1RETRAM6: SETB P1.0 ;;1.0口常亮,相当于设置了一个错态!!SJMP RAM6 ;;短转移,无限循环!!END思考与改进:改进程序清单:OUTBIT equ 0e101hCLK164 equ 0e102h ; 段控制口(接164时钟位)DAT164 equ 0e102h ; 段控制口(接164数据位)LEDBuf equ 40hIN equ 0e103hORG 0000Hmov sp,#60hMOV DPTR,#0e100H ;8155初始化MOV A,#03HMOVX @DPTR,ASTART: MOV DPTR,#8000H ;往6264的8000H-9FFFH单元送入#55H MOV A,#55HDD: MOVX @DPTR,AINC DPTRmov r0,dphCJNe r0,#0A0H,DDMOV DPTR,#8000hDD1: MOVX A,@DPTR ;读出数据进行比较CJNE A,#55H,ERRINC DPTRMOV R0,DPHCJNE R0,#0A0H,DD1mov 40h,#06h ;显示缓冲器初始化mov 41h,#05hmov 42h,#06hmov 43h,#04hmov 44h,#10hmov 45h,#00hSTART1: LCALL DISPLAY ;正确的显示“6464-0”SJMP START1ERR: mov 40h,#06hmov 41h,#05hmov 42h,#06hmov 43h,#04hmov 44h,#10hmov 45h,#0Eh ;不正确的显示“6264-E。

”START2: LCALL DISPLAYSJMP START2DISPLAY:setb 0d3hmov r0, #LEDBufmov r1, #6 ; 共6个八段管mov r2, #00100000b ; 从左边开始显示Loop:mov dptr, #OUTBITmov a, #00hmovx @dptr, a ; 关所有八段管mov a, @r0mov dptr,#LEDmapmovc a,@a+dptrmov B, #8 ; 送164DLP:rlc amov r3, amov acc.0, canl a,#0fdhmov dptr, #DAT164movx @dptr, amov dptr, #CLK164orl a,#02hmovx @dptr, aanl a,#0fDhmovx @dptr, amov a, r3djnz B, DLPmov dptr, #OUTBITmov a, r2movx @dptr, a ; 显示一位八段管mov r6, #01call Delaymov a, r2 ; 显示下一位rR amov r2, ainc r0djnz r1, Loopmov dptr, #OUTBITmov a, #0movx @dptr, a ; 关所有八段管clr 0d3hretLEDMAP: ; 八段管显示码db 3fh, 06h, 5bh, 4fh, 66h, 6dh, 7dh, 07hdb 7fh, 6fh, 77h, 7ch, 39h, 5eh, 79h, 71hDB 40HDelay:mov r7, #00H ; 延时子程序DelayLoop:djnz r7, DelayLoopdjnz r6, DelayLoopretend实验三嵌入式Linux开发环境熟悉实验实验目的:熟悉Linux开发环境,学会基于S3C2410的Linux开发环境的配置和使用。

使用Linux的armv4l-unknown-linux-gcc编译,使用基于NFS方式的下载调试,了解嵌入式开发的基本过程。

实验内容:本次实验使用Redhat Linux 9.0操作系统环境,安装ARM-Linux的开发库及编译器。

创建一个新目录,并在其中编写hello.c和Makefile文件。

学习在Linux下的编程和编译过程,以及ARM开发板的使用和开发环境的设置。

下载已经编译好的文件到目标开发板上运行。

实验设备:硬件:UP-NETARM2410-S嵌入式实验平台、PC机Pentium 500以上, 硬盘10G以上。

软件:PC机操作系统REDHAT LINUX 9.0+MINICOM+ARM-LINUX开发环境实验步骤:1、建立工作目录2、编写程序源代码在Linux下的文本编辑器有许多,常用的是vim和Xwindow界面下的gedit等,我们在开发过程中推荐使用vim,用户需要学习vim的操作方法,请参考相关书籍中的关于vim的操作指南。

Kdevelope、anjuta 软件的界面与vc6.0 类似,使用它们对于熟悉windows环境下开发的用户更容易上手。

实际的hello.c源代码较简单,如下:我们可以是用下面的命令来编写hello.c的源代码,进入hello目录使用vi命令来编辑代码:按“i”或者“a”进入编辑模式,将上面的代码录入进去,完成后按Esc键进入命令状态,再用命令“:wq”保存并退出。

这样我们便在当前目录下建立了一个名为hello.c的文件。

3、编写Makefile要使上面的hello.c程序能够运行,我们必须要编写一个Makefile文件,Makefile文件定义了一系列的规则,它指明了哪些文件需要编译,哪些文件需要先编译,哪些文件需要重新编译等等更为复杂的命令。

使用它带来的好处就是自动编译,你只需要敲一个“make”命令整个工程就可以实现自动编译,当然我们本次实验只有一个文件,它还不能体现出使用Makefile的优越性,但当工程比较大文件比较多时,不使用Makefile几乎是不可能的。

下面我们介绍本次实验用到的Makefile文件。

下面我们来简单介绍这个Makefile文件的几个主要部分:●CC 指明编译器●EXEC 表示编译后生成的执行文件名称●OBJS 目标文件列表●CFLAGS 编译参数●LDFLAGS 连接参数●all: 编译主入口与上面编写hello.c的过程类似,用vi来创建一个Makefile文件并将代码录入其中4、编译应用程序在上面的步骤完成后,我们就可以在hello目录下运行“make”来编译我们的程序了。

如果进行了修改,重新编译则运行:5、下载调试在宿主PC计算机上启动NFS服务,并设置好共享的目录,具体配置请参照前面第一章第四节中关于嵌入式Linux环境开发环境的建立。

相关文档
最新文档