ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:445.72KB ,
资源ID:11571736      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11571736.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(光电工程学院学生嵌入式实验报告.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

光电工程学院学生嵌入式实验报告.docx

1、光电工程学院学生嵌入式实验报告学 生 实 验 报 告实验课程名称 嵌 入 式 系 统 开课实验室 创 新 实 验 室 学 院 光电工程学院 年级 研2012级 专 业 仪器仪表工程领域 学 生 姓 名 学 号 开 课 时 间 2014 至 2015 学年第 1 学期总 成 绩教师签名开课学院、实验室:光电学院创新实验室 实验时间 :2014年4月23日课程名称嵌入式系统实验实验项目名 称 Ti LM3S9B96开发试验实验项目类型验证演示综合设计其他指导教师成 绩一、实验目的 1、了解微控制器LM3S9B96的性能。2、掌握LM3S9B96IO口输入输出编程方法。二、实验原理LM3S9B96是

2、TI公司的基于ARM Cortex-M3的32位MCU,具有先前8位和16位MCU的价格成本,CPU工作频率80MHz,100DMIPS性能,ARM Cortex SysTick定时器,片内具有高达50MHz的256KB单周期闪存和96KB单周期SRAM,内部ROM加载了StellarisWare软件,具有扩展的外设接口和串行接口。1、 验证性实验把存在外部RAM 里的图像解压缩并显示在320x240 的屏幕上,并且实现“拖动”的效果。验证性实验程序主要分为三个部分:图像读取,图像解码,图像显示。工程文件的main()函数所在文件为showjpeg.c,主要函数的调用与功能如下表所示。2、设计

3、性实验下图为LM3S9B96与LED1灯和SW1按键的连接原理图,设计C程序,实现LM3S9B96处理器的PF3口控制评估板上的LED1灯(即为“附1.1 LM3S9B96评估板外观”中“User LED”)的亮灭,并用SW1按键(附1.1评估板上标有“UserSwitch”的按键)实现两种闪烁模式的切换,两种模式的区别是LED灯闪烁的频率不同,并用示波器观察PF3输出的波形,记录波形的频率。LM3S9B96用户手册为“Datasheet-LM3S9B96-中文版.pdf”,寄存器设置参考该手册,设计程序用到以下寄存器:(1)运行模式时钟门控控制寄存器;(2)GPIO方向寄存器;(3)GPIO

4、数字使能寄存器;(4)GPIODATA数据寄存器;(5)上拉电阻选择寄存器;(6)驱动选择寄存器。 其中IO口为输入需要设置(1)、(2)、(3)、(5)、(6)这5个寄存器;IO口为输出需要设置(1)、(2)、(3)、(4)这4个寄存器,设置PF3输出为“1”的方法示例:#define SYSCTL_RCGC2_R (*(volatile unsigned long *)0x400FE108)/0x400FE108为运行模式时钟门控控制寄存器地址#define GPIO_PORTF_DIR_R为PF口的方向寄存器地址#define GPIO_PORTF_DEN_R (*(volatile u

5、nsigned long *)0x4002551C)/0x4002551C为GPIO数字使能寄存器地址#define GPIO_PORTF_DATA_R (*(volatile unsigned long *)0x400253FC)/0x400253FC为GPIODATA数据寄存器地址三、使用器材PC 机,示波器,LM3S9B96 实验评估板,USB A 型公口转Mini B 型5Pin 数据线1 条(即电脑连接MP3 等设备的数据线),5VDC 电源。 四、实验步骤 1、验证性实验 (1) 连接实验设备: 跳线冒连接“Power”到ICDI,以使用USB接口供电。 把USB A型公口转Min

6、i B型5Pin 数据线的Mini B 接口插在J13 处,另一端连接计算机的USB 接口。(2)按照如下步骤打开showjpeg例程,下载程序,运行程序。 点击“开始-程序-IAR Systems-Embedded Workbench for ARM 5.40-Embedded Workbench),运行IAR软件。打开Workspace。选择jpeg工程,并打开。编译链接工程,选择菜单Project-Rebuild All。选择窗口中右上角的“Download and Debug”绿色按钮,下载目标文件。选择Debug-go或点击按钮全速运行程序。观察LM3S9B96 实验评估板上液晶屏,

7、若液晶无显示,则需要按一下下开发板上的“RESET”复位键,液晶上便会出现图像,可用手指拖动移动图像。五、实验过程原始记录(数据、图表、计算等)1、下面为设计性实验的主要程序部分。void main() SYSCTL_RCGC2_R=0x00000120; /设置PF3为输出 GPIO_PORTF_DIR_R =0x08; GPIO_PORTF_DEN_R =0x08; GPIO_PORTJ_DEN_R =0x80; While(1) if(GPIO_PORTJ_DATA_R=0x00) /读取按键的值 flag+; if(flag%2)=0) GPIO_PORTF_DATA_R|=0x08;

8、 /点亮LED灯 for(i=0;i40000;i+); GPIO_PORTF_DATA_R=0x00; /灭LED灯 for(i=0;i40000;i+); else GPIO_PORTF_DATA_R|=0x08; /点亮LED灯 for(i=0;i400000;i+); for(i=0;i400000;i+); GPIO_PORTF_DATA_R=0x00; /灭LED灯 for(i=0;i400000;i+); for(i=0;i400000;i+); 六、实验结果及分析1、验证性实验:LM3S9B96 实验评估板的液晶屏上出现一副图像,可用手指拖动移动图像。2、设计性实验: 程序全速

9、运行后,LED灯以一定的频率缓慢地闪动;按下按键SW1后,LED灯又以另外一种频率快速地闪。若再按一次SW1,则LED灯又按照第一种频率闪,如此循环。并用示波器观察PF3输出的波形如下图所示。七、思考题回答 LM3S9B96和51单片机相比,IO口输入输出编程有何区别?答:同51单片机相比,LM3S9B96的IO口输入输出编程多了对时钟门控控制寄存器、IO的方向寄存器、数字使能寄存器、上拉电阻使能寄存器和驱动选择寄存器等的编程,而51单片机仅仅只需对一个类似数据寄存器的P#寄存器直接赋值和读取即可。教师签名:年 月 日开课学院、实验室:光电学院创新实验室 实验时间 :2014年4月30日课程名

10、称嵌入式系统实验实验项目名 称 Android应用程序开发实验实验项目类型验证演示综合设计其他指导教师成 绩一、实验目的1、 了解Eclipse软件的使用。2、掌握简单的安卓应用编写步骤,熟悉android软件开发流程。二、实验原理Android 是Google开发的基于Linux平台的、开源的、智能手机操作系统。Android包括操作系统、中间件和应用程序,由于源代码开放,Android可以被移植到不同的硬件平台上。Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。通过使用Android Eclipse 插件,可以在Eclipse 环境中构建Android 应用程序。1、验证

11、性实验 通过Eclipse编写android程序,实现一个计算器功能。2、设计性实验 创建一个工程,设计一个显示个人基本信息的应用程序。要求:创建一个Activity,设置一个以自己名字命名的按键,点击按键后,跳转到另一个界面,界面显示自己的基本信息。三、使用器材 android开发平台-Eclipse软件,一台android手机。四、实验步骤1、验证性实验 以下介绍如何使用Eclipse创建一个应用程序,实现计算器功能。(1) 创建工作文件夹:在E盘下创建名为workspace的文件夹,在此文件夹下创建名为activity01的文件夹。(2) 打开Eclipse开发工具并创建工程:选择Fil

12、eNewandroid application project。在Application Name,Project Name中填写Activity_01(注意首字母最好大写),点击Next。(3)去掉Create Project in Workspace前面的勾选,选择之前创建的文件夹,点击Next。(4) 此处为更改应用软件图标操作,不做修改,点击Next。(5) 此处为更改应用软件主题操作,不做修改,点击Next。(6) 设置工程名称,如图进行修改后,点击Finish。(7) 点击最左侧窗口中的“Restore”按钮,打开src中的Activity01,可以看到如图所示窗口。若已经看到左侧

13、的浏览窗口,此步骤忽略。(8) 右键,选择NewClass,在Name中输入ResultActivity,点击finish。(9) 双击打开ResultActivity.java,在public class ResultActivity语句后面输入extends Activity。(10) 将鼠标放在报错的Activity之上,选择第一个ImportActivity(android.app)。(11) 打开左侧浏览窗口中的resvaluesstrings.xml,点击窗口下面的strings.xml,输入 result 乘以 计算 退出 关于 注:该步骤的目的是编写字符串,做后续的引用。(12

14、) 编辑布局文件:打开reslayoutmain.xml,删除下图中选中的语句。输入以下代码: 注释:EditText 表示一个可以编辑的文本框控件TextView表示一个显示文本的控件Button表示一个按钮控件android:id=+id/factorOne表示定义该控件的ID,为后续引用android:layout_width=fill_parent表示该控件的宽度为充满屏幕宽度android:layout_height=wrap_content表示该控件的高度为自动匹配android:gravity=center_horizontal表示该控件显示的内容为水平居中android:lay

15、out_alignParentTop=true 表示该控件在父控件的上部 android:layout_below=id/factorOne 表示该控件在factorOne控件的下部(13) 建立第二个布局文件。选择左侧窗口中的reslayout,右键layoutnewfile,在File name中输入result.xml 点击finish。(14) 将main.xml中的文本复制到result.xml中后将中间控件部分的代码删除,如下图所示,如有报错,点击保存便会消失。(15) 在result.xml中添加控件布局。输入以下代码:(16) 对四个控件进行声明:打开activity01.ja

16、va,输入以下代码:privateEditText factorOne;privateEditText factorTwo;privateTextView symbol;privateButton calculate;输入之后如果报错,就在上面输入:import android.widget.*(17) 根据控件的ID来取得代表控件的对象:在activity01.java中的public void onCreate内部输入:如果报错,打开“main.xml”,保存一下main.xml可以解决。(18)为symbol和calculate设置显示的值,接着上面的位置输入代码:symbol.setT

17、ext(R.string.symbol);calculate.setText(R.string.calculate);(19) 最后几行选中的代码和大括号可以删除,也可不删。对按钮设置监听器,在activity01中输入以下代码:Class CalculateListener implements OnClickListener 鼠标放在报错处,点击第一个Import,如下图:鼠标放在另一个报错处CalculateListener点击第一个Add后,得到如下图。(20) 对按钮绑定监听器。在Activity01.java中输入:calculate.setOnClickListener(new

18、CalculateListener();(21) 在Activity01.java中获得两个EditText控件的值,并且将这两个值存放Intent对象当中,使用Intent对象来启动resultActivity。输入如下代码:String factorOneStr = factorOne.getText().toString(); String factorTwoStr = factorTwo.getText().toString(); Intent intent = new Intent(); intent.putExtra(one,factorOneStr); intent.putExt

19、ra(two,factorTwoStr); intent.setClass(Activity01.this, ResultActivity.class); Activity01.this.startActivity(intent); 报错后点击ImportIntent(android.content)。(22) 打开ResultActivity.java,在public class下面一行点击鼠标右键选择sourceOverride/ImplementMethods。在如上窗口中选择onCreate(Bundle),点击OK。(23) 在ResultActivity.java中输入下面两段代码

20、,注意位置。privateTextView resultView;setContentView(R.layout.result); resultView = (TextView)findViewById(R.id.result); Intent intent = getIntent(); String factorOneStr = intent.getStringExtra(one); String factorTwoStr = intent.getStringExtra(two); int factorOneInt = Integer.parseInt(factorOneStr); int

21、factorTwoInt = Integer.parseInt(factorTwoStr); int result = factorOneInt * factorTwoInt; resultView.setText(result + );有2处报错,分别在报错处点击弹出窗口中选择Import。(24) 对ResultActivity进行声明。双击打开左侧窗口中的AndroidManifest.xml,然后点击下部最右边的标签AndroidManifest.xml在activity之后输入:(25) 在Activity01工程上单击右键,选择Run As1 Android Application

22、等待约30s后虚拟机启动完毕,看到如上界面:解锁界面,activity01程序便会自动运行,若不运行,找到该程序双击打开即可。看到了我们设计的界面,在两个框中输入相应的数字,点击计算后可以得到结果。2、设计性实验 (1)按照步骤(1)(6)建立一个新的工程。(2)按照步骤(8)(9)(10)新建一个activity,并进行相应的操作。(3)按照步骤(11)进行字符串的添加,为后续引用做准备,这里主要用到“名字,性别,国籍,籍贯,学校等信息”。(4)按照步骤(12)的提示进行布局,控件的设置,添加一个Button控件。(5)按照步骤(13)(15)建立第二个xml文件,并对布局,控件进行设置,主

23、要用到了五个TextView控件,在xml文件中控件的布局可以参考下图“姓名”的布局,text1为该控件的id,id名称可以更改。性别、国籍、学校、籍贯控件可以按照此格式进行设计布局。另外,从第二个控件开始,需要添加android:layout_below=id/text1 语句设置控件的位置,该语句表示该控件在id为text1的控件下方。(6)按照步骤(16)对button控件进行声明。注意button控件声明语句中的calculate应修改为Button的控件的id。(7)按照步骤(17)使button控件能够显示。注意语句中两处的calculate应修改为Button的控件的id。(8)

24、按照步骤(18)对button控件显示的内容为“王大锤”。注意语句中第一个calculate应修改为Button的控件的id,第二个calculate应修改为设计性实验步骤(3)中已经定义的“王大锤”的名称。(9)按照步骤(19)(20)对button控件设置监听器。注意calculate应修改为Button的控件的id。(10)按照步骤(21)设置intent(跳转)命令。其中中只用到了以下三句(注意Activity01与ResultActivity的名称要分别与第一个java文件的名称和第二个java文件的名称相同):Intent intent = new Intent(); intent

25、.setClass(Activity01.this, ResultActivity.class); (11)按照步骤(22)(23)对新建的activity进行设置。代码只用到(注意other为第二个布局文件的名称):(12)按照步骤(24)对新建的activity进行声明。注意ResultActivity要与第二个java文件名称相同。(13)按照后续步骤进行验证。(14)设计程序运行结果示例:五、实验过程原始记录(数据、图表、计算等)Function Main :public static class PlaceholderFragment extends Fragment private

26、 Button Mybutton; public PlaceholderFragment() Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) Mybutton.setOnClickListener(new MybuttonListener(); return rootView; class MybuttonListener implements OnClickListener Override public void onClic

27、k(View v) Intent intent = new Intent(); intent.setClass(getActivity(), ResultActivity.class); startActivity(intent); / TODO Auto-generated method stub File: result.xml android:layout_width=match_parent android:layout_height=match_parent android:paddingBottom=dimen/activity_vertical_margin android:paddingLeft=dimen/activity_horizontal_margin

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1