




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
嵌入式系统原理与应用实验报告专业班级:物联1301姓名:齐亨 学号:13516110组员:齐亨实验日期:2016年4月19日实验名称:KL25入门实验一、 实验目的1、熟悉FRDM-KL25开发板的硬件环境,掌握其使用方法及调试方式。2、掌握K i n e t i s D e s i g n S t u d io(以下简称K D S)开发环境的使用。3、以G P I O为例,理解底层驱动的含义与编程方法。2、 实验设备微型计算机,F R D M-K L 2 5开发板,M i c r o U S B线。二、 实验内容1、按附录1的内容导入第一个样例工程,运行程序,掌握F R D M-K L 2 5的硬件构成和使用方法,K D S的使用和调试方法。2、观察小灯闪烁,调整延时的长短,观察小灯的变化。3、根据电路图,修改程序,加入另外两个小灯的控制程序,使R G B小灯交替闪烁。三、 实验过程1、如图所示,将M i c r o U S B线缆连接到F R D M-K L 2 5实验板的S D A口,另一头接入P C的任意U S B口。一般会自动安装驱动,如果没有,请运行C:F r e e s c a l eK D S_v 3p e m i c r o目录底下P E D r i v e r s_i n s t a l l文件。 2、打开P C的设备管理器(计算机上右键属性,弹出窗口左侧,设备管理器),连接正常的话能看到下图的两个红框里的信息。1、导入工程在P r o j e c t E x p l o r e r上单击右键,选择I m p o r t.(或者在点击F i l e菜单下拉选择)弹出的对话框中展开G e n e r a l,选择E x i s t i n g P r o j e c t s i n t o W o r k s p a c e,点击N e x t 弹出的对话框中选择B r o w s e r,选择实验1的工程文件夹,如果保留原工程,可以勾上下方的C o p y P r o j e c t i n t o W o r k s p a c e,这样可以把整个工程拷贝到环境的工作文件夹底下。接着点击F i n i s h,就完成了整个工程的导入。 2、调试工程新建调试文件,把程序下载到板子上前,需要根据使用的调试硬件建立调试文件,才能下载程序。下面介绍F R D M-K L 2 5板子自带O p e n S D A调试器的调试文件的建立方法。点击K D S上方的虫子(D e b u g按钮)右侧的倒三角,下拉选择D e b u g C o n f i g u r a t i o n s. 弹出的对话框中选择G D B P E m i c r o I n t e r f a c e D e b u g g i n g,在上面点击右键,选择N e w,新建一个配置 可以看到右侧会出现该配置的相应选择,N a m e中的配置名称默认工程的名称,可以自己更换。选择D e b u g g e r选项卡,在I n t e r f a c e框中下拉,选择最后一项O p e n S D AE m b e d d e d D e b u gU S B P o r t,在连接到板子的情况下,P o r t后面的对话框里会自动检测到相应的端口和I D。(没有连接的可连接后点击旁边的R e f r e s h)接着点击P o r t下方的S e l e c t D e v i c e,选择要调试的芯片型号。这里选择N x pK L 2 xK L 2 5 Z 1 2 8 M 4 最后完成的配置如下图所示点击右下侧的A p p l y按钮再点击D e b u g按钮,就可进入D e b u g界面。下图是各主要窗口及功能按钮的介绍。 外设寄存器窗口设置,K D S的片内外设寄存器窗口是通过插件的形式实现的,3.0后版本默认集成该插件,但需要自己选择芯片型号才能生效。点击选中E m b s y s R e g i s t e r s窗口,点击右侧的黑色扳手图标,弹出的窗口中选择M L 2 5 Z 4,点O K返回,就可以看到各种片内外设的寄存器了 。3、工程中加入自定义文件夹为全工程组织明晰,这里采用文件夹的方式组织。为了使编译环境能够找到文件夹中的文件,需要将文件夹加入编译路径。在工程上右键P r o p e r t i e s,在弹出的窗口中点击展开C/C+B u i l d,选择S e t t i n g,右侧窗口选择C r o s s A R M G N U C o m p l i e rI n c l u d e r,右边就是当前工程编译时会查找的文件路径。 为了工程文件能够在其它电脑还能使用,最好采用相对路径或工作空间(前提是工程要放在工作空间目录下)的路径。下面是相对路径的写法。$P r o j D i r P a t h就是当前工程对应的文件夹。四、 编程1、 程序流程图开始头文件声明初始化子程序 进度循环 等待函数调用结 束否发送给指示灯显示命令2、主要代码段及解释/说明见工程文件夹下的Doc文件夹内Readme.txt文件/=#include includes.h /包含总头文件int main(void)/1. 声明主函数使用的变量uint_32 mRuncount; /主循环计数器/2. 关总中断 DISABLE_INTERRUPTS;/3. 初始化外设模块 /GPIO基本编程步骤: /(1)计算给出PORTB9的引脚控制寄存器地址 /PORTB端口的引脚控制寄存器基地址为0x4004A000u(后缀u表示无符号数) volatile uint_32 *portB_ptr = (uint_32*)0x4004A000u; /PORTB9的引脚控制寄存器地址=基地址+偏移量 volatile uint_32 *portB_PCR_9 = portB_ptr + 9; /(2)计算给出PORTB的数据方向寄存器、输出反转寄存器地址 /PORTB端口(作为GPIO功能)的基地址为0x400FF040u volatile uint_32 *gpioB_ptr = (uint_32*)0x400FF040u; /PORTB的数据方向寄存器地址=基地址+偏移量 volatile uint_32 *portB_PDDR=gpioB_ptr+5; /PORTB的输出寄存器地址=基地址+偏移量 volatile uint_32 *portB_PDO=gpioB_ptr+0; /PORTB的输出反转寄存器地址=基地址+偏移量 volatile uint_32 *portB_PTOR=gpioB_ptr+3; /(3)设置PORTB9引脚为GPIO引脚,即令相应引脚控制寄存器的10-8位 /(MUX)字段为001 /*portB_PCR_9=0x00000100; *portB_PCR_9=0b00000000000000000000000100000000; /(4)通过PORTB的输出寄存器(给蓝色小灯的寄存器)赋初值1,保证定义为输出时为暗 *portB_PDO |= (19); /(5)通过PORTB的方向寄存器,定义PORTB9引脚输出 *portB_PDDR |= (19); /(6)通过PORTB的输出寄存器给蓝色小灯赋初值(0-亮) /(以下供单步调试观察) *portB_PDO &= (19); /亮 *portB_PDO |= (19); /暗 *portB_PDO &= (19); /亮 *portB_PDO |= (1=5) /单步调试用,若直接运行, 比较的数可以是一个大数,如556677 mRuncount=0; *portB_PTOR|= (19); /PTB9(蓝灯)取反 /以下加入用户程序- /end_for /主循环结束= return 0;五、 实验问答1、 FRDM-KL25 开发板有哪些主要元器件? 答:单片机插座 晶振 电容 复位电路 面包板 插针 以及下载线。2、 FRDM-KL25 是使用何种调试接口进行调试的? 答:Debug调试。六、 实验小结通过本次实验,我深刻了解了FRDM-KL25 开发板的硬件环境,并且掌握了该开发板的使用方法和调试方式,熟悉了编写该程序所用的C语言代码。实验二: GPIO实验1 实验目的1. .掌握KDS的工程文件组织框架2. 掌握GPIO基本编程步骤3. 掌握使用结构化开发底层驱动的方法4. 了解KDS链接文件2 实验设备微型计算机,FRDM-KL25开发板,Micro USB线3 实验步骤 硬件:嵌入式实验平台一套、仿真器一个、PC 机一台。 软件:Windows 98/2000/NT/XP 操作系统、仿真器驱动程序、ADS 开发软件一套 控制嵌入式实验箱上的LED 轮流点亮。 三、概要设计 S3CRRB0X 芯片上共有71个多功能I/O 引脚,他们分别为7 组I/O 端口: 2个9 位I/O 端口(端口E 和F) 2个8 位I/O 端口(端口D 和G) 1个16 位I/O 端口(端口C) 1个10 位I/O 端口(端口A) 1个11 位I/O 端口(端口B) 每组端口都可以通过软件配置寄存器来满足不同系统合设计的需要。在运行主程序之前,必须先对每一个用到的引脚的功能进行设置。如果某些引脚的附庸功能没有使用,那么可以先将该引脚设置为I/O 口。 S3C44B0X 芯片与端口相关的寄存器: (1)端口控制寄存器(PCONAG):在S3C44B0X 芯片中,大部分引脚是使用多路复用的,所以要确定每个引脚的功能。PCONn(端口控制寄存器)能够定义引脚功能。如果PG0PG7 作为掉电模式下的唤醒信号,那么这些端口必须配置成中断模式。 (2)端口数据寄存器(PDATAG):如果端口定义为输出口,那么输出数据可以写入PDATn 中相应的位;如果端口定义为输入口,那么输入数据可以从PDATn 相应的位中读入。 (3)端口上拉寄存器(PUPCG):通过配置端口上拉寄存器,可以使该组端口与上拉电阻连接或断开。当寄存器中相应位配置为0 时,该引脚接上拉寄存器;当寄存器中相应位配置为1 时,该引脚不接上拉电阻。 (4)外部中断寄存器(EXTINT):通过不同的信号方式可以使8个外部中断被请求。EXTINT 寄存器可以根据外部中断的需求,将中断触发信号配置为低电平触发,高电平触发,下降沿触发,上升沿触发和边沿触发几种方式。 四、详细设计 1启动ADS1.2,使用ARM Execuatable Image 工程模板新建一个工程; 2添加两个组INC 和SRC; 3将INC 文件夹下所有文件添加到组INC 中; 4将SRC 文件夹下所有文件添加到组SRC 中; 5建立源文件test5.C,编写实验程序,添加到工程中; 6编译链接选项的设置同前面实验; 7编译链接工程,点击Debug 按钮,启动AXD 进行调试; 8连续点击step in 按钮,单步运行程序。 9理解并掌握本实验原理及程序。 五、调试过程,设计技巧及体会 8个LED灯依次实现:全部熄灭后,再全部点亮,依次逐个点亮,依次逐个叠加,依次逐个递减,两个靠拢后分开从两边叠加后递减。 蜂鸣器定时器0.5s定时,实现蜂鸣器每隔1s,响一次0.5s。 通过这次试验,我学会了ADS硬件仿真的设置和调试,实验板的连接,建立C语言工程,掌握了I/O端口相关寄存器的使用。实验过程中遇到一些问题如下载蜂鸣器定时控制后,蜂鸣器没有响,由于没有接P0.7的跳线造成的。每次重新下载程序编译过程中,须要进行Remove Object code,再重新make检测,以免产生错误。 六、附录: 1 流水灯实验 #include config.h /* LED8LED1 8个LED分别由P1.25P1.18控制 */ const uint32 LEDS8 = (0xFF 0; dly-) for (i=0; i50000; i+); * 函数名称 :main() * 函数功能 :流水灯显示实验。 * 调试说明 :连接跳线JP12至LED8LED1。 */ /* 流水灯花样,低电平点亮,注意调用时候用了取反操作 */ const uint32 LED_TBL = 0x00, 0xFF, / 全部熄灭后,再全部点亮 0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80, / 依次逐个点亮 0x01, 0x03, 0x07, 0x0F, 0x1F, 0x3F, 0x7F, 0xFF, / 依次逐个叠加 0xFF, 0x7F, 0x3F, 0x1F, 0x0F, 0x07, 0x03, 0x01, / 依次逐个递减 0x81, 0x42, 0x24, 0x18, 0x18, 0x24, 0x42, 0x81, / 两个靠拢后分开 0x81, 0xC3, 0xE7, 0xFF, 0xFF, 0xE7, 0xC3, 0x81 / 从两边叠加后递减 ; int main (void) uint8 i; PINSEL1 = 0x00000000; / 设置管脚连接GPIO IO1DIR = LEDS8; / 设置LED控制口为输出 while
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年温州永嘉县茗岙乡卫生院招聘劳务派遣人员1人模拟试卷及答案详解(典优)
- 2025安徽芜湖经济技术开发区公办幼儿园招聘26人模拟试卷(含答案详解)
- 2025昆明市公安局公开招聘文职辅警(16人)模拟试卷及参考答案详解一套
- 2025贵州剑河县农村集体经济组织选聘职业经理人(总经理)17人考前自测高频考点模拟试题附答案详解(考试直接用)
- 2025辽宁锦州医科大学开展“锦医英才计划”教学名师遴选工作考前自测高频考点模拟试题及一套答案详解
- 2025年河北承德平泉市公开招聘社区工作者97人模拟试卷及答案详解(夺冠系列)
- 2025年甘肃省兰州大学数学与统计学院人才招聘考前自测高频考点模拟试题及答案详解(有一套)
- 2025年四川省成都市青白江区七所“两自一包”公办学校招聘教师(152人)考前自测高频考点模拟试题及答案详解(历年真题)
- 2025年温州南白象街道社区卫生服务中心面向社会公开招聘1人模拟试卷及完整答案详解
- 2025江苏镇江市卫生健康委员会所属镇江市第一人民医院招聘工作人员50人模拟试卷及答案详解(易错题)
- 《国有资产评估管理》课件
- 山东省地震安全性评价收费项目及标准
- 复旦大学入学教育考试答案
- 中国马克思主义与当代-第三讲课件
- 拼多多民事起诉状模板
- 冠心病合并急性心律失常的紧急处理
- 2022-2023学年湖南省部分学校高三下学期第一次联考英语试卷含详解
- 飞利浦品牌形象指南2008基础原则
- 结胸证-伤寒学
- 第一季度胸痛中心典型病例分析会
- 新大遥感地学分析讲义第7章 植被遥感
评论
0/150
提交评论