嵌入式试验要点.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1、实验题目:嵌入式编程环境、LED控制实验 2、实验目的: 熟悉RVDS4.0集成开发环境 熟悉并建立Source Insight阅读和分析程序代码 熟悉tftp、超级终端的使用 了解ARM设备外围电路结构与接口原理 编程实现对嵌入式设备上LED灯的控制 使用RDVS编译、下载、调试一段已有的程序,了解嵌入式开发的基本思想和过程 3、实验内容 阅读UP-CUP210-II型平台硬件文档,熟悉ARM处理器硬件外围接口电路 使用RVDS4.0集成开发环境,编程实现LED流水灯控制。配置并编译工程文件、下载镜像文件到嵌入式控制器中运行 阅读并分析实验源码,修改源码,至少实现一种不同的LED流水灯闪烁方式。 4、实验环境 硬件:嵌入式实验平台,PC机Pentium 500以上, 硬盘40G以上,内存大于static void GPIO_Init(void) /* GPIO初始化 */ { GPH0CON = GPH0CON (~(0xfff 0)) | (0x111 0);//先求~(0xfff0)等于0x000,在和GPH0CON的值进行与运算得出GPH0CON的低16位清零,再和0x111进行或运算,得出GPH0CON的低16位为0001 0001 0001 ,其他位保持不变;其功能是把GPH0_0~3设置成输出。 GPH0DAT = GPH0DAT | (0x7 0);//先求(0x7 0)为0111,在和GPH0DAT的值进行或运算,得出寄存器GPH0DAT的低四位为0111,其他位保持不变;功能是把GPH0_0~3输出高电平,即关闭LED灯 GPD1CON = GPD1CON (~(0xff 12)) | (0x11 12);//求~(0xff12)等于0x00fff,在和GPD1CON的值进行与运算得出GPD1CON的17~24位清零,低16位保持不变,再求(0x11 12)的结果0x11000进行或运算,得出GPD1CON的17~24位为0001 0001,其他位保持不变;其功能是把GPD1_3~4设置成输出。 GPD1DAT = GPD1DAT | (0x3 3);//先求(0x3 3)为11000,在和GPD1DAT的值进行或运算,得出寄存器GPH0DAT的4~5位为11,其他位保持不变;功能是把GPD1_3~4输出高电平,即关闭LED灯 } static void LedOn(unsigned int intNum)//函数LedOn的传参为intNum { if(intNum = 2)//如果intNum小于或等于2,进行下面的函数,否者跳出下面的函数 { GPD1DAT = (GPD1DAT | (0x3 3));//关闭GPD1_3~4控制的LED灯 GPH0DAT = (GPH0DAT | (0x7 0)) ~(0x1 intNum);// 当intNum=0时,0x1左移0位并取反为1110,再与GPH0DAT | (0x7 0)相与,即将第1位清零,点亮第1个LED灯;当intNum=1时,0x1左移1位并取反为1101 ,再与GPH0DAT | (0x7 0)相与,即将第2位清零,点亮第2个LED灯;当intNum=2时,0x1左移2位并取反为1011 ,再与GPH0DAT | (0x7 0)相与,即将第3位清零,点亮第3个LED灯。 } else if(intNum = 4)//intNum小于或等于2,进行下面的函数,否者跳出下面的函数 { GPH0DAT = (GPH0DAT | (0x7 0));//关闭GPH0_0~3控制的LED灯 GPD1DAT = (GPD1DAT | (0x3 3)) ~(0x1 intNum);//当intNum=3时,0x1左移3位并取反为0111 ,再与GPD1DAT | (0x3 3)相与,即将第4位清零,点亮第4个LED灯; 当intNum=4时,0x1左移4位并取反为0000 ,再与GPD1DAT | (0x3 3)相与,即将低4位清零,关闭4个LED,点亮第5个LED。 } } 函数LedOn….. 修改后的代码: static void LedOn(unsigned int intNum) { unsigned zz,i,j; for(zz= 0; zzintNum; zz++) { for (i = 0; i 3; i++) { GPD1DAT = (GPD1DAT | (0x3 3)); GPH0DAT = (GPH0DAT | (0x7 0)) ~(0x1 i); delay_LedOn

文档评论(0)

LOVE爱 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档