嵌入式系统实验内容09-10
- 格式:doc
- 大小:59.50 KB
- 文档页数:7
上海电力学院文件
沪电院教〔2009〕37 号
关于批准2009年校精品课程等项目立项的决定
上海电力学院2009年度教改项目评审工作已结束。
经二级学院(直属系)和校部两级评议,主管校长批准,共确定《理论力学》等6 门精品课程项目和《高电压技术》等83项课程建设及教学改革项目立项,现予公布(见附表)。
本次项目期限为一年,将于2010年3月结题验收。
上海电力学院
二○○九年四月二十九日
主题词:决定课程建设教学改革项目立项
主送:各二级学院(直属系)
上海电力学院教务处2009年5月7日印发
附表:
2009年度课程建设及教学改革立项项目名单。
实训报告通常应该包含实训目的、实训内容、实训过程、实训结果和结论等内容。
以下是一个关于嵌入式应用开发实训报告的示例结构:### 1. 实训目的:明确实训的目标和预期收获,这可能包括:- 理解嵌入式系统的基本概念和原理。
- 掌握特定嵌入式开发平台或工具的使用。
- 能够设计和实现基本的嵌入式应用程序。
- 增进团队协作和解决问题的能力。
### 2. 实训内容:详细描述实训内容,包括:- 所使用的嵌入式开发平台或工具。
- 实际的编程任务和项目。
- 涉及的硬件和软件资源。
### 3. 实训过程:描述实训的具体步骤和方法,可能包括:- 学习嵌入式系统基础知识。
- 安装和配置开发环境。
- 进行实际的编码和调试工作。
- 遇到的问题和解决方法。
### 4. 实训结果:总结实训的成果,可能包括:- 实现的嵌入式应用程序的功能和特性。
- 对项目进行的测试和验证。
- 软硬件协同工作的结果。
### 5. 结论:对整个实训过程进行总结,包括:- 实现目标的程度。
- 学到的关键经验和技能。
- 对嵌入式应用开发的未来学习和发展的展望。
### 6. 反思与建议:对实训过程进行自我反思,提出对实训的改进建议,包括:- 遇到的挑战和应对策略。
- 对实训教材和指导的反馈。
- 对实训流程和组织的建议。
这个结构是一个通用的框架,你可以根据具体的实训内容和要求进行调整。
确保报告清晰、详实、具有逻辑性,并能够准确传达实训的目的和结果。
嵌入式蜂鸣器实验报告篇一:嵌入式- 蜂鸣器控制实验实验二蜂鸣器控制实验实验目的:1 了解ARM处理器PWM接口的处理机制2 掌握在S3C2440A平台下进行PWM接口应用编程实验器材:Sinosys-EA2440实验箱PC机实验原理:脉冲宽度调制(PWM)是一种对模拟信号电平进行数字编码的方法。
通过高分辨率计数器的使用,方波的占空比被调制用来对一个具体模拟信号的电平进行编码。
即通过改变方波的占空比表示不同的模拟信号的电平。
在ARM嵌入式实验中,其实是通过微处理器中的计数器,对经过频率变换的输出频率周期进行计数,在PWM中,是通过两个寄存器(TCNTBn和TCMPBn)对输出信号的占空比进行调制,TCNTBn可以设置为TCMPBn+X,当TCNTBn在TCMPBn和TCMPBn+X 之间计数时,TOUTn(即输出信号)输出低电平,当TCNTBn计数下降到TCMPBn时,TOUTn电平反转,变为高电平,直到TCNTBn计数减到0,如果此时开启了重载,则又把预定的值重新装入TCNTBn和TCMPBn中,重复以上过程。
在ARM嵌入式PWM中,会提供一个基准时钟作为输入时钟,PWM调制会对输入的时钟进行分频等操作进入计时器逻辑,其电路图如下:图PWM计时器框图如图,输入的时钟PCLK经过一个8bit预置器和一个分频器,将得到的时钟进入计数器逻辑板块作为驱动时钟,而输出的TOUT则作为蜂鸣器(蜂鸣器控制电路如图)的驱动信号。
图蜂鸣器控制电路实验总结:实验的主函数首先设置时钟,端口初始化,并捕捉进入测试函数的指令,与实验一大致相同,在此不在赘述,重点分析测试函数。
测试函数如下:void Beep{int div,irGPBCON&=~0x3; //将GPB0作为输入口rGPBCON|=0X2;// 接入TIMER0rTCFG0&=~0XFF; // 设置prescaler 为32rTCFG0|=0XF;rTCFG1&=~0XF; //选择mux=1/16rTCFG1|=0X3;div=plck/32/16/freq计算TCNTB0的值rTCNTB0=div;rTCMPB0=rTCNTB0>>2; 占空比为4:1rTCON&=~0X1F; 设置死区自动重载反转人工载入开始rTCON|=0XB;关闭死区开启重载关反转开人工载入开始rTCON&=~2; 关闭人工载入for;}void beep_test{U8 key;freq=1000;beep;while{Uart_Printf\n”); key=Uart_Getch;ifbreak;else if{freq+=100; beep ; //加号增加频率Uart_Printf ;}else if//减号降低频率{ freq-=100; beep ; Uart_Printf ; }实验中,通过DNW将bin文件下载到实验箱中,发现蜂鸣器开始想起,通过“+”“-”的控制,使得频率改变,明显感到蜂鸣器的响声变尖或者变低沉,说明程序有效。
实验十自由口编程实验一、实验目的了解PLC通信功能;初步掌握PLC自由口通信编程方法。
二、实验设备1、THSMS-A型实验装置二台2、安装了STEP7-Micro/WIN4.0编程软件的计算机一台3、PC/PPI编程电缆,网络连接器。
4、锁紧导线若干三、实验内容与步骤(1)输入以下程序,通过串口调试软件(可从网上下载,下图为某一款软件主界面)或windows超级终端(使用方法附后,如果你的计算机中没有,请找老师或者从网上下载)观察现象。
Network 1 // 网络标题// 传送:“S7-200你好”到VW100开始的五个字(十个字节)LD SM0.1MOVB 16#09, SMB30 //9600,8,N,1MOVW 16#5337, VW100 //“S”和“7”的ASCII码MOVW 16#2D32, VW102 //“-”和“2”的ASCII码MOVW 16#3030, VW104 //两个“0”的ASCII码MOVW 16#C4E3, VW106 //“你”字的汉字机内码,产生办法:找到汉字区位码,将区码和位码分别变为16进制,再分别加上A0即得MOVW 16#BAC3, VW108 //“好”的机内码MOVB 10, VB99 //缓冲区有10个字节(即“S7-200你好”),缓冲区格式见教材P145图7-22Network 2LD SM0.5 //秒脉冲,占空比50%EUXMT VB99, 0 //上升沿发送VB99中写明的字节数,从端口0发送(2)输入以下程序,通过串口调试软件(可从网上下载,下图为某一款软件主界面)或windows超级终端(使用方法附后,如果你的计算机中没有,请找老师或者从网上下载)观察现象。
主程序:Network 1 // 网络标题// 网络注释LD SM0.1MOVB 9, SMB30MOVB 1, VB100MOVB 'A', VB101Network 2LD SM0.1ATCH INT0, 8ENINetwork 3LD I0.1EUXMT VB100, 0中断程序:TITLE=中断程序注释Network 1 // 网络标题//SMB2中包含自由端口通信过程中从端口0 或端口1 收到的每个字符LDB= SMB2, 'A'= Q0.1程序所用符号表:拨动PLC开关进入运行状态,此时关闭STEP7软件,启动超级终端,在终端窗口分别输入CHINA123和chinAa123,观察PLC的Q0.1端子的灯亮来灭情况。
我以一名大学生的人格尊严保证,在本场考试中,自觉遵守考试纪律,服从考试管理,决不作弊或帮助别人作弊!签名:学院专业学号级班··················密···················封·····················线··················命题人签字:系主任签字:审核院长签字:共印份数:第1页共5页聊城大学计算机学院09—10学年第1学期期末考试2009级《计算机科学导论》试题(闭卷A卷)(请将答案写在答题纸上,否则无效)一、单项选择题(共30小题,每小题1分,共30分)1、世界上第一位程序员是( C )。
A.Leibniz B.Babbage C.Ada Lovelace D.Turing2、删除或隐藏了复杂的细节、只保留实现目标所必须的信息,称作( A )。
A.抽象B.建模C.分析D.封装3、在计算机中,表示0.1秒的音频信息,与表示1 000 000个浮点数相比,占用存储空间( D )。
A.大B.小C.相等D.无法比较,因为缺少条件4、一个以Unicode存储的文本文件,与以ASCII形式存储相同内容的文件,在占用空间方面相比,大约( B )。
合肥学院嵌入式系统设计实验报告(20 13 - 20 14 第 2 学期)专业:实验项目:BootLoader移植实验实验时间:2014年5月19日实验成员:____________________________________________________________________指导老师:电子信息与电气工程系2014 年 4 月制实验三BootLoader 移植实验一、实验目的1、熟悉 Bootloader 工作原理。
2、了解 U-Boot 的代码结构。
3、掌握 U-Boot 移植过程。
二、实验内容本实验熟悉 Bootloader 工作原理,了解 U-Boot 源码结构,基于 S3C2440 处理器,完成 U-Boot 移植,并在目标开发板上测试通过。
三、实验设备硬件: 1、 pc 机2、 FriendlyARM开发套件即MIRCO2440 核心板软件: 1、虚拟机( VMware )2、U-Boot 源码( u-boot-2011.03.tar )四、实验过程1、 Micro2440配置在mini2440/micro2440上的移植准备工作,我们仍然将开发板文件建立在board/samsung 下,2、配置时出现错误,字体要修改,复制粘贴的时候出现的错误,有的地方有中文,去掉就行了。
3、编译完成失败,只有上网查找错误,最后解决了错误。
11124、编译完成后将u-boot.bin下载到SDRAM的 0x33f80000地址处, u-boot已经能在RAM中运行。
二、支持DM90001、编译完成后将u-boot.bin下载到SDRAM的0x33f80000地址处。
三、支持内核启动1、编译完成后将u-boot.bin下载到SDRAM的0x33f80000地址处。
四、支持Nand Flash1、编译完成后将u-boot.bin下载到SDRAM的0x33f80000地址处。
五、实验小结本实验需要熟悉Bootloader 工作原理,了解U-Boot 源码结构,基于S3C2440 处理器,完成 U-Boot 移植,并在目标开发板上测试通过,首先可以看到实验指导书上的介绍,了解U-Boot 的移植。
实验一熟悉Linux开发环境一、实验目的1.熟悉Linux开发环境,学习Linux开发环境的配置和使用,掌握Minicom串口终端的使用。
2.学习使用Vi编辑器设计C程序,学习Makefile文件的编写和armv4l-unkonown-linux-gcc编译器的使用,以及NFS方式的下载调试方法。
3.了解UP-NETARM2410-S嵌入式实验平台的资源布局与使用方法。
4.初步掌握嵌入式Linux开发的基本过程。
二、实验内容本次实验使用Redhat Linux 9.0操作系统环境,安装ARM-Linux的开发库及编译器。
创建一个新目录,并在其中编写hello.c和Makefile文件。
学习在Linux 下的编程和编译过程,以及ARM开发板的使用和开发环境的设置。
下载已经编译好的文件到目标开发板上运行。
三、预备知识C语言的基础知识、程序调试的基础知识和方法,Linux的基本操作。
四、实验设备及工具(包括软件调试工具)硬件: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环境开发环境的建立。
在建立好NFS共享目录以后,我们就可以进入MINICOM中建立开发板与宿主PC机之间的通讯了。
如果不想使用我们提供的源码的话,可以再建立一个NFS共享文件夹。
如/root/share,我们把我们自己编译生成的可执行文件复制到该文件夹下,并通过MINICOM挂载到开发板上。
再进入/host目录运行刚刚编译好的hello程序,查看运行结果。
六、思考题1.Makefile是如何工作的?其中的宏定义分别是什么意思?实验二驱动程序的加载与Demo程序的执行一、实验目的1.进一步熟悉Linux开发环境,数练掌握Minicom串口终端的使用。
2.进一步熟悉UP-NETARM2410-S嵌入式实验平台的资源布局与使用方法。
3.学习在目标板上执行程序和加载驱动程序的方法。
二、实验设备及工具1.硬件:UP-NETARM2410-S嵌入式实验平台,PIV2.4G/512M/120G开发主机。
2.软件:WindowsXP+VMware5.0+RedHatLinux9.0,Minicom, vi, ARM-Linux 开发环境。
三、实验内容及要求1.运行实验箱ARM2410平台上不需要驱动程序就能执行的Demo演示程序,观察嵌入式平台上程序执行的结果。
(5)exp/hello, exp/pthread, ad, minigui/mgdemo, sound/madplay,sound/mplayer2, web/httpd2.运行实验箱ARM2410平台上需要加载驱动程序的Demo演示程序,学习驱动模块的加载、卸载、查看方法。
要求加载新的驱动程序前卸载不再使用的驱动程序。
(3)Motor/DC/., motor/STEP/., led/.3.编写一个Shell脚本程序,通过执行此Shell程序自动逐个运行上述所有的演示程序,对于需驱动程序支持的程序要能自动加载、卸载其驱动程序。
(2)实验三多线程应用程序设计一、实验目的1.了解多线程程序设计的基本原理2.学习pthread函数的使用。
二、实验设备及工具3.硬件:UP-NETARM2410-S嵌入式实验平台,PIV2.4G/512M/120G开发主机。
4.软件:WindowsXP+VMware5.0+RedHatLinux9.0,Minicom, vi, ARM-Linux 开发环境。
三、实验内容1.将/arm2410s/exp/basic/02_pthread/目录中的文件拷贝到/home/name/中。
详细阅读phread.c程序。
Name是指自己姓名拼音或缩写。
2.编译pthread.c程序并采用NFS服务与共享目录挂载的方式在开发平台上运行该程序,研究其输出结果,体会多线程程序的运行特点。
(3) 3.修改程序,若生产产品编号的个位数字为4,则视为不合格产品,不生产到缓冲区也不消费输出。
将原来的输出格式改为:993>>>>>>>>>>>>>>>made completed!993>>>>>>>>>>>>>been consumed!其中993是产品编号的样例,其值在1-999之间。
(4)4.改变缓冲区的大小,观察其对生产与消费的影响。
5.增加键盘输入线程,在生产消费线程运行的过程中随时能够输出按下的键值,若按下ESC键,能立即退出进程。
若无任何按键,则生产线程结束时自动结束整个进程。
(3)四、注意事项1.注意拷贝操作,不能出错。
2.注意要修改拷贝过来的文件属性的修改,chmod 777 filename3.注意共享目录的挂载。
实验四串行端口程序设计一、实验目的1.进一步掌握多线程程序的设计方法。
2.了解在Linux环境下串行端口程序设计的基本方法。
3.掌握终端的主要属性及设置方法,熟悉终端I/O函数的调用二、实验设备及工具1.硬件:UP-NETARM2410-S嵌入式实验平台,PIV2.4G/512M/120G开发主机。
2.软件:WindowsXP+VMware5.0+RedHatLinux9.0,Minicom, vi, ARM-Linux 开发环境。
三、实验内容1.阅读源代码,理解串行端口参数设置的含义,编译并在2410s平台上运行该程序。
(2)2.修改原程序,使2410s平台通过串口逐字发送“***Welcome to 2008BeiJing Olympic Game***!”字样的内容。
(3)3.若上述内容保存在一文本文件中,在程序中打开此文件,将文件中的全部内容通过串口逐字发送到开发主机的显示器。
发送完成后,程序自动退出。
(1)4.通过线程数据共享的方式,将键盘上的按键内容发送到串口,ESC键停止发送并退出进程。
(4)5.编写一个简单文件收发程序,实现串口文件的下载。
(3)实验五 A/D接口的设置与程序设计一、实验目的1.了解AD转换的原理与主要技术参数,了解与ARM内部转变换器相关的寄存器及参数设置方法。
2.学习在Linux环境下对s3c2410芯片中AD转换器的操作与控制。
3.学习Linux+ARM系统中数据采集的后期处理方法以及C语言的具体实现。
二、实验设备及工具1.硬件:UP-NETARM2410-S嵌入式实验平台,PIV2.4G/512M/120G开发主机。
2.软件:WindowsXP+VMware5.0+RedHatLinux9.0,Minicom, vi, ARM-Linux 开发环境。
三、实验内容1.阅读源代码,学习AD接口的设置和初始化方法。
2.利用交叉编译方法在自建目录中编译运行原程序。
(2)3.修改程序,使用滑动平均滤波算法对3个通道的转换结果进行处理,调整队列长度使响应速度和数据稳定度达到一个最佳效果。
(4)附加:如果V_CH1(通道1的值)在V_CH0与V_CH2之间,则在数据之后显示“Normal”字样,否则分别显示“Low”或“High”字样(2)。
4.在上述数据滤波基础之上,增加线程键盘控制功能,若输入数字0、1、2则选择响应的通道采集数据、刷新显示,若按“Esc”键,则退出进程。
(2)5.将内容3的屏幕输出结果逐行记录到一个文本文件中,记录行数不要超过1000行。
(2)实验六直流电机驱动实验一、实验目的1.了解ARM微处理器的PWM端口,掌握相应寄存器的配置方法。
2.学习Linux内核驱动模块配置、编译、加载的步骤与方法。
3.在Linux环境下编程实现ARM系统PWM输出的基本方法,以及实现直流电机调速与控制的程序设计方法。
二、实验设备及工具1.硬件:UP-NETARM2410-S嵌入式实验平台,PIV2.4G/512M/120G开发主机。
2.软件:WindowsXP+VMware5.0+RedHatLinux9.0,Minicom, vi, ARM-Linux 开发环境。
三、实验内容1.阅读源代码,了解定时器寄存器的配置方法。
2.配置、编译直流电机驱动程序模块。
在/kernel2410s/kernel-2410s目录中运行make menuconfig,完成配置、编译过程。
(3)3.使用insmode命令加载刚才重新编译的直流电机驱动模块,交叉编译并运行直流电机调速控制程序。
(3)4.修改源程序,当在键盘上按“上”光标键时,电机速度逐渐增加;若按“下”光标键,则电机速度逐渐减小。