


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、重庆交通大学实验报告班级:计科专业2014级4班学号:631406010409姓名:董冈I实验项目名称:蜂鸣器控制实验实验项目性质:设计性(验证性)实验所属课程:嵌入式程序设计实验室(中心):语音楼60102指导教师:许强实验完成时间:2016年 12月16日教师评阅:实验目的明确;操作步骤正确;设计文稿(表格、程序、数据库、网页)符合要求;保存路径正确;实验结果符合要求实验分析总结全面;实验报告规范;签名:年 月曰实验成绩:一、实验目的(1) 掌握LPC2200(for MagicARM2200)专用工程模板的使用;(2) 能够在MagicARM2200-S上运行基于QOS-II操作系统的程
2、序;(3) 掌握基于yC/OS-ll操作系统的用户程序的编写格式。二、实验主要内容及原理1. 实验内容建立两个 Q/OS-II的任务,一个任务用于检测 KEY1按键输入(P0.20 口的输入),这里就称之 为按键检测任务,另一个任务用于控制蜂鸣器,这里就称之为蜂鸣器控制任务。蜂鸣器控制任务平 时处于等待状态,当按键检测任务检测到有效按键输入时,立即唤醒蜂鸣器控制任务。2. 实验原理在MagicARM2200-S上运行基于 Q/OS-II操作系统的程序的具体操作步骤如下。(1) 安装 ADS 1.2运行在ADS目录下Setup.exe,开始安装ADS1.2 。(若已安装过,此步省略)按照安装软件
3、的提示安装,与其它软件安装操作方法基本一致。(2) 了解 ADS 1.2使用 ADS1.2 建立工程,编译链接设置,调试操作等,更详细的使用方法参考 ADS1.2的在线帮助文档或相关资料。 (若已熟悉 ADS 1.2 ,此步省略 )(3) 连接 EasyJTAG 仿真器和 MagicARM2200-S将EasyJTAG仿真器的25针接口通过并口延长线与 PC机的并口连接,先给MagicARM2200-S 实验箱供电,再将 EasyJTAG 仿真器的 20 针接口通过 20 PIN 连接电缆 接到MagicARM2200-S 的J3上。(若已连接好,此步省略 )(4) EasyJTAG 仿真器的
4、安装与应用若已安装过,此步省略。(5) 添加工程模板若已添加过,此步省略。(6) 建立项目目录并添加 Q/OS 2.52 源代码和移植代码建立一个项目目录,比如 uCOS-ll。将pC/OS 2.52 源代码Source(目录)复制到项目目录,将移植代码 ARM( 目录 ) 复制到项目目录。将移植的 PC 服务代码 Arm_Pc 复制到项目目录,使用移植的 PC 服务代码,就可以通过串口向PC发送显示数据(由EasyARM 软件的DOS字符窗口显示)。pC/OS 2.52 源代码可以从参考文献 4 的附带光盘上获得。移植代码 ARM 和移植的 PC 服务代码 Arm_Pc 可以从 MagicA
5、RM2200-S 的产品配套光盘上获得。(7) 用工程模板建立工程使用 LPC2200(for MagicARM2200)专用工程模板建立工程 (比如“ ARM Executable Imagefor UCOSII(MagicARM2200) ”工程模板 ),工程存放路径为项目目录下,建立源文件并加入工程,然后编写程序代码。更改Os_cfg.h文件,配置yC/OS-ll操作系统。编译链接工程,若有错误,则修改程序,然后再次编译。(8) 仿真调试工程正确设置 MagicARM2200-S 的跳线;启动 AXD 进行仿真调试。三、实验过程简述1. 实验步骤(1) 连接 EasyJTAG 仿真器和
6、MagicARM2200-S ,然后安装 EasyJTAG 仿真器的驱动程序 (若 已经安装过,此步省略 )。(2) 为ADS1.2 增加LPC2200(for MagicARM2200)专用工程模板(若已增加过,此步省略 )。(3) 建立一个项目目录uCOS-ll,添加Q/OS 2.52 源代码和移植代码。还要将移植的PC服务代码Arm_Pc 复制到项目目录uCOS-ll下。(4) 启动 ADS 1.2,使用 ARM Executable Image for UCOSII(MagicARM22OO)工程模板建立一个工程 GPlO ,工程存储在 uCOS-ll 目录下。(5) 打开工程窗口 u
7、ser 组中的 main.c 文件,编写实验程序并保存。(6) 根据程序设计来更改 Os_cfg.h 文件,配置 yC/OS-ll 操作系统。 (对于本实验, yC/OS-ll 的 配置使用模板默认设置即可 )旦区| 选用DebuglnExram生成目标,如图3.5所示,然后编译链接工程。:囲 GP IO- Mcrp« DuglnExEsm胆&選皐巴D e bunExRmD 电 bu 亂 MhiipFl 直三 h RelMhip RelOutChip1+ 口 *. h审三曰arm<£ 03_cpu_a. s宅 L.甘Os_cpu_c. c 审三曰3贏 即卜 S
8、3 tareet. c样町IBQ. s*<i“ 冏 Startup, x爭+ Ci uC/OS-IIr - Qus&r审02 main, c2 127125 filesLSK BE图3.5选择生成目标(8) 将 MagicARM2200-S的 JP7、JP11 跳线短接,JP4、JP13 跳线断开。注意:JP7与IDE硬盘/CF卡电路的JP13跳线复用P0.7 口 ; JP11与PS/2键盘鼠标接口的 JP4_K_CLK 跳线复用 P0.20 口。(9) 选择【Project】-【Debug】,启动AXD进行JTAG仿真调试(需要正确设置仿真器,参考产品配套光盘附带文档ADS集成
9、开发环境及仿真器应用)。注意:使用DebugInExram 生成目标时,使用片外RAM进行仿真调试,在AXD中设置仿真 器参考如图3.6所示。(10) 若JTAG连接出错,或AXD主窗口没有显示startup.s 源程序,请按产品配套光盘附带文 档ADS集成开发环境及仿真器应用介绍的方法进行处理。(11) 全速运行程序,程序将会在 ma in .c的主函数中停止(因为mai n函数起始处默认设置有断 点)。(12)全速运行程序,然后按下/放开KEY1按键,监听蜂鸣器是否蜂鸣。图3.6片外RAM调试的仿真器设置(13) 当仿真调试通过后关闭 AXD,在ADS 1.2集成开发环境中选用 RelOu
10、tChip 生成目标,然 后编译链接工程。(14) 将MagicARM2200-S的 JP7、JP11 跳线短接,JP4、JP13 跳线断开。(15) 选择【Project】-【Debug】,启动AXD进行JTAG仿真调试。此时EasyJTAG仿真器 将会把程序下载到片外 FLASH上(需要正确设置仿真器)。注意:使用RelOutChip 生成目标时,使用片外FLASH进行仿真调试(或固化程序),在AXD中 设置仿真器参考如图3.7所示。图3.7片外FLASH调试的仿真器设置(16) 将JP1跳线断开,然后按 MagicARM2200-S 上的RST复位键,观察程序是否能脱机运 行。(17)
11、实验结束后,在AXD中设置仿真器为片外 RAM 调试方式的设置,以便于后面实验的正 确操作。2. 实验参考程序蜂鸣器控制实验的参考程序见程序清单3.8、程序清单3.9和程序清单3.10。程序清单3.8蜂鸣器控制实验参考程序一main()函数#include "config.h"#include "stdlib.h"#define KEY1 (1 << 20) /* P0.20 为 KEY1 */定义用户任务0的堆栈长度定义用户任务0的堆栈定义用户任务1的堆栈#define BEEP (1 << 7) /* P0.7为蜂鸣器 */#
12、define TaskStkLengh 64 /Define the Task0 stack lengthOS_STK TaskStk0TaskStkLengh; /Define the Task0 stack OS_STK TaskStk1TaskStkLengh; /Define the Task1 stack void Task0(void *pdata); /Task0任务 0void Task1(void *pdata); /Task0任务 1int main(void)OSInit ();OSTaskCreate (Task0,(void *)0, &TaskStk0Tas
13、kStkLengh - 1, 2); OSStart ();return 0;程序清单 3.9 蜂鸣器控制实验参考程序蜂鸣器控制任务void Task0(void *pdata)pdata = pdata;TargetInit ();PINSEL0 = PINSEL0 & 0xffff3fff; / 管脚选择模块初始化PINSEL1 = PINSEL1 & 0xfffffcff;IOODIR &=KEY1;/设置KEY1的控制I/O 为输入IO0DIR |= BEEP; / 设置蜂鸣器为输出IOOSET = BEEP;OSTaskCreate (Task1,(void
14、*)O, &TaskStk1TaskStkLengh - 1, 5); for (;)OSTaskSuspend(OS_PRIO_SELF);IOOCLR = BEEP;OSTimeDly(OS_TICKS_PER_SEC / 8);IOOSET = BEEP;OSTimeDly(OS_TICKS_PER_SEC / 4);IOOCLR = BEEP;OSTimeDly(OS_TICKS_PER_SEC / 8);IOOSET = BEEP;OSTimeDly(OS_TICKS_PER_SEC / 4);程序清单 3.1O 蜂鸣器控制实验参考程序按键检测任务void Task1(voi
15、d *pdata) pdata = pdata; /* 避免编译警告 */ for (;)延时 2O 毫秒 */延时 2O 毫秒 */OSTimeDly(OS_TICKS_PER_SEC / 5O); /*if (IOOPIN & KEY1) != O) continue;OSTimeDly(OS_TICKS_PER_SEC / 5O); /*if (IOOPIN & KEY1) != O) continue;OSTaskResume(2);while (IOOPIN & KEY1) = 0)OSTimeDly(OS_TICKS_PER_SEC / 50); /* 延时 20 毫秒 */四、实验结果实验结果截图:二讪Knt* iduiZOtTflPb NW 血! 曲蚊町Hrnr 砂 IIMDC iVOi; i sjif.ajuHLm.a Ta E &£«. 1 m immw” fllDOT0ur#l!41 i丄畝 *hTI Ei vua?TRLa<Tii -jFDTfl-JGnlKHL G.C v TDMA.Tn2iL.>M CU ! -r£M*i 昨 k>i HTi r©WW<tt jump- MaT iStTh TM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 计算器产品召回与质量控制考核试卷
- 铜压延加工中的质量控制体系考核试卷
- 酒吧服务酒品陈列与展示技巧考核试卷
- 绿色交通与城市出行方式的投资考核试卷
- 保健医急救知识培训
- 深静脉感染预防控制要点
- 妊娠期甲状腺疾病诊治
- 二手交易电商平台信用评价与信用评分模型构建报告
- 绿色供应链管理在制造业中的绿色供应链与绿色供应链管理培训课程开发报告
- 盐湖提锂技术2025年成本优化与产能扩张产业竞争力研究报告
- 西方美术史试题及答案
- 七年级数学下学期期末测试卷(1)(学生版+解析)-2025年七年级数学下学期期末总复习(北师大版)
- 医院员工手册管理制度
- 校园短剧创作与演出指导行业跨境出海项目商业计划书
- 泉州水务集团有限公司招聘考试真题2024
- 东航客运岗位面试题目及答案
- 2025年北京丰台区九年级中考二模英语试卷试题(含答案详解)
- 新生儿收治流程规范与实施
- T/CBMCA 017-2021建筑用覆膜钢板
- 《重症监护病房的临终关怀和姑息治疗指南》解读
- 2025年初中地理会考试卷
评论
0/150
提交评论