89c51一键多功能按键识别技术

合集下载

AT89C51与89S51简介

AT89C51与89S51简介

AT89C51/AT89S51性能简介--单片机与电子制作网????????????燗T89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

1.主要特性:·?8031 CPU与MCS-51 兼容· 4K字节可编程FLASH存储器(寿命:1000写/擦循环)· 全静态工作:0Hz-24KHz· 三级程序存储器保密锁定· 128*8位内部RAM· 32条可编程I/O线· 两个16位定时器/计数器·?6个中断源· 可编程串行通道· 低功耗的闲置和掉电模式· 片内振荡器和时钟电路2.管脚说明:牐牐牐燰CC:供电电压。

燰燰燰燝ND:接地。

燝燝燝燩0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P1口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

燩燩燩燩1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

在FLASH编程和校验时,P1口作为第八位地址接收。

燩燩燩燩2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

基于STC89C51单片机的红外遥控智能家居系统设计

基于STC89C51单片机的红外遥控智能家居系统设计

基于STC89C51单片机的红外遥控智能家居系统设计1. 本文概述阐述问题:我会指出当前智能家居系统中存在的问题,以及为什么需要基于STC89C51单片机的解决方案。

提出解决方案:接着,我会概述STC89C51单片机在智能家居系统中的作用以及红外遥控技术的优势。

文章结构:我会简要介绍文章的结构,说明接下来的章节将如何展开。

随着科技的不断进步,智能家居系统逐渐成为现代家庭生活的一部分,它们通过提高居住环境的舒适性、安全性和便利性,极大地提升了人们的生活质量。

现有的智能家居系统在集成性、成本效益和用户交互体验方面仍存在不足。

为了解决这些问题,本文提出了一种基于STC89C51单片机的红外遥控智能家居系统设计方案。

STC89C51单片机以其较低的成本、丰富的功能和良好的稳定性,成为实现智能家居控制的理想选择。

结合红外遥控技术,该系统不仅能够实现远程控制家电设备,还能通过简单的编程实现个性化的家居自动化场景,从而为用户提供更加灵活和智能的居住体验。

本文将首先介绍智能家居系统的基本概念和发展趋势,然后详细阐述STC89C51单片机的工作原理及其在智能家居系统中的应用。

接着,本文将描述红外遥控技术的原理,并展示如何将其与STC89C51单片机结合,实现对家居设备的智能控制。

本文将通过一个实际的系统设计案例,展示该设计方案的可行性和实用性。

2. 相关技术综述单片机技术:介绍STC89C51单片机的基本特性,包括其处理能力、内存、IO端口等,并说明其在智能家居系统中的应用优势。

红外通信技术:概述红外通信的基本原理,包括信号的调制、传输和解码过程,以及红外技术在遥控设备中的优势。

智能家居系统架构:描述智能家居系统的一般架构,包括控制中心、通信协议、传感器和执行器等组成部分。

现有智能家居解决方案:简要回顾市场上已有的智能家居解决方案,分析它们的特点和局限性。

设计挑战与创新点:讨论在设计基于STC89C51单片机的红外遥控智能家居系统时面临的技术挑战,以及本设计相对于现有技术的创新之处。

基于P89C51单片机的多功能节电开关装置设计

基于P89C51单片机的多功能节电开关装置设计

面也给 我们 的 生存 环 境 造 成严 重 的污 染 。从 当今 世 界煤 炭 、 油 等 一 次 能 源 的 开 采 和 消 耗 速 度 来 石 看 , 源 形 势非 常 严 峻 。 因此 , 能 世界 各 国纷 纷 倡 导 建设生 态 文 明社 会 , 以形成 节约 能源 资源 和保护 生 态环境 的产业结 构 、 长 方 式 和 消 费模 式 , 人 类 增 使 社 会 以绿色 环保 的方 式 可 持续 地 发 展 下 去 。这 也 是时代 赋 予我们 的使 命 , 个人 都应 该积极 践行 。 每 随着科 技 的进 步和人 们生 活水 品 的提 高 , 界 世
关)“ ; 状态 显示 ” 显示 装 置 的工 作 状 态 ; 电源 ” “ 为
检测, 检测到的信号经过“ 口” 接 处理后送到“ 单片 机¨ ,“ 』 , 单片 机” 据预设 的程 序对 装 置进 行 集 中 ’ 根
控制 , 以实现 装 置 的 功 能 ; 开 关 1 和 “ 关 2 分 “ ” 开 ”
关键词 : 家用 电器 ; 机 ;能耗 ; 电 ; 关装置 待 节 开
中图分 类号 :P 0 . T 333 文献 标识 码 : A
目的 。
众 所周 知 , 能是 重 要 的 二次 能 源 , 用 于 现 电 应 代社会 各个 方 面 。我 国是 仅次 于美 国的发 电大 国 , 而其 中 8 %左 右 是 火 力 发 电 , 方 面 每 天要 消耗 0 一
图 1 安装位置 、 组成 及 结构 图
收 稿 日期 : 0 1—1 0 21 0— 5
基金项 目: 贵州省 自然科学基金 (0 92 2 ) 20 J 19 作者简介 : 彭 建( 9 4 , , 16 一) 男 贵州贵阳人, 副教授 , 研究方向 : 单片机及 电子信息技术应用 ,m i P 4 7 13 ci E a :J 0 @ 6 . o l 6 n

STC89C51介绍

STC89C51介绍

STC89C51介绍3.1.1 STC89C51主要功能及DIP封装STC89C51是一种低功耗、高性能CMOS8位微控制器,具有8K 在系统可编程Flash 存储器。

在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C51为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。

具有以下标准功能:8k字节Flash,512字节RAM,32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口。

另外STC89X51 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。

空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。

掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。

最高运作频率35Mhz,6T/12T可选。

STC89C51主要功能如表1所示,其DIP封装如图2所示表1:STC89C51主要功能3.1.2 STC89C52引脚介绍①主电源引脚(2根)VCC(Pin40):电源输入,接+5V电源GND(Pin20):接地线②外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片内振荡电路的输出端③控制引脚(4根)RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。

ALE/PROG(Pin30):地址锁存允许信号PSEN(P in29):外部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。

④可编程输入/输出引脚(32根)STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。

P0口(Pin39~Pin32):8位双向I/O口线,名称为P0.0~P0.7P1口(Pin1~Pin8):8位准双向I/O口线,名称为P1.0~P1.7P2口(Pin21~Pin28):8位准双向I/O 口线,名称为P2.0~P2.7 P3口(Pin10~Pin17):8位准双向I/O 口线,名称为P3.0~P 3.7 作频率35Mhz ,6T/12T 可选。

AT89C51单片机在多功能报警器中的应用

AT89C51单片机在多功能报警器中的应用

科技资讯 S E E & TE N0L GY N OR CINC cH 0 IF MATI ON
29 4
学 术 论 坛
( ) 线 接 收 模块 、 码 器 。 1无 解 无线 发射 模块 F 5 0 V发 出的信 号 , 经无 线 接收模块J 5 接收后 ,  ̄ P 2 7 进行解码 , OV 送 1T 22 ] 解码后 , 得到 现场火 灾检 测器 、 盗窃检 测器检 测到 的2 个信 号 , 把此 信号 送 到单 片 机 。 并 () 8 C 1 片 机 。 2 AT 9 5 单 A 8C 1 T 9 5 单片机是 本报警器的核心 , 了 除 进行有 无火 灾 、 窃情况 的判 断 , 同时兼 顾 盗 还 根据判断 的结果 作出相应 的控制处理的功 能。 当送入到 单片机的信号 为低 电平时 , 表示 没有相 关的险 情发 生 , 报警 器处于 待机状 态 。 当 单 片 机 检 测 到 来 自火 灾 或 盗 窃 探 测 器 的 信 号 为 高 电 平 时 , 示 有 火 灾 或 盗 理 , 制 表 这 单 控 示 火 灾 或 盗 窃 的 发 光 二 极 管 闪烁 , 声 器 扬 发出声音报警 。 () 3 功放 电路 。 由于 单 片 机 发 出 的 控 制 信 号 功 率 小 , 不 足 以 使 扬 声 器 工 作 , 要 把 此 声 音 信 号 故 经 功率 放 大 电路 进 行放 大 后 再 送 入 到 扬 声 器 , 动 扬 声 器 发 出声 音 报 警 。 驱
1 多功 能报警器 的工作原理
现场 的 传 感 器 把 监 控 到 的 火 灾 或 盗 窃 信 号 转 换 成 电信 号 后 , 无 线 发 射 模 块 传 经 送 出去 , 警 器 主 机 内 的 无 线 接 收 模 块 会 报 接 收 到 监 控 现 场 来 的 信 号 , 过 片 机 的 经 处 理 后 在 报 警 器 主 机 内 通 过 不 同 的 发 光 二 极管闪烁发出报警。 当采 集 到 火 灾 信 号 时 , 表 示 火 警 的 发 光 二 极 管 闪 烁 ; 采 集 到 的 当 是 盗 窃 信 号 时 , 示 盗 窃 的 发 光 二极 管 闪 表 烁 ; 都伴 随有声音报警 。 并

(完整word版)AT89c51中文说明书

(完整word版)AT89c51中文说明书

描述AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含4K字节的快速可擦写的只读程序存储器(PEROM)和128 字节的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51产品指令系统,片内有通用8位中央处理器(CPU)和闪存单元,功能强大AT89C51单片机具有很高性价比和应用性,可灵活应用于各种控制领域。

AT89C51提供以下标准功能:4K 字节闪存,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。

同时,AT89C51可降至0HZ的静态逻辑操作,并支持两种软件可选的节电工作模式。

空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。

掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。

引脚功能说明Vcc电源电压GND地P0口P0口是一组8位漏极开路型双向I/O口,即地址/数据总线复位口。

作为输出口用时,每位能吸收电流的方式驱动8个逻辑门电路,对端口写“1”可作为高阻抗输入端用。

在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,此时P0激活内部的上拉电阻。

P1口P1是一个带有内部上拉电阻的8位双向I/O口。

P1的输出缓冲级可驱动(输入或输出)4个TTL逻辑门电路。

对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可做输入口。

因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流.Flash编程和程序校验期间,P1也接受低8位地址。

P2口P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(输入或输出电流)4个TTL逻辑门电路。

对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作为输入口。

因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。

AT89C51单片机性能介绍

AT89C51单片机性能介绍

AT89C51单片机性能介绍首先,AT89C51具有良好的性能。

它采用8位数据总线和16位存储器地址总线,能够处理8位数据和16位地址,提供了较高的计算和存储能力。

其工作频率可达到主频12MHz,具有高速运算能力。

此外,它还拥有丰富的外设接口,包括定时器、串口通信接口、中断控制器等,大大扩展了系统的功能。

特别是具有4个定时/计数器,可用于测量时间、产生精确的时序信号等。

其次,AT89C51具有低功耗特性。

它采用CMOS技术,具有较低的功耗。

在静态模式下,工作电压为5V时, typ.工作电流约为10mA。

在停机模式下,工作电流可降低至100uA。

这些低功耗特性使得AT89C51非常适合于电池供电或需长期工作的场景。

此外,AT89C51还具有可靠性。

它采用了英特尔公司的互锁技术,能够有效地防止由于干扰或错误引起的非法操作。

此外,该单片机还有内部的时钟和复位电路,能够有效地检测和处理错误。

AT89C51还具有自动读取和写入保护功能,提供了一定的安全性。

除了以上提到的基本性能之外,AT89C51还提供了一些额外的特性,进一步提高了单片机的性能。

首先是扩展存储器接口。

AT89C51具有256字节的内部RAM和64K字节的外部程序存储器空间。

其次是可编程I/O口和中断控制器,可以方便地连接外部设备和实现各种功能。

此外,AT89C51还具有EEPROM,允许用户在不消耗EPROM和闪存存储器资源的情况下进行草图代码和数据存储。

总的来说,AT89C51单片机是一种高性能、低功耗和可靠性的MCU。

它具有良好的计算和存储能力,采用了现代的CMOS技术和互锁技术,提供了丰富的外设接口和额外的特性。

广泛应用于各种嵌入式系统和智能控制领域,在电子工程领域有着重要的地位和作用。

第2章89C51单片机引脚及其功能

第2章89C51单片机引脚及其功能
P2口为一个内部上拉电阻的8位双向 I/O口,P2口缓冲器可接收,输出4个 TTL门电流,当P2口被写“1”时, 其管脚被内部上拉电阻拉高,且作为 输入。并因此作为输入时,P2口的管 脚因为被外部电路拉低而输出电流。 这是由于内部上拉的缘故。P2口当用 于高位地址时,能接收外部存储器的 高8位地址信号,并在程序执行过程 中自动与内部的低位地址信号组合成 16位地址去访问外部存储器。在 FLASH编程和校验期间,它也可以接 收高位地址信号和控制信号。
测量等。
工作模式
03
定时/计数器具有多种工作模式,可灵活配置以满足不同应用需
求。
04
89C51单片机引脚应用实例
电源电路设计
1 2
电源引脚
89C51单片机通常采用5V直流电源供电,电源引 脚包括VCC和GND。
电源滤波
为确保单片机稳定工作,需在电源输入端添加滤 波电容,一般选用10~100uF的电解电容。
THANKS
感谢观看
PSEN
外部程序存储器选通信号输出端。当访问外部程序存储器 时,PSEN端输出一个低电平有效的选通信号。
ALE/PROG
地址锁存允许/编程脉冲输入端。在访问外部存储器时, ALE端输出一个正脉冲用于锁存地址;在编程期间,此引 脚输入编程脉冲。
EA/VPP
外部访问允许/编程电源输入端。EA端用于控制对外部程 序存储器的访问;VPP端在编程期间提供+12V编程电源 。
等。
中断优先级
每个中断源都可设置不同的优 先级,确保重要中断得到及时
处理。
中断响应
当中断请求发生时,单片机会 根据中断优先级和当前状态决 定是否响应中断,并执行相应
的中断服务程序。
定时/计数器功能

at89c51单片机简单介绍

at89c51单片机简单介绍
at89c51单片机 简单介绍
汇报人: 202X-12-21
目录
• at89c51单片机概述 • at89c51单片机内部结构 • at89c51单片机外部接口 • at89c51单片机编程语言与开发环
境 • at89c51单片机应用案例展示 • at89c51单片机未来发展趋势与挑

01
at89c51单片机概述
02
at89c51单片机内部结构
中央处理器(CPU)
运算和控制中心
负责执行指令、处理数据和控制其他部件。
8位结构
采用8位微处理器,可处理8位二进制数据。
存储器(RAM/ROM)
RAM
用于存储程序运行时的变量和临时数据。
ROM
用于存储程序代码和常量数据。
定时器/计数器
定时器
用于产生定时信号和控制时间间隔。
THANKS
感谢观看
计数器
用于计数外部事件或内部时钟信号。
中断系统
中断控制
允许CPU在执行程序时响应外部事件或 内部异常。
VS
中断向量
提供中断处理程序的入口地址。
03
at89c51单片机外部接口
I/O端口
输入输出端口
at89c51单片机具有多个输入输出端口,可 以用于连接各种外设和传感器。
端口配置
通过设置端口的控制寄存器,可以配置端口 的输入输出方向、弱上拉或弱下拉电阻等。
定义与特点
定义
at89c51是一种8位微控制器,采用 CMOS技术,具有低功耗、高性能的 特点。
特点
at89c51单片机具有丰富的指令集、 可编程的存储器、定时器/计数器、串 行通信接口等,适用于各种嵌入式系 统。

一键多功能按键识别技术

一键多功能按键识别技术

一键多功能按键识别技术1.实验任务如图所示,开关SP1接在RD管脚上,在AT89S51单片机的P1端口接有四个发光二极管,上电的时候,L1接在管脚上的发光二极管在闪烁,当每一次按下开关SP1的时候,L2接在管脚上的发光二极管在闪烁,再按下开关SP1的时候,L3接在管脚上的发光二极管在闪烁,再按下开关SP1的时候,L4接在管脚上的发光二极管在闪烁,再按下开关SP1的时候,又轮到L1在闪烁了,如此连番下去。

2.电路原理图图3.系统板上硬件连线(1.把“单片机系统”区域中的RD端口连接到“独立式键盘”区域中的SP1端口上;(2.把“单片机系统”区域中的-端口用8芯排线连接到“八路发光二极管指示模块”区域中的“L1-L8”端口上;要求,连接到L1,连接到L2,连接到L3,连接到L4上。

4.程序设计方式(1.设计思想由来在咱们生活中,咱们很容易通过那个叫张三,那个叫李四,另外一个是王五;那是因为每一个人有不同的名子,咱们就专门快认出,一样,关于要通过一个按键来识别每种不同的功能,咱们给每一个不同的功能模块用不同的ID号标识,如此,每按下一次按键,ID的值是不相同的,因此单片机就很容易识别不同功能的身份了。

(2.设计方式从上面的要求咱们能够看出,L1到L4发光二极管在每一个时刻的闪烁的时刻是受开关SP1来操纵,咱们给L1到L4闪烁的时段概念出不同的ID号,当L1在闪烁时,ID=0;当L2在闪烁时,ID=1;当L3在闪烁时,ID=2;当L4在闪烁时,ID=3;很显然,只要每次按下开关K1时,别离给出不同的ID号咱们就能够够完成上面的任务了。

下面给出有关程序设计的框图。

5.程序框图图6.汇编源程序ID EQU 30HSP1 BIT PL1 BIT PL2 BIT PL3 BIT PL4 BITORG 0MOV ID,#00HSTART: JB K1,REL LCALL DELAY10MSJB K1,RELINC IDMOV A,IDCJNE A,#04,RELMOV ID,#00HREL: JNB K1,$MOV A,IDCJNE A,#00H,IS0CPL L1LCALL DELAYSJMP STARTIS0: CJNE A,#01H,IS1 CPL L2LCALL DELAYSJMP STARTIS1: CJNE A,#02H,IS2 CPL L3LCALL DELAYSJMP STARTIS2: CJNE A,#03H,IS3 CPL L4LCALL DELAYSJMP STARTIS3: LJMP START DELAY10MS: MOV R6,#20 LOOP1: MOV R7,#248 DJNZ R7,$DJNZ R6,LOOP1RETDELAY: MOV R5,#20 LOOP2: LCALL DELAY10MS DJNZ R5,LOOP2RETEND7. C语言源程序#include <> unsigned char ID; void delay10ms(void) {unsigned char i,j; for(i=20;i>0;i--)for(j=248;j>0;j--); }void delay02s(void) {unsigned char i;for(i=20;i>0;i--) {delay10ms();}}void main(void){ while(1){ if(P3_7==0) {delay10ms();if(P3_7==0){ID++;if(ID==4){ID=0;}while(P3_7==0);}}switch(ID){ case 0:P1_0=~P1_0;delay02s();break;case 1:P1_1=~P1_1;delay02s();break;case 2:P1_2=~P1_2;delay02s();break;case 3:P1_3=~P1_3; delay02s(); break;}}}。

AT89C51与AT89C52简介

AT89C51与AT89C52简介

AT89C51简介AT89C51是一种带4K字节FLASH存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。

AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。

单片机的可擦除只读存储器可以反复擦除1000次。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。

AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

外形及引脚排列如图所示主要特性:·与MCS-51 兼容·4K字节可编程FLASH存储器·寿命:1000写/擦循环·数据保留时间:10年·全静态工作:0Hz-24MHz·三级程序存储器锁定·128×8位内部RAM·32可编程I/O线·两个16位定时器/计数器·5个中断源·可编程串行通道·低功耗的闲置和掉电模式·片内振荡器和时钟电路管脚说明:VCC:供电电压。

GND:接地。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P0口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

89c51及89s51及89c52、s51与c51的主要新增功能

89c51及89s51及89c52、s51与c51的主要新增功能

89c51及89s51及89c52的区别最佳答案很多初学51单片机的网友会有这样的问题:AT89S51是什么?书上和网络程上可都是8051,89C51等!没听说过有89S51 ?这里,初学者要澄清单片机实际使用方面的一个产品概念,MCS-51单片机是美国INTE公司于1980年推出的产品,典型产品有 8031(内部没有程序存储器,实际使用方面已经被市场淘汰)、8051(芯片采用HMOS,功耗是630mW,是89C51的5倍,实际使用方面已经被市场淘汰)和8751等通用产品,一直到现在, MCS-51内核系列兼容的单片机仍是应用的主流产品(比如目前流行的89S51、已经停产的89C51等),各高校及专业学校的培训教材仍与MCS-51单片机作为代表进行理论基础学习。

有些文献甚至也将8051泛指MCS-51系列单片机,8051是早期的最典型的代表作,由于MCS-51单片机影响极深远,许多公司都推出了兼容系列单片机,就是说MCS-51内核实际上已经成为一个8位单片机的标准。

其他的公司的51单片机产品都是和MCS-51内核兼容的产品而以。

同样的一段程序,在各个单片机厂家的硬件上运行的结果都是一样的,如ATMEL的89C51(已经停产)、89S51, PHILIPS(菲利浦),和WINBOND(华邦)等,我们常说的已经停产的89C51指的是ATMEL公司的 AT89C51单片机,同时是在原基础上增强了许多特性,如时钟,更优秀的是由Flash(程序存储器的内容至少可以改写1000次)存储器取带了原来的ROM(一次性写入),AT89C51的性能相对于8051已经算是非常优越的了。

不过在市场化方面,89C51受到了PIC单片机阵营的挑战,89C51最致命的缺陷在于不支持ISP(在线更新程序)功能,必须加上ISP功能等新功能才能更好延续MCS-51的传奇。

89S51就是在这样的背景下取代89C51的,现在,89S51目前已经成为了实际应用市场上新的宠儿,作为市场占有率第一的Atmel目前公司已经停产AT89C51,将用AT89S51代替。

单片机一键多功能按键识别设计

单片机一键多功能按键识别设计

安徽电子信息职业技术学院《单片机应用技术》课程设计报告书题目:一键多功能按键识别设计姓名:xxx专业:电子信息工程技术班级:电信097学号:090301704设计成绩:指导教师:李炎设计完成日期2010年12月26日前言单片机的应用介绍单片机具有体积小、可靠性高、功能强、灵活方便等许多优点,广泛应用于国民经济的各个领域。

智能仪器的应用单片机用于各种仪器仪表,是仪器仪表智能化,可以提高测量的自动化程度和精度;简化仪器仪表的硬件结构,减小体积,提高其性价比。

例如:温度智能控制仪表、医用仪表、数字示波器等。

通信设备的应用单片机与通信技术相结合促使通信设备的智能控制水平大大提高,广泛应用于通信的各个领域。

例如:调制解调器、传真机、复印机、打印机、移动电话、固定电话机等。

(3)家用电器的应用传统的家电配上单片机以后,提高了智能化程度,增加了功能,倍受人们的喜爱;单片机使人类生活更加方便、舒适、丰富多彩。

例如:洗衣机、电冰箱、电子玩具、收录机、微波炉、电视机、录像机、音响设备、程控玩具、游戏机等。

工业控制的应用机电一体化是机械工业发展的方向。

机电一体化产品是集机械技术、微电子技术、计算机技术于一体,具有智能化特征的机电产品,例如微机控制的车床、钻床等。

单片机广泛用于导弹的导航装置、飞机上各种仪表的控制、计算机的网络通信与数据传输、机器人、工业自动化过程的实时控制和数据处理。

在比较复杂的系统中,常采用分布式多机系统。

多机系统一般由若干功能各异的单片机组成,各自完成特定的任务,它们通过串行通信相互联系。

协调工作。

单片机的高可靠性和强抗干扰能力,使它可以置于恶劣课程设计的目的和意义1、目的:(1)掌握单片机中有关指令的使用方法。

(2)掌握循环程序的设计方法。

(3)掌握子程序的应用方法。

(4)掌握延时时间的计算、应用。

课题设计意义计算机与计算机或计算机与终端之间的数据传送可以采用串行通讯和并行通讯二种方式。

由于串行通讯方式具有使用线路少、成本低,特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用。

89C51单片机实验开发板功能介绍

89C51单片机实验开发板功能介绍

89C51单片机实验开发板功能介绍一.初始化模块单片机上电后,10位8段数码管从右至左输出‘LNU—89C51’字样,并保持停留。

约3s钟后,显示数码管清屏,从右至左滚动显示‘8’等待按键按下,执行相应功能模块。

二.模数转换功能模块在单片机循环显示‘8’等待状态下,按下按键‘AD’,单片机执行模数转换功能。

低2位数码管显示模拟量电压,高8位数码管显示ADC0804芯片转换出的数字量电压。

在此功能下,调节电位器,使输入模拟量电压在0 — 5V范围内变化。

数码管数字量显示部分,实时显示转换出的数字量电压。

三. 数模转换功能模块在单片机循环显示‘8’等待状态下,按下按键‘DA’,单片机执行数模转换功能。

在‘DA’按键按下后,显示数码管清屏,等待数字量的输入。

按下按键‘J0’输入数字量零;按下按键‘J1’输入数字量一。

根据‘J0’‘J1’的按键顺序,显示数码管从左至右对应显示‘0’‘1’,待按键按满8次为止,使输入数字量电压在00000000 — 11111111范围内变化。

按键按满8次后,单片机自动实现数字量转换模拟量,并把转化后的模拟量通过低两位数码管显示出来。

四.P1口对应显示发光二极管功能在单片机循环显示‘8’等待状态下,按下按键‘P1’,单片机执行P1口对应显示发光二极管功能。

在‘P1’按键按下后,低8位数码管对应显示发光二极管状态。

红色发光二极管点亮,向对应P1口输入低电平,对应数码管显示零;绿色发光二极管点亮,向对应P1口输入高电平,对应数码管显示一。

通过自锁开关可以改变红绿发光二极管的点亮状态,数码管实时显示红绿发光二极管的点亮状态。

五.时钟功能模块在单片机循环显示‘8’等待状态下,按下按键‘CK’,单片机执行时钟功能。

在‘CK’按键按下后,显示数码管清屏,等待计时器初始量的输入。

按下按键‘J0’输入数字零;按下按键‘J1’输入数字一。

根据‘J0’‘J1’的按键顺序,显示数码管从左至右对应显示‘0’‘1’,待按键按满8次为止,使输入数字在00000000 — 11111111范围内变化。

最新-基于89C51的计算机可锁定加密键盘设计 精品

最新-基于89C51的计算机可锁定加密键盘设计 精品

基于89C51的计算机可锁定加密键盘设计
摘要介绍键盘和键盘接口的2通信协议,以及用8951实现可锁定键盘的软件和硬件设计方法。

具有安全可靠、容错能力强、可以直接采用标准键盘进行改装、便于实现等优点,并保留标准键盘的全部功能。

关键词2895151键盘
引言
在智能仪器、自动控制等领域,已大量使用嵌入式,如公司的104、公司的-等。

为适应开放式、模块化的要求,嵌入式具有标准的接口,如显示器控制接口、以太网接口、232接口、键盘接口等。

所以,可以用标准的键盘对嵌入式进行操作与控制。

键盘在输入指令之后,可能很长一段时间不用。

为计算机安全和防止误触发,需要将键盘锁定,还要对某些键采取屏蔽措施,但是标准键盘不能满足这些要求。

本文介绍一种用8951设计实现的可锁定加密键盘。

1键盘功能及工作原理
键盘功能主要有按键识别、去抖、重键处理、发送扫描码、自动重发、接收键盘命令、处理命令等。

键盘有编码键盘和非编码键盘。

编码键盘程序设计简单,但硬件电路复杂,价格较高;非编码键盘用软件来实现识别键、编码转换、去抖等功能,硬件电路简单,价格便宜。

现代微机系统中广泛采用非编码键盘。

键盘多采用18行×8列的二维矩阵行列结构。

采用行扫描法识别按下的按键。

22协议
2协议是外设与主机之间通信的一种同步双向串行协议。

在该协议中主机拥有较高的优先级,在一定条件下可以终止外设正在进行的发送过程。

飞利浦P89C51系列单片机简介

飞利浦P89C51系列单片机简介

飞利浦P89C51系列单片机简介文/邢矫健舞P89C51系列单片机是飞利浦公司在兼容MCS-51内核结构的基础上对譬标准的MCS-51内核进行改进后推出誓的一个增强型MCS一51单片机系列.i在芯片型号命名上,P代表是Phifips的产品,89代表芯片内带有非易失性Flash程序存储器(早期还有与Intel_命名上一致的内置ROM/OTP的80系列和内置EPROM的87系列),C代表萋CMOS工艺制造.51/52/54/58代表_芯片内Flash程序存储器的容量分别为4K/8K/16K/32K,还用后缀名区.分为X2,Rx2等不同系列(Rx2系列用A/B/C/D代表Flash程序存储器的容量,见下文).《P89C51系列是从引脚到内核都完.全兼容标准8051的单片机,有40脚DIP,44脚PLCC,44脚LQFP三种.封装形式(见图1).下面,先以P89C51u系列单片机的子系列P89C51Rx2为例介绍其内核的增强功能,再介绍其他类似型号的特点.关于P89C51Rx2的详细开发资料,可上网下载:http:///acrobat/datasheets/一P89C51RB2jC2jD2_9.pdf蕞P89C51Rx2系列单片机主要分_P89C51RA2/RB2/RC2/RD2四种型.号,内核完全相同,差别主要在于片.内Flash闪存分别为8K/16K/32K/--64K,其管脚排列与标准的8051完全_酾嘲鳓adC—ShOW【3一i].=temp1O+0x30;//处理电压值,用于在LCD上显示temp:temp/10;兼容.但芯片内核较之8051有不少大的改进,下面就改进方面逐一介绍.一6时钟,机器周期模式标准的8051每个机器周期为12时钟,增强型的P89C51Rx2系列单片机可以设置工作模式为6时钟/机器周期(双倍速)或12时钟/机器周期.6时钟模式时工作频率为0到20MHz,12 时钟模式时工作频率为0到33MHz. 6时钟/机器周期(双倍速)工作模式下,定时器的计数速度会加倍,相应的12时钟/机器周期模式下的串口波特率也会加倍,因此单片机使用的最高的波特率也可提高~倍.=.片内硬件■门狗P89C51Rx2芯片内置了一个14位的硬件看门狗定时器.从而可以省去外接专用看门狗硬件,当然在不启动内置看门狗的情况下P89C51Rx2完.||l毽甄g警骜l|孽l囊沓薯簪毒毽蘩弩j冁l蚤§甓《《ggil一|l;| 全可以和普通8051单片机一样使用.三.内部扩展删P89C51Rx2系列单片机中的RA2/RB2/RC2在原来8052标准内置256字节RAM的基础上,又扩展了256字节ERAM,共有512字节内置RAM.P89C51RD2则扩展了768字节ERAM,共有1024字节内置RAM.四降低簟片机对外部电磁辐射通过设置6时钟/机器周期(双倍速),可以将外接晶振频率降低一半,能有效降低对外部电磁辐射(EMI).更重要的是,P89C51Rx2系列单片机可以关闭ALE输出,最有效地降低EMI.通过将ALEoff位(AUXR.0)置1,可以使ALE引脚仅在读取外接存储器时才有变化电平输出,从而降低对外部电磁辐射.另外,F'89C51Rx2系列单片机还通过限制引脚信号陕速切换时产生的过冲(对10ns1~.1的上升,下降的摆率采取限制措施),来降低对外部的电磁辐射. 五双l咿m数据指针标准的8051只有一个16位的DPTR数据指针.这样,在进行数据块复制等动作时,必须对源地址指针和目标地址指针进行暂存,编程会非常麻烦.P89C:;1R系列单片机内有两个DPTR数据指针DPTR0/DPTR1,可以通过设…S位(AUXR1.0)方便地选择,DPS置0则选中DPTR0,置1则选中DPTR1.通过执行INC AUXR1指令,能对DPS快速切换,并不影响AUXR1寄存器的高位. AUXR:爵存器(8EH)和AUXR1寄存器(A2H)是在8051标准内核基)adc_Show[0]=adc_Show[1]adc_show[1]=.;adc_show[4]=V'adc_show[5]=0)完整的程序见本期配刊光盘.电路的实际运行结果如图2所示,旋转黑色电位器,可以看到AD转换的电压值. 篇后练习将电位:器连接在ADC的通道IADC1上,编写程序在LCD上显示AD转换值.圆巳口口B.11总第53口期?www.r日 "馥尊础上新增的特殊寄存器,已被多家51芯片厂商用于增强型51单片机产品中,已成为事实上增强型51单片机一个新的标志性标准.六1卵与删P编程方式可在线烧录ISP(InSystemProgramming)和可在应用烧录IAP (InApplicationProgramming)功能改变了单片机的固化程序升级需拔插单片机芯片,使用专用编程器进行烧录的麻烦方式,轻松实现在单片机系统电路板上对单片机芯片内固化的程序进行升级.为了能够实现ISP和IAP功能,P89C51Rx2单片机芯片上内置了BootROM固件,固件中包含着用于擦除,烧录Flash闪存的多种子程序.另外,P89C51Rx2片内Flash闪存以4KB为一块,被分为大小一样的2/4/8/16块.当其中的一块或几块已经烧录着正在运行的程序时,可以对另外的闪存块进行擦除和烧录,完成后再将程序的入El地址设定为新烧录闪存块的首地址.从而实现了不需拔插芯片而对单片机芯片固化程序进行升级. 采用ISP方式烧录程序时,只需用三根串口连线如图2所示方式连接到计算机RS232接121,并在计算机上运行飞利浦系列单片机专用的ISP软件FlashMagic,即可实现对单片机芯片内Flash闪存的擦除,烧录,加密等动作.FlashMagic软件可到网上下载,下载网址为ft9:///pub/esa/flashmagic/F1ashMagic.exe除了可以用ISP方式烧录程序,P89C51Rx2还可以通过调用在芯片内提供的BootROM固件里用于擦除, 烧录Flash闪存的子程序,对当前运行程序块以外的Flash闪存块进行编程. 这一编程方式被称为IAP功能.七,ONCE模式ONCE(在线仿真)模式可以实现对系统的测试和调试而不需要将器件从电路中移去.当器件处于ONCE模式时,PO口处于悬浮状态,其他I/O口,ALE和PSEN为弱上拉,?振荡电路保持工作状态.器件处于该模式时,可用仿真器测试CPU驱动电路,执行正常复位时恢复正常操作.八,可编程计数器^可编程计数器PCA由5个基本一样的可编程计数器模块组成,5个模块共用一套计数/定时器系统,但各有各的比较/捕捉器.每个模块都可单独经编程实现捕捉模式,软定时器模式,高速输出模式,PWM(脉宽调制)模式.第5个模块(即模块4)还多一种看家狗模式.计数/定时器的信号源可选择单倍机器周期频率,3倍机器周期频率,定时器0的溢出频率,ECI引脚(P1.2)输入脉冲中的一种.在使用上,比起仅有计数/定时器0,1,2的标准8052多了更大的灵活性.九全双工增强型咖岍除了标准操作模式外,P89C51Rx2内置的UART(全双工串行口)还可实现自动地址识别和通过查询丢失的停止位进行帧错误检测.当使用帧错误检测时,丢失的位将会置位SCON中的FE位,FE与SM0共用SCON.7,通过PCON.6(SMOD0位) 选择.如果SMOD0置位,SCON.7作为FE,如果SMOD0为0,SCON.7作为SM0.P89C51Rx2内置的UART还对多机通信方式作了增强,可以自动进行地址识别.它使UART可以通过硬件比较从串行数据流中识别出特定的地址,这样就不必花费大量软件资源秘臻叠去检查每一个从串口输入的串行地址.在9位UART模式模式2和模式3 下,如果接收的地址字节中包含给定地址或广播地址(广播地址是指一机发送,多机同时接收数据的模式),接收机就会自动接收串行总线上的数据. 通过一定的地址编号方式,可以实现一机对任意另一,二,三直至更多机同时发送数据.十,其他类似的型号Philips内置Flash闪存的增强型P89C51系列有多个子系列,X2系列包括P89C51X2/52X2/54X2/58X2 (片p~Flash闪存分别为4K/8K/16K/ 32K,51X2片内RAM为128字节,其他均为256字节,无扩展ERAM),片内~gP89C51Rx2系列少了ISP和IAP 编程方式,PeA,看门狗电路,其他方面(包括可倍频)则完全一样.P89C61X2/62X2(片内Flash闪存均为64K,RAM均为256字节,扩展ERAM分别为256/768字节),片内比P89C51Rx2系列少了PeA,看门狗电路,其他方面(包括可ISP和IAP编程方式和倍频)则完全一样.P89C660/662/664/668(片内Flash闪存分别为16K/32K/64K/64K,RAM均为256字节,扩展ERAM 分别为256/768/1768/7936字节),在拥有P89C51Rx2系列所有功能的基础上,还增加了I2C串行通信模块.此外,PhiliI~还有14~28引脚的LPC900系列也使用了51内核,在外部引脚上作了精简,限于篇幅,本文不作详细介绍.十一性价比目前,P89C51X2/52X2/54X2/58X2报价分别为7.2/8.2/9.8/15.2元,P89C51RA2/RD2报价分别为7.8/30元,P89C60X2/61X2报价分别为19.2/19.8元,P89C662/664/668报价分别为51/53/51元.可以根据应用需要选择性价比最高的型号.⑩掌誊凳g2006.11总第53口期?www.radio.oom.on37 黟;;.。

89C51单片机中文资料

89C51单片机中文资料

89C51单片机中文资料一、概述89C51是一款由英特尔公司推出的单片机,广泛应用于嵌入式系统和物联网设备中。

本文将为您介绍89C51单片机的中文资料,包括其基本特性、应用领域、技术参数等内容。

二、基本特性1. 架构:89C51采用8位的CMOS单片机架构,具有强大的数据处理能力。

2. 存储器:89C51具有4KB的闪存程序存储器,用于存储程序代码和数据。

此外,它还配备了128字节的RAM,用于存储临时数据。

3. 时钟系统:89C51内置了一个可编程的时钟/计数器,可提供准确的时钟信号和定时功能。

4. 输入/输出:89C51具有多个通用输入/输出引脚,可用于连接外部设备和传感器。

5. 串行通信:89C51支持串行通信接口,可与其他设备进行数据交换和通信。

6. 中断系统:89C51具有灵活的中断系统,可实现对外部事件的快速响应。

三、应用领域89C51单片机广泛应用于各种嵌入式系统和物联网设备中,其应用领域包括但不限于:1. 工业控制:89C51可用于工业自动化控制系统,如温度控制、压力控制等。

2. 家电产品:89C51可用于家电产品,如洗衣机、冰箱、空调等,实现智能控制和功能扩展。

3. 交通系统:89C51可用于交通信号灯、智能停车系统等,提高交通效率和安全性。

4. 安防设备:89C51可用于安防设备,如入侵报警系统、监控摄像头等,实现智能化监控和报警功能。

5. 医疗设备:89C51可用于医疗设备,如血压计、心电图仪等,提供准确的数据采集和处理功能。

四、技术参数以下是89C51单片机的一些典型技术参数:1. 工作电压:3.3V-5V2. 最大时钟频率:12MHz3. I/O口数量:32个4. 串行通信接口:支持SPI和I2C协议5. 温度范围:-40℃至85℃6. 封装形式:DIP、PLCC、QFP等五、学习资料推荐如果您对89C51单片机感兴趣并希望深入学习,以下是一些中文学习资料的推荐:1. 《单片机原理与应用》:该书详细介绍了单片机的原理、应用和编程方法,适合初学者入门学习。

stc89C52技术简介

stc89C52技术简介

3.2 51单片机部分3.2.1 单片机选型依据MCS-51系列为美国Intel公司在上世纪80年代推出的一种8位单片机。

在芯片的集成程度上有较大提高,同时也大幅提升了性能,单片机的功能也大大丰富,功能单元的数量与种类答复增加,取得巨大成功,如今在我国获得广泛的应用。

MMCS51单片机的内部总体结构其基本特性如下:8位CPU、片内振荡器、4k字节ROM、128字节RAM、21个特殊功能寄存器、32根I/O线、可寻址的64k字节外部数据、程序存贮空间、2个16位定时器、计数器中断结构:具有二个优先级、五个中断源、一个全双工串行口、位寻址(即可寻找某位的内容)功能,适于按位进行逻辑运算的位处理器。

除128字节RAM、4k字节ROM和中断、串行口及定时器模块外,还有4组I/O口P0~P3,余下的就是CPU的全部组成。

把4kROM换为EEPROM就是8751的结构,如去掉ROM/EEPROM 部分即为8031,如果将ROM置换为Flash存贮器或EEPROM,或再省去某些I/O,即可得到51系列的派生品种,如89C51、AT89C2051等单片机。

单片机各部分是通过内部的总线有机地连接起来的。

MCS51单片机的组成如下:运算器以完成二进制的算术/逻辑运算部件ALU为核心,再加上暂存器TMP、累加器ACC、寄存器B、程序状态标志寄存器PSW及布尔处理器。

累加器ACC是一个八位寄存器,它是CPU中工作最频繁的寄存器。

在进行算术、逻辑运算时,累加器ACC往往在运算前暂存一个操作数(如被加数),而运算后又保存其结果(如代数和)。

寄存器B主要用于乘法和除法操作。

标志寄存器PSW也是一个八位寄存器,用来存放运算结果的一些特征,如有无进位、借位等。

其每位的具体含意如下所示:对用户来讲,最关心的是以下四位。

(1)进位标志CY(PSW.7)。

它表示了运算是否有进位(或借位)。

如果操作结果在最高位有进位(加法)或者借位(减法),则该位为1,否则为0[1] 。

单片机一键多功能按键识别设计

单片机一键多功能按键识别设计

安徽电子信息职业技术学院《单片机应用技术》课程设计报告书题目:一键多功能按键识别设计姓名: xxx专业:电子信息工程技术班级:电信097学号: 090301704设计成绩:指导教师:李炎设计完成日期 2010年12月26日前言单片机的应用介绍单片机具有体积小、可靠性高、功能强、灵活方便等许多优点,广泛应用于国民经济的各个领域。

智能仪器的应用单片机用于各种仪器仪表,是仪器仪表智能化,可以提高测量的自动化程度和精度;简化仪器仪表的硬件结构,减小体积,提高其性价比。

例如:温度智能控制仪表、医用仪表、数字示波器等。

通信设备的应用单片机与通信技术相结合促使通信设备的智能控制水平大大提高,广泛应用于通信的各个领域。

例如:调制解调器、传真机、复印机、打印机、移动电话、固定电话机等。

(3)家用电器的应用传统的家电配上单片机以后,提高了智能化程度,增加了功能,倍受人们的喜爱;单片机使人类生活更加方便、舒适、丰富多彩。

例如:洗衣机、电冰箱、电子玩具、收录机、微波炉、电视机、录像机、音响设备、程控玩具、游戏机等。

工业控制的应用机电一体化是机械工业发展的方向。

机电一体化产品是集机械技术、微电子技术、计算机技术于一体,具有智能化特征的机电产品,例如微机控制的车床、钻床等。

单片机广泛用于导弹的导航装置、飞机上各种仪表的控制、计算机的网络通信与数据传输、机器人、工业自动化过程的实时控制和数据处理。

在比较复杂的系统中,常采用分布式多机系统。

多机系统一般由若干功能各异的单片机组成,各自完成特定的任务,它们通过串行通信相互联系。

协调工作。

单片机的高可靠性和强抗干扰能力,使它可以置于恶劣课程设计的目的和意义1、目的:(1)掌握单片机中有关指令的使用方法。

(2)掌握循环程序的设计方法。

(3)掌握子程序的应用方法。

(4)掌握延时时间的计算、应用。

课题设计意义计算机与计算机或计算机与终端之间的数据传送可以采用串行通讯和并行通讯二种方式。

由于串行通讯方式具有使用线路少、成本低,特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用。

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

9.一键多功能按键识别技术
1.实验任务
如图4.9.1所示,开关SP1接在P3.7/RD管脚上,在AT89S51单片机的P1端口接有四个发光二极管,上电的时候,L1接在P1.0管脚上的发光二极管在闪烁,当每一次按下开关SP1的时候,L2接在P1.1管脚上的发光二极管在闪烁,再按下开关SP1的时候,L3接在P1.2管脚上的发光二极管在闪烁,再按下开关SP1的时候,L4接在P1.3管脚上的发光二极管在闪烁,再按下开关SP1的时候,又轮到L1在闪烁了,如此轮流下去。

2.电路原理图
图4.9.1
3.系统板上硬件连线
(1.把“单片机系统”区域中的P3.7/RD端口连接到“独立式键盘”区域中的SP1端口上;
(2.把“单片机系统”区域中的P1.0-P1.4端口用8芯排线连接到“八路发光二极管指示模块”区域中的“L1-L8”端口上;要求,P1.0连接到L1,
P1.1连接到L2,P1.2连接到L3,P1.3连接到L4上。

4.程序设计方法
(1.设计思想由来
在我们生活中,我们很容易通过这个叫张三,那个叫李四,另外一个是王五;那是因为每个人有不同的名子,我们就很快认出,同样,对于要通过一个按键来识别每种不同的功能,我们给每个不同的功能模块用不同的ID号标识,这样,每按下一次按键,ID的值是不相同的,所以单片机就很容易识别不同功能的身份了。

(2.设计方法
从上面的要求我们可以看出,L1到L4发光二极管在每个时刻的闪烁的时间是受开关SP1来控制,我们给L1到L4闪烁的时段定义出不同的ID号,当L1在闪烁时,ID =0;当L2在闪烁时,ID=1;当L3在闪烁时,ID=2;当L4在闪烁时,ID=3;很显然,只要每次按下开关K1时,分别给出不同的ID号我们就能够完成上面的任务了。

下面给出有关程序设计的框图。

5.程序框图
图4.9.2
6.汇编源程序
ID EQU 30H
SP1 BIT P3.7
L1 BIT P1.0
L2 BIT P1.1
L3 BIT P1.2
L4 BIT P1.3
ORG 0
MOV ID,#00H START: JB K1,REL
LCALL DELAY10MS
JB K1,REL
INC ID
MOV A,ID
CJNE A,#04,REL
MOV ID,#00H REL: JNB K1,$
MOV A,ID
CJNE A,#00H,IS0
CPL L1
LCALL DELAY
SJMP START
IS0: CJNE A,#01H,IS1
CPL L2
LCALL DELAY
SJMP START
IS1: CJNE A,#02H,IS2
CPL L3
LCALL DELAY
SJMP START
IS2: CJNE A,#03H,IS3
CPL L4
LCALL DELAY
SJMP START
IS3: LJMP START DELAY10MS: MOV R6,#20
LOOP1: MOV R7,#248
DJNZ R7,$
DJNZ R6,LOOP1
RET
DELAY: MOV R5,#20
LOOP2: LCALL DELAY10MS
DJNZ R5,LOOP2
RET
END
7.C语言源程序
#include <A T89X51.H>
unsigned char ID;
void delay10ms(void)
{
unsigned char i,j;
for(i=20;i>0;i--)
for(j=248;j>0;j--);
}
void delay02s(void)
{
unsigned char i;
for(i=20;i>0;i--)
{delay10ms();
}
}
void main(void)
{ while(1)
{ if(P3_7==0)
{delay10ms();
if(P3_7==0)
{
ID++;
if(ID==4)
{
ID=0;
}
while(P3_7==0);
}
}
switch(ID)
{ case 0:
P1_0=~P1_0;
delay02s();
break;
case 1:
P1_1=~P1_1;
delay02s();
break;
case 2:
P1_2=~P1_2;
delay02s();
break;
case 3:
P1_3=~P1_3;
delay02s();
break;
}
}
}。

相关文档
最新文档