问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

51单片机基础篇系列-51单片机基础开发流程和基本I/O口

创作时间:
作者:
@小白创作中心

51单片机基础篇系列-51单片机基础开发流程和基本I/O口

引用
CSDN
1.
https://blog.csdn.net/in_seattle/article/details/136607162

本文将详细介绍51单片机的基础开发流程和基本I/O口知识,包括开发平台的组成、开发条件、软件开发流程、基本特性以及引脚功能等。适合初学者学习51单片机的基础知识。

51开发平台的组成

单片机应用系统(也叫目标系统)

硬件:

用户可以自己设计制作,也可以采用现成的开发板快捷搭建

软件:

用户自己编写,编程器(也叫烧写器)STC的所有51单片机均不需要编程器,通过串口或USB口下载程序

开发工具

硬件

软件

通过集成开发环境(将编辑器,C编译器,软件仿真器软件全部集成在一个软件中)STC-ISP下载软件。

单片机的开发

单片机的开发条件和工作主要包括硬件条件,软件条件,软硬件设计,软硬件仿真,开发系统调试和运作等

51软件开发的大致流程

  • 用C语言编写好源程序,(在电脑上的编辑器软件中)
  • 将源程序(也叫源代码,源文件)编译成目标程序(也叫目标代码,机器码,目标文件,HEX文件),(调用电脑上的C语言编译器软件)
  • 用下载软件将目标程序写入单片机芯片中
  • 写入后会自动运行目标程序
  • 如果程序运行后不正常,可以用人工检查,软件仿真器,硬件仿真器,串口助手等技术手段排除所编程序中存在的各种错误,错误排除后,再重复上面的3,4

MCS-51单片机的基本特性

  1. 8位的CPU,片内有振荡器和时针电路,工作频率为1~12MHz
  2. 片内有128/256字节RAM
  3. 片内有OK/4K/8K字节,程序存储器ROM
  4. 21/26个特殊功能寄存器(SFR)4个8位的
  5. 并行I/O口
  6. 1个全双工串行口(SIO/UART)
  7. 2/3个16位定时器/计数器
  8. 可处理5/6个中断源,两级中断优先级 内置1个布尔处理器和1个布尔累加器
  9. MCS-51指令集含111条指令(用C语言不需要记指令的)
    VCC,GND:正电源端与接地端(+5v/3,3v/2,7v)不同的单片机可以允许不同的工作电压,不同的单片机表现出的功耗也不同
    XTAL1,XTAL2:片内震荡电路输入/输出端
    通常外接一个晶振,两个电容,也可以由XTAL1端接入外部时钟,此时应将XTAL2接地
    CPU总是按照一定的时钟节拍与时序工作
    震荡周期/时钟周期:Tc=晶振频率fosc(或外加频率)的倒数
    状态周期:Ts=2个时钟周期(Tc)
    机器周期:Tm=6个状态周期(Ts)=12个震荡周期(Tc)
    指令周期:Ti:执行一条指令所需的机器周期(Tm)数
    震荡周期=晶振周期fosc的倒数
    一个机器周期=12个震荡周期
    1个指令周期=1,2,4个机器周期
    RESET:复位端(正脉冲有效,宽度>8 ms)
    复位使单片机进入某种确定的初始状态

单片机的引脚

EA端

EA/Vpp:寻址外部ROM控制端/编程电源输入端
低有效,片内无ROM时必须接地
片内有ROM时应当接高电平
对片内ROM编程时编程正电源加到此端

ALE端

ALE/PROG:地址锁存允许/编程脉冲输入端
PO口寻址外部低8位地址时接外部存储器 C端;ALE端平时会输出周期正脉冲,F=FOSC/6,对片内ROM编程时编程脉冲由此端输入

如何通过I/O口输出电平信号

  • 单片机和外部设备的交互,无论输入还是输出,都是通过I/O口进行的
  • I/O口在进行数据的输入输出之前,必须先设置IO模式
  • IT单片机所有I/O口均可通过对PnM1,PnM0这两个控制寄存器配置成4种工作类型之一,4中工作类型分别为:准双向口(标准8 0 5 1 输出模式,输入输出时有弱上拉),推挽输出(也称强输出),仅为输入(也是输出高阻)或开漏输出,上电复位后为准双向口(传统8051的I/O口)模式
  • 注意,传统8051的I/O口输出不需要设置,输入时要给写1
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号