《嵌入式系统开发与应用》课件04嵌入式基本输入输出控制.pptVIP

《嵌入式系统开发与应用》课件04嵌入式基本输入输出控制.ppt

  1. 1、本文档共54页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
任务分析 程序代码 #include??config.h?? #define?BEEPCON???0 //??P0.7引脚控制B1,低电平蜂鸣? #define????KEY ??0? /*?定义按键P0.20?*/? int??main(void)? {??uint32??i;?? ???PINSEL0?=?0???//?设置管脚连接GPIO???? ???IO0DIR?=?BEEPCON;?????????//?设置B1控制口为输出 ???while(1)? ???{?? if(?(IO0PINKEY)!=0?) //读按键值,若无键按下,则蜂鸣器不响 { IO0SET?=?BEEPCON;? }???????? else?? //读按键值,若有键按下,则蜂鸣器响 { IO0CLR?=?BEEPCON; } ????? for(i=0;?i1000;?i++);?? }???? return(0);? }? 1、?连接EasyJTAG仿真器和MagicARM2200教学实验开发平台,将MagicARM2200教学实验开发平台上的跳线器JP22短接,JP20断开,最后打开实验箱电源 2、?打开H-JTAG软件,设置H-JTAG的配置。(操作方法详见任务4.1) 3、启动ADS?1.2,使用ARM?Executable?Image for?MagicARM2200工程模板建立一个工程ReadPin_C 4、?在user组中的main.c中编写实验程序代码 5、选用DebugInExram生成目标,然后编译连接工程。 6、单击Debug按钮,启动AXD进行JTAG仿真调试(需要正确设置仿真器,参考附录B)。? 7、全速运行程序,程序将会在main.c的主函数中停止(因为调试选项设置第一次启动运行停在main处)。 8、全速运行程序,当有按键按下时,观察蜂鸣器的状态。 任务实施 当按键按下前,8个LED灭,当按键按下后,控制8个LED亮 技能拓展 项目四 LPC2000基本输入输出控制 * 任务四 LPC2000控制8个LED灯点亮 任务描述 利用LPC2000的GPIO输出清零功能控制MagicARM2200教学实验开发平台上的8个LED灯(连接P2.16~P2.23引脚)点亮。 实验箱上跳线 相关知识点 嵌入式C语言基本知识 嵌入式C语言和标准C语言在数据类型,程序结构等方面基本相同; 扩充了一些关键字,开发环境不同; 下面主要介绍一些嵌入式C语言中的重点、难点和不同于标准C语言的重要知识点。 嵌入式C语言和标准C语言不同点??? 相关知识点 嵌入式C语言基本知识 函数(子程序) 类型说明符 函数名(数据类型 形参1,数据类型 形参2, …) { 函数体; } 函数头 函数体 相关知识点 嵌入式C语言基本知识 C程序是由一个主函数和其它若干函数构成,每个函数实现一定的功能,其中主函数main()是必需的,其它函数被主函数调用或者与其它函数之间互相调用。 ?int??main(void)? {? ? PINSEL0?=?0??? //?设置P0.7引脚连接GPIO??????? IO0DIR?=?BEEPCON;???? //?设置I/O为输出? ??? ?while(1)? { ?? ? ?IO0CLR?=?BEEPCON;??? //?蜂鸣器响??????? DelayNS(15);? ????? ?IO0SET=?BEEPCON;?? //?蜂鸣器不响 ?? ????DelayNS(15);???? }????? ??? return(0);? }? 无参 有参 相关知识点 嵌入式C语言基本知识 函数调用 示例: 调用延时子程序 void DelayMS(unsigned int dly) DelayMS(10); 函数声明(放在整个程序的开头) 示例: void DelayMS(unsigned int dly); 如果被调用程序放在调用程序的前面,则不需要函数声明; 如果被调用程序放在调用程序的后面,则需要函数声明。 相关知识点 GPIO输出清零寄存器(IOxCLR x=0,1,2,3) IOCLR 描述 31:0 输出清零,寄存器的位置1有效。 IO0CLR的位0对应于P0.0…位31对应于P0.31

您可能关注的文档

文档评论(0)

139****1983 + 关注
实名认证
文档贡献者

副教授、一级建造师持证人

一线教师。

领域认证该用户于2023年06月21日上传了副教授、一级建造师

1亿VIP精品文档

相关文档