智能控制电路项目三任务1课件

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

式中 VCC——电源电压;
R VCC VLED I LED
VLED——LED的正向导通压降,通常取1.7~1.9V;
ILED——所选工作电流,一般取7mA左右,已有足够的显示亮度。
任务1 LED点亮控制 R 5 1.7 470 0.007
任务1 LED点亮控制
发光二极管和单 片机如何连接呢?
主函数:通过直接书写语句或调用其他函数来实现有 关功能,一个C51 语言程序,总是从main函数开始执 行的,而不管物理位置上这个main函数放在什么地方。
任务1 LED点亮控制
#include "reg51.h" #define LIGHT0 0x0F
main() {
P2=LIGHT0; }
//包含头文件
任务1 LED点亮控制
“define”为预处理命令,它本身不产生任何操作, 是在编译之前进行的处理。
Define功能:可以将一个标识符替换为一个常量或其 他字符。
例:#define PI 3.14 说明:用符号PI代替3.14,则后面程序中所有3.14的 地方可书写为PI
}
任务1 LED点亮控制
思考
1. 为什么要包含头文件reg51.h?如果不包含头文件
reg51.h,程序chengxu3_1_1.c将如何修改?
2. 注释是程序必要的组成部分吗?为何要使用注释?
3. 指出下面程序中的错误。
#define LIGHT0 0xfe;
main()
{
P1=LIGHT0;
//点亮一个LED
任务1 LED点亮控制Baidu Nhomakorabea
任务1 LED点亮控制
!不可行
任务1 LED点亮控制
任务1 LED点亮控制
一般来说,如果需要带负载,单片机的I/O口 都需要加驱动电路。但对于一些具有特殊功能的 单片机而言,如 AT89C2051,由于在内部电路上 增强了驱动能力,所以能够直接带一些负载。
驱动芯片
任务1 LED点亮控制
编程语言
汇编语言:与硬件紧密相关,可以方便地实现诸如中断 管理以及模拟/数字量的输入/输出等功能,占用系统资 源小、执行速度快。但当应用程序达到一定规模后,由 于汇编语言的代码可读性较差,将增加编写和阅读代码 的难度,不利于应用系统的升级和维护。
C51语言:可以方便地实现程序设计模块化,代码结构清 晰、可读性强,易于维护、更新和移植,适合较大规模 的单片机程序设计。
任务1 LED点亮控制
在reg51.h头文件中使用了“sfr”和“sbit”两个关键字,定义 了51单片机中所有的特殊功能寄存器和一些可寻址位。 关键字“sfr”:利用sfr变量可以访问51系列单片机内部所有的 8位特殊功能寄存器。 格式为: sfr 变量名=特殊功能寄存器地址; 关键字“sbit”:用于定义存储在可位寻址的SFR中的变量,其 格式为: sbit 位变量名称=位地址 sbit 位变量名称=SFR单元名称^变量位序号 sbit 位变量名称=SFR单元地址^变量位序号
任务1 LED点亮控制
有关规则:
(3) 使用花括号({})将每个函数(包括main() 函数)的程序行括起。用花括号括起的一行或多行语 句称为代码块,花括号必须成对出现。让每个花括号 单独占一行是良好的程序书写习惯,这样语句块的开 始和结束位置便清晰明了。 (4) 注释可以用“//”引导(第1、4行),“//” 后面的内容是注释,注意这种格式的注释,只是对本 行有效。
任务1 LED点亮控制
文件包含
#include "reg51.h"
main() {
主函数
P2=0x0F;
}
任务1 LED点亮控制
函数:函数是C51程序的核心,它是一段独立的程序代 码,完成特定的功能,并被指定了名称。C51程序是由 函数构成的,一个C51程序有且只有一个名为main()的 函数,也可以包含其他函数。
项目三 LED流水灯设计制作
任务1
LED点亮控制
任务1 LED点亮控制
任务要求 用单片机的P1口控制8个LED灯,使P1口的
高4位所控制的LED灯点亮,而低4位控制的LED 灯熄灭。
任务1 LED点亮控制
仿真演示
任务1 LED点亮控制
任务分析
LED点亮 控制
硬件
单片机最小应用系统 +
LED驱动电路
软件
任务1 LED点亮控制
完成本任务需要掌握的知识:
(1)AT89C51单片机的驱动问题 (2)程序——C51基础知识
任务1 LED点亮控制
任务1 LED点亮控制
复习: 发光二极管(LED)
任务1 LED点亮控制
LED正向导通压降一般为(1.7~1.9)V LED点亮电流为5mA至10mA 使用时,通常和LED串联一个电阻,其作用在于限制电流。 限流电阻的大小由工作电流(显示亮度)确定:
任务1 LED点亮控制
#include "reg51.h" #define LIGHT0 0x0F
main() {
P2=LIGHT0; }
//包含头文件
任务1 LED点亮控制
有关规则:
(1) C51程序可以在一行写多个语句,也可以把一个 语句写在多行。没有行号(但可以有标号),书写的 缩进没有要求。 (2) 每个可执行语句均规定CPU进行某些操作,后面 必须以分号结尾,分号是C语句的必要组成部份。以 “#”打头的预处理命令不是可执行语句,后面没有 “;”号。
任务1 LED点亮控制
C51:应用于51系列单片机开发的C语言简
称为C51语言。
任务1 LED点亮控制
文件包含
#include "reg51.h"
main() {
主函数
P2=0x0F;
}
任务1 LED点亮控制
“文件包含”:指一个文件将另外一个文件的内容全部 包含进来,如同将被包含文件中的内容全部录入到当前 文件中一样。 reg51.h:文件是一个独立的文件,Keil C51编译器提 供了多个这样的文件(也称为头文件),可在keil软件 的安装目录C:\Keil\C51\INC中找到,头文件的扩展名 总是“.h”。头文件reg51.h中的内容可双击Keil编译 软件中的reg51.h看到。
相关文档
最新文档