单片机应用技术项目教程项目二任务课件1.ppt

上传人(卖家):三亚风情 文档编号:3437681 上传时间:2022-08-31 格式:PPT 页数:33 大小:1.04MB
下载 相关 举报
单片机应用技术项目教程项目二任务课件1.ppt_第1页
第1页 / 共33页
单片机应用技术项目教程项目二任务课件1.ppt_第2页
第2页 / 共33页
单片机应用技术项目教程项目二任务课件1.ppt_第3页
第3页 / 共33页
单片机应用技术项目教程项目二任务课件1.ppt_第4页
第4页 / 共33页
单片机应用技术项目教程项目二任务课件1.ppt_第5页
第5页 / 共33页
点击查看更多>>
资源描述

1、项目二 键盘与显示系统设计任务1 流水灯系统设计任务内容 组装一个简易流水灯显示器,单片机外接8个发光二极管,要求系统上电后,8个发光二极管依次循环点亮。学习目标1.掌握C51程序循环结构及循环语句的使用;2.了解单片机存储结构,能够在Keil软件中查看变量,掌握程序调试的基本方法;3.学会单片机控制LED显示器的电路设计及控制方法。知 识 点知识点一 单片机存储结构知识点二 C51中的循环结构与循环语句知识点三 C51中的辅助控制语句知识点四 C51中的函数知识点一 51单片机存储结构 AT89C52单片机共有4个存储空间:片内程序存储器、片外程序存储器、片内数据存储器和片外数据存储器。其典

2、型结构如图2.1所示。(a)程序存储器地址分配 (b)数据存储器地址分配 图2.1 AT89C52存储器结构图 程序存储器用于存储程序或表格,片内、片外统一编址,如图2.1(a)所示。其中,当引脚 时,使用8KB片内ROM(0000H0FFFH);当引脚 时,使用64KB片外ROM(0000HFFFFH)。知识点一 51单片机存储结构 数据存储器用于暂存数据和运算结果,也有片内和片外之分,如图2.1(b)所示。片内RAM由内部RAM与专用寄存器(SFR)构成,共256B(8位地址寻址)。其中,内部RAM低128B又分为工作寄存器组(00H1FH)、位寻址区(20H2FH)、通用RAM区(30H

3、7FH)三部分,内部RAM的高128字节只能间接寻址。片外64KB 数据存储器,16位地址寻址,地址范围是0000HFFFFH。知识点一 51单片机存储结构 针对51系列单片机应用系统存储器的结构特点,KEIL C51编译器把数据的存储区域分为6种:data、bdata、idata、xdata、pdata、code,如表2.1所示。表表2.1 C512.1 C51语言中变量的存储区域语言中变量的存储区域知识点一 51单片机存储结构存储区域存储区域说说 明明data片内片内RAM的低的低128B,可直接寻址,访问速度最快,可直接寻址,访问速度最快bdata片内片内RAM的低的低128B中的位寻址

4、区中的位寻址区(20H2FH),即可字节寻址,也可以位寻址,即可字节寻址,也可以位寻址idata片内片内RAM(256B,其中低,其中低128B与与data相同相同),只能间接寻址,只能间接寻址xdata片外片外RAM(最多最多64kB)pdata片外片外RAM中的中的1页或页或256B,分页寻址,分页寻址code程序存储区程序存储区(最多最多64kB)有了存储区域的概念后,变量的定义格式变为:数据类型 存储区域 变量名称 其中,存储区域用于用户指定变量的存储区域,表示该项内容可缺省。当该项缺省时,变量存储区域由KEIL C51编译器的存储模式决定。存储模式用于决定没有明确指定存储类型的变量、

5、函数参数等的缺省存储区域。KEIL C51编译器提供的存储模式共有3种:Small,Compact,large。知识点一 51单片机存储结构 (1)Small模式 没有指定存储区域的变量、参数都缺省放在data区域内。优点是访问速度快,缺点是空间有限,只适用于小程序。(2)Compact模式 没有指定存储区域的变量、参数都缺省存放在pdata区域内。具体存放在哪一页可由P2口指定,在STARTUP.A51文件中说明,也可用pdata指定。优点是空间比Small模式宽裕,速度比Small模式慢,比large模式要快,是一种中间状态。(3)large模式 没有指定存储区域的变量、参数都缺省存放在x

6、data区域内。优点是空间大,可存变量多,缺点是速度较慢。知识点一 51单片机存储结构知识点一 51单片机存储结构KEIL C51编译器数据存储区域设置方法知识点二 循环结构与循环语句 在程序设计中经常会遇到需要重复执行的操作,如延在程序设计中经常会遇到需要重复执行的操作,如延时、累加、累乘、数据传递等,利用循环结构来处理各类时、累加、累乘、数据传递等,利用循环结构来处理各类重复操作既简单又方便。重复操作既简单又方便。C51 语言中提供了语言中提供了3种语句来实现循环结构,分别是种语句来实现循环结构,分别是while 语句、语句、do-while 语句和语句和for 语句。语句。1.while

7、 1.while 语句语句 while 语句的一般形式:语句的一般形式:其中,其中,“表达式表达式”可以是可以是C51语言中任意合法的表达语言中任意合法的表达式,其作用是控制循环体是否执行;式,其作用是控制循环体是否执行;“循环体循环体”是循环语是循环语句中需要重复执行的部分,可以是一条简单的可执行语句,句中需要重复执行的部分,可以是一条简单的可执行语句,也可以是用大括号括起来的复合语句。也可以是用大括号括起来的复合语句。while 语句的执行过程如图语句的执行过程如图2.3所示。所示。while 语句的特点语句的特点是:是:。图图2.3 while 语句的执行过程语句的执行过程(1)要定义循

8、环控制变量。要定义循环控制变量。(2)要确定循环变量的初值、终值、增量要确定循环变量的初值、终值、增量(步长步长)。(3)要保证每执行一次循环体,循环控制变量的值要保证每执行一次循环体,循环控制变量的值按增量向终值靠近一些,即要避免死循环。按增量向终值靠近一些,即要避免死循环。while while 语句的使用注意事项语句的使用注意事项2.do-while 2.do-while 语句语句 do-while 语句的一般格式:语句的一般格式:其中,其中,“表达式表达式”可以是可以是C51语言中任意合法语言中任意合法的表达式,其作用是控制循环体是否执行;的表达式,其作用是控制循环体是否执行;“循循环

9、体环体”可以是可以是C51语言中任意合法的可执行语句;语言中任意合法的可执行语句;最后的最后的“;”不可丢,表示不可丢,表示do-while 语句结束。语句结束。do-while 语句的执行过程如图语句的执行过程如图2.4所示。所示。do-while 语句的特语句的特点是:点是:。图图2.4 do-while 语句的执行过程语句的执行过程3.for 3.for 语句语句 for 语句的典型应用形式:语句的典型应用形式:for语句的一般形式:语句的一般形式:其中,其中,“表达式表达式1”、“表达式表达式2”、“表达式表达式3”可以是可以是C51语言中任意合法的表达式,语言中任意合法的表达式,3个

10、表达式之间用个表达式之间用“;”隔开,其作用隔开,其作用是控制循环体是否执行;循环体可以是是控制循环体是否执行;循环体可以是C51语言中任意合法的语言中任意合法的可执行语句。可执行语句。for 语句的执行过程如图语句的执行过程如图2.5所示。所示。图图2.5 for语句的执行过程语句的执行过程(1)for 语句中的表达式可以部分或全部省略,但两个语句中的表达式可以部分或全部省略,但两个“;”不不可省略。可省略。例如:例如:3个表达式均被省略,因缺少条件判断,循环将会无限制个表达式均被省略,因缺少条件判断,循环将会无限制地执行,形成无限循环地执行,形成无限循环(通常称为通常称为)。在使用在使用f

11、or语句时应注意以下两点语句时应注意以下两点:(2)所谓省略,只是在所谓省略,只是在for 语句中的省略。实际上是把所需表达语句中的省略。实际上是把所需表达式放在式放在for的循环体中或的循环体中或for的语句前面。下面几种的语句前面。下面几种for 语句的表语句的表达方式是等价的。达方式是等价的。表达方式表达方式1(正常情况正常情况):sum=0;for(i=1;i=100;i+)sum+=i;表达方式表达方式2(省略表达式省略表达式1):sum=0;i=1;for(;i=100;i+)sum+=i;表达方式表达方式3(省略表达式省略表达式3):sum=0;for(i=1;i=100;)su

12、m+=i;i+;表达方式表达方式4(省略表达式省略表达式1和表达式和表达式3):sum=0;i=1;for(;i=100;)sum+=i;i+;4.4.几种循环的比较几种循环的比较 (1)3种循环可相互替代处理同一问题。种循环可相互替代处理同一问题。(2)do-while循环至少执行一次循环体,而循环至少执行一次循环体,而while及及for 循环则不然。循环则不然。(3)while 及及do-while 循环多用于循环次数不可循环多用于循环次数不可预知的情况,而预知的情况,而for 循环多用于循环次数可以预循环多用于循环次数可以预知的情况。知的情况。5.5.循环的嵌套循环的嵌套 在编写程序时

13、,嵌套循环的在编写程序时,嵌套循环的,使,使程序层次分明,例如:程序层次分明,例如:for(i=1;i=10;i+)/外层循环外层循环 for(j=1;j=10;j+)/中层循环中层循环 for(k=1;k=10;k+)/内层循环内层循环循环语句循环语句 在一个循环体内又完整地包含了另一个循环称为在一个循环体内又完整地包含了另一个循环称为。循环的嵌套可以有多层,但每一层循环在逻辑上必。循环的嵌套可以有多层,但每一层循环在逻辑上必须是完整的。须是完整的。(1)内外循环的循环变量不应相同。内外循环的循环变量不应相同。(2)内外循环不应交叉。内外循环不应交叉。(3)只能从循环体内转移到循环体外,反之

14、不行。只能从循环体内转移到循环体外,反之不行。循环嵌套的使用注意事项循环嵌套的使用注意事项知识点三 C51中的辅助控制语句1.break 语句语句 break 语句的一般形式:语句的一般形式:break;break 语句的功能:语句的功能:终止它所在的终止它所在的switch 语句;语句;跳出本层循环体,从而提前结束本层循环。跳出本层循环体,从而提前结束本层循环。例如:例如:求其平方数小于求其平方数小于100 的所有整数,核心代码如下,预先设定循环次数的所有整数,核心代码如下,预先设定循环次数为为40次,从次,从1开始,出现平方大于开始,出现平方大于100时,则通过时,则通过break语句提前

15、结束循环。语句提前结束循环。for(i=1;i=100)break;printf(“%d”,i);知识点三 C51中的辅助控制语句2.continue 语句语句 continue 语句的一般形式:语句的一般形式:continue;continue 语句的功能:用于循环体内结束本次循环,接着语句的功能:用于循环体内结束本次循环,接着进行下一次循环的判定。进行下一次循环的判定。例如例如:求:求1100之间不能被之间不能被3整除的数。核心代码如下:整除的数。核心代码如下:for(i=1;i=100;i+)if(i%3=0)continue;/若能被若能被3整除,则提前结束本轮循环整除,则提前结束本轮

16、循环 printf(“%d”,i);/若不能被若不能被3整除,则输出整除,则输出 知识点四 C51中的函数 C51语言程序是由一个个函数构成的。所谓函数,是指可语言程序是由一个个函数构成的。所谓函数,是指可以被其他程序调用的具有特定功能的一段相对独立的程序。引以被其他程序调用的具有特定功能的一段相对独立的程序。引入函数的主要目的有两个:一是为了解决代码的重复;二是结入函数的主要目的有两个:一是为了解决代码的重复;二是结构化模块化编程的需要。构化模块化编程的需要。从用户使用的角度看,函数可以分成两大类:标准库函数从用户使用的角度看,函数可以分成两大类:标准库函数和用户自定义函数。常用的标准库函数

17、参考教材的附录。和用户自定义函数。常用的标准库函数参考教材的附录。C51函数定义的一般格式函数定义的一般格式函数头函数头函数体函数体知识点四 C51中的函数函数头中各部分的含义如下:return_type:函数返回值的类型即函数类型(缺省为int)。funcname:函数名。在同一程序中,函数名必须唯一。args:函数的参数列表。参数可有可无。若有,则称之为有参函数,各参数之间要用“,”分隔;若无,则称之为无参函数。small、compact或large:指定函数的存储模式。reentrant:指定函数是递归的或可重入的。interrupt n:指定函数是一个中断函数。n为中断源的编号。usi

18、ng n:指定函数所用的工作寄存器组。n为工作寄存器组的编号(03)。知识点四 C51中的函数 用用C51语言设计程序,就是编写函数。在构成语言设计程序,就是编写函数。在构成C51语语言设计程序的若干个函数中,有且仅有一个是主函数言设计程序的若干个函数中,有且仅有一个是主函数main(),C51 程序的执行都是从程序的执行都是从main()函数开始的。函数开始的。同变量一样,函数必须先定义后使用。同变量一样,函数必须先定义后使用。函数调用的一般规则是:主函数可以调用其它普通函数调用的一般规则是:主函数可以调用其它普通函数;普通函数之间可以相互调用;普通函数不能调用函数;普通函数之间可以相互调用

19、;普通函数不能调用主函数。主函数。知识点四 C51中的函数P20.7P27P26P25P24P23P22P21P20P20P21P22P23P24P25P26P27XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.0/T21P1.1/T2EX2P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/R

20、D17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C52PROGRAM=.rwrw.hexC130pFC230pFX112MHzBUTTON1R210kR310kC310uFR11kD1LED-YELLOWR41kD2LED-YELLOWR51kD3LED-YELLOWR61kD4LED-YELLOWR71kD5LED-YELLOWR81kD6LED-YELLOWR91kD7LED-YELLOWR101kD8LED-YELLOW任务实施任务实施任务实施任务实施课后练习课后练习 2.用单片机控制路口东西南北四个方向的红绿黄用单片机控制路口东西南北四个方向的红绿黄共共12盏交通信号灯,不考虑左转和倒计时牌,请设计盏交通信号灯,不考虑左转和倒计时牌,请设计简单的城市道口交通灯控制系统,设红灯简单的城市道口交通灯控制系统,设红灯20秒,黄灯秒,黄灯2秒,绿灯秒,绿灯18秒。秒。1.在本设计电路中,添加在本设计电路中,添加4个按键,用于选择不个按键,用于选择不同的流水花色。系统开机后,根据不同按键的输入显同的流水花色。系统开机后,根据不同按键的输入显示不同的流水方式。示不同的流水方式。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(单片机应用技术项目教程项目二任务课件1.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|