目录

  • 1 项目一 单片机基础知识
    • 1.1 单片机概述
    • 1.2 51系列单片机的结构组成
    • 1.3 单片机存储结构
    • 1.4 单片机I/O口及编程语言
  • 2 项目二 单片机编译软件使用及仿真
    • 2.1 单片机编译软件的使用及电路仿真
    • 2.2 任务1 汽车“双闪”灯控制系统设计
  • 3 项目三 单片机循环彩灯制作
    • 3.1 知识准备:数制及编码
    • 3.2 任务1 循环彩灯的简易控制
    • 3.3 任务2 人工可干预的循环彩灯控制
  • 4 项目四 简易计算器设计与制作
    • 4.1 知识准备:算术指令
    • 4.2 任务1 简易计算机的制作
  • 5 项目五 简易秒表设计与制作
    • 5.1 知识准备:七段数码管控制
    • 5.2 知识准备:十进制数调整指令
    • 5.3 任务1 秒表系统电路设计
  • 6 项目六 交通灯控制系统设计
    • 6.1 知识准备:交通灯发展史
    • 6.2 知识准备:单片机定时/计数器
    • 6.3 任务  交通灯控制系统设计
      • 6.3.1 任务1 交通信号灯驱动电路设计
      • 6.3.2 任务2  信号灯倒计时显示电路设计
      • 6.3.3 任务3 交通灯控制系统调试
  • 7 项目七 单片机中断控制应用
    • 7.1 知识准备:中断系统概念及结构
    • 7.2 知识准备:中断控制
    • 7.3 任务1  可中断控制的循环彩灯系统
    • 7.4 任务2 门铃(音乐)芯片的制作
  • 8 项目八 单片机串行口应用
    • 8.1 知识准备:51系列单片机串行通信
    • 8.2 知识准备:串行通信的程序设计
      • 8.2.1 常用的串行D/A转化器-MAX538
      • 8.2.2 常用的串行A/D转换器-MAX187
    • 8.3 任务1 单片机双机通信
  • 9 实训讲义
    • 9.1 单片机实训讲义
任务1 单片机双机通信

本项目采用AT89S51单片机组成通信系统进行数据的接收和发送。单片机A作为发送方,单片机B将接收的数据输出到自己的P0口,通过二极管发光以显示对应的开关状态数据。

  • 任务说明

双机通信的过程包括发送和接收,通信软件发送机中包含发送程序,接收机中包含接收程序,异步串行通信通过查询方式来确定数据的发送和接收。本项目采用AT89C51组成通信系统进行数据的接收和发送。单片机A的P1口接拨位开关S0~S7,单片机A的CPU读取P1口的开发状态并由它的11脚(TXD)传给单片机B的10脚(RXD)。单片机B将接收的数据输出P0口,通过二极管发光以显示对应的开发状态数据。


  • 原理图


  • 源代码--双机通信


1、单片机A发送程序设计

单片机A发送程序,主要包括堆栈指针、串行口控制寄存器、定时器方式控制寄存器、定时器初始值的设置,读取开关状态并保存,以及串行数据发送。

2、单片机B接收程序设计

单片机B的接收程序设计与单片机A的接收程序设计略有不同,即单片机B在串行口控制寄存器SCON的设置上注意了接受位RI的置1操作。其他不同之处还有最后的接收数据成功后转送累积起A的操作和对接收位RI重新复位的操作。

  • 实验效果