2005-05-01 22:03:00 fendysun 阅读数 2247

  C51单片机P0口和中断输入口要注意的问题    

 

如果p0口作为输入输出口时,如果这时该端口的负载恰好是一个晶体管的基极,且该端子输出为 1,那么

导通的pn结会把该端口拉低,如过此时恰好读这个端口,会将“1”误读成“0”,为了避免这种错误,可

以用一条指令:ORL P0,A 即将p0口锁存器中的数据,和累加器A中的数据"逻辑或",这样的数据就不会错

了。

      中断的一个问题:中断有两种方式:1边沿触发和电平触发。如果使用边沿触发,那么问题不大,

如果用的是电平触发。虽然有的是硬件将IE0和IE1清零,但是加在INT0和INT1上的低电平不撤销,这在下

一个极其周期cpu检测外部中断时,发现有低电平在中断输入上,又会使IE0和IE1置位,从而产生错误结

果。这时要手动清除。

2014-09-08 16:17:13 littleThink 阅读数 716

一、并行口,即普通IO口功能

由于单片机普通IO功能比较简单,特殊功能寄存器SFR中P0、P1、P2和P3中的值对应实际引脚的电平。

如:sfr P1 = 0X90; P1 = 0X00;

input = P1;

更多细节参考:http://www.go-gddq.com/html/51DanPianJi/2011-12/854045.htm

下面参考上面文献,总结:

(1)P0口作为普通IO口时,此时控制信号为0,即场效应管V1截止,多路开关输入与D锁存器的反相输出端相接。

输出:


当内部总线为1时,V2截止,此时若引脚无上拉电阻,引脚为高阻状态。当内部总线为0时,V2导通,引脚为低电平。

输入:


51单片机约定,凡属于读-修改-写方式的指令,从锁存器读入信号,其它方式从引脚上读入信号。

当从引脚上读入信号时,必须先使V2截止,即先使内部总线为1,此时读取的值才有效。

(2)P1、P2和P3口作为普通IO口时,P2口的控制信号为0,多路开关输入与D锁存器的反相输出端相接;P3第二功能为1。



由上图可知,为了读取引脚状态,必须使V2截止,即内部总线为1;由于单片机复位后,每个端口自动写1,即可读状态。但曾对IO口写0时,要想读取IO口状态,必须先写1;


2017-09-08 19:19:09 Cherish241006 阅读数 778

第一章
1、51单片机P0~P3口的结构有什么不同? P3口有哪些第二功能?
答:P0、P2口除了作为通用I/O口外,P0还可以作为外接存储器的低8位地址和数据端口,P2口可以用来外接存储器的高8位地址;P1口通常只作为输入、输出口使用;P3口除了作为通用I/O口外,每个引脚都具有第二功能。
P3口引脚的第二功能:
RXD(串行输入口)、TXD(串行输出口)、INT0(外部中断0)、INT1(外部中断1)、T0(定时器0的计数输入)、T1(定时器1的计数输入)、WR(外部数据存储器写脉冲)、RD(外部数据存储器读脉冲)。

2、51单片机定时/计数器的定时方式和计数方式的区别是什么?
答:(1)定时方式实现对单片机内部的时钟脉冲或分频后的脉冲进行计数。
(2)计数方式实现对外部脉冲的计数。

3、51单片机中断系统的组成有哪些?
答:8051有5个中断源,有两个中断优先级控制,可实现中断服务嵌套。两个外部中断INT0、INT1,两个定时器中断T0、T1,还有一个串行中断。
中断的控制由中断允许寄存器IE和中断优先级寄存器IP实现。

4、51单片机有哪几种复位方式?它们的工作过程是什么?
答:上电复位,手动复位。

5、51单片机的时钟周期、机器周期、指令周期是如何定义的?当振荡频率为6MHz时,一个机器周期是多少微秒?
答:时钟周期:时钟周期即为振荡周期,又称为状态周期或状态时间S,分为P1节拍和P2节拍。通常在P1节拍完成算术逻辑操作,在P2节拍完成内部寄存器之间的传送操作。
机器周期:一个机器周期由6个状态组成,如果把一条指令的执行过程分为几个基本操作,则将完成一个基本操作所需的时间称作机器周期。单片机的单周期指令执行时间为一个机器周期。
指令周期:指令周期及执行一条指令所占用的全部时间,通常为1~4个机器周期。
一个机器周期=6个状态周期=12个节拍

6、最小系统的5点要求
答:(1)电源;(2)复位电路;(3)时钟电路;(4)PIN31(EA/VPP)拉高;(5)P0上拉电阻。
单片机最小系统(或称为最小应用系统),是指用最少的元件组成的单片机可以工作的系统。对于51系列单片机来说,最小系统一般包括单片机、按键输入、显示输出、复位电路和晶振电路。
7、结合模数混合框图,介绍一种电子产品的组成。

8、单片机小精灵

9、新软件

第二章
1、简述创建一个新Keil C51 工程的步骤
答:界面菜单Project——选择创建一个新项目——键入项目名称保存项目到独立文件夹——单击保存——弹出“Select Device for Target ‘Target1’”对话框——选择Atmel(AT89C52)——新建源程序文件并保存为.c文件——点击项目工作区“Target 1”左边加号——右击文件夹“Source Group 1”——选中“Add Files to Group ‘Source Group 1’”——选择已创建的源程序文件——“Add”——“Close”——“Target”项目环境选项卡——Xtal(MHz)选项填“11.0592”(OK)——Build Target——编译成功后进行调试——选中“Options for ‘Target1’”对话框的“Output”页中的“Create HEX File”复选框

2、生成.HEX 文件的目的是什么,在Keil 51C 中如何生成 .HEX ?
答:将编译好的程序下载到EPROM编程器或模拟器中;
选中“Options for ‘Target1’”对话框的“Output”页中的“Create HEX File”复选框。

3、断点的作用是什么,如何在Keil C51中设置断点?
答:对异步发生或难以预先设定的程序进行控制;
(1)选择 Debug——Start/Stop Debug session
(2)选择 Debug——Insert/Remove BreakPoint 设置或移除断点; Debug——Enable/Disable BreakPoint 开启或暂停光标所在行的断点功能;Debug——Disable All BreakPoint 暂停所有断点;Debug——Kill All BreakPoint 清除所有的断点设置;
(3)利用Debug菜单项,打开Break point 对话框,查看定义或更改断点的设置;
(4)Output Window 窗口的 Command 页使用 Break set、Break kill、 Break Enable 和 Break Disable 选项进行断点设置。

4、使用P2口连接8个LED灯,设计一个流水灯程序完成一次点亮、间隔点亮、循环点亮等功能,并练习断点的设置和进行调试。

2013-04-20 15:54:27 HOLLY_Worm 阅读数 583

单片机就是一块在硅片上集成了微处理器、存储器及各种输入输出接口的芯片。因为具有了计算机的基本属性,而被称为单片机。

对单片机的控制,其实就是对I/O口的控制,无论单片机对外界进行何种控制,或接受外部的何种控制,都是通过I/O口进行的。51单片机总共有P0、P1、P2、P3四个8位双向输入输出端口,每个端口都有锁存器、输出驱动器和输入缓冲器。4个I/O端口都能作输入输出口用,其中P0和P2通常用于对外部存储器的访问。


yinjiaotupian


____________________________________________________________________________________________________________________________________

C-51的数据类型扩充定义 :

sfr:特殊功能寄存器声明
sfr16:sfr的16位数据声明
sbit:特殊功能位声明
bit:位变量声明

_____________________________________________________________________________

包含的头文件:

reg52.h

_____________________________________________________________________________

C-51运算符:

>>  <<         (位右移    位左移)
& |             (按位与    按位或)
^ ~             (按位异或  按位取反)

——————————————————————————————————————

最小系统能够运行起来的必要条件:

   1.电源 2.晶振3.复位电路

_______________________________________________________________________

学习单片机主要掌握:
(1)对单片机任意IO口的随意操作
  1.输出控制电平高低

2.输出检测电平高低。


(2)定时器:重点掌握最常用的方式2

(3)中断:外部中断、定时器中断、串口中断


(4)串口通信:单片机之间、单片机与计算机间

2017-05-02 09:40:00 weixin_34362790 阅读数 6

本节书摘来异步社区《例说8051:单片机程序设计案例教程》一书中的第2章,第2.2节,作者:张义和,陈敌北,更多章节内容可以访问云栖社区“异步社区”公众号查看

2-2 8051的输入/输出口

例说8051:单片机程序设计案例教程
MCS-51迷人的地方之一,就在于其四个输入/输出口!这四个看似相同的输入/输出口其实还是有点差异的,说明如下。

圓 Port 0
Port 0为8位、可位寻址的输入/输出端口。以直插式封装的8051为例,P0.0为39脚,P0.1为38脚……P0.7为32脚,它的内部结构如图2-5所示。

cb967c3f7016ed956375ecc2eb7e78919d1d7b43

Port 0的特点说明如下:

● Port 0的8位都是漏极开路输出(open drain,简称OD),而每个引脚可驱动8个LS型TTL负载。

● Port 0内部无上拉电阻,作为输出功能时,外部必须接上拉电阻(10k即可)。

● 若要作为输入功能,必须先输出高电平(1),才能读取该端口所连接的外部数据。

● 若系统连接外部存储器,则Port 0可作为地址总线(A0~A7)及数据总线(D0~D7)的多任务复用引脚。

圓 Port 1
Port 1为8位、可位寻址的输入/输出端口,以直插式封装的8051为例,P1.0为1脚,P1.1为2脚……P1.7为8脚,它的内部结构如图2-6所示。

Port 1的特点说明如下:

● Port 1内部具有约30k上拉电阻,作为输出功能时,不用连接外部上拉电阻。

● Port 1的8位类似漏极开路输出(OD),每个引脚可驱动4个LS型TTL负载。

● 若要作为输入功能,必须先输出高电平(1),才能读取该端口所连接的外部数据。

● 若是8052/8032,则P1.0兼具有Timer 2的外部脉冲输入功能(即T2),P1.1兼具有Timer 2的捕获/重新加载的触发输入功能(即T2EX)。

圓 Port 2
Port 2为8位、可位寻址的输入/输出端口。以直插式封装的8051为例,P2.0为21脚,P2.1为22脚,……P2.7为28脚,它的内部结构如图2-7所示。

e2ea39004a71f05a834e12233e80e483daacd745

Port 2的特点说明如下:

● Port 2内部具有约30k上拉电阻,作为输出功能时,不用连接外部上拉电阻。

● Port 2的8位类似漏极开路输出(OD),每个引脚可驱动4个LS型TTL负载。

● 若要作为输入功能,必须先输出高电平(1),才能读取该端口所连接的外部数据。

● 若系统连接外部存储器,而外部存储器的地址线超过8位时,则Port 2可作为地址总线(A8~A15)引脚。

圓 Port 3
Port 3为8位、可位寻址的输入/输出端口。以直插式封装的8051为例,P3.0为10脚,P3.1为11脚,……P3.7为17脚,它的内部结构如图2-8所示。

0cf778a1bc6de284176e9ad3847a96dbd832da5a

Port 3的特点说明如下:

● Port 3内部具备约30k上拉电阻,作为输出功能时,不用连接外部上拉电阻。

● Port 3的8位类似漏极开路输出(OD),每个引脚可驱动4个LS型TTL负载。

● 若要作为输入功能,必须先输出高电平(1),才能读取该端口所连接的外部数据。

● Port 3的8个引脚各有第二功能,如表2-4所示。

58abc873ae414324a5b4d8cf3d33be88e43c7dc7

功能实现: 选取P3口读取8位 双列直插

博文 来自: wangming520liwei

单片机01

阅读数 887

51单片机

阅读数 91

没有更多推荐了,返回首页