目录

  • 1 单片机基础知识概述
    • 1.1 单片机预备知识
    • 1.2 Proteus应用简介
    • 1.3 第一章作业
  • 2 MCS-51单片机的结构及原理
    • 2.1 MCS-51单片机的功能模块和引脚
    • 2.2 CPU
    • 2.3 存储器划分方法
    • 2.4 SFR及位寻址区
    • 2.5 并行I/O口
    • 2.6 单片机的复位、时钟与时序
  • 3 单片机的C51基础知识
    • 3.1 C51语言概述及程序结构
    • 3.2 C51数据结构
      • 3.2.1 C51的变量
      • 3.2.2 C51的基本执行语句
      • 3.2.3 C51的指针
      • 3.2.4 C51的数组
      • 3.2.5 C51的函数
    • 3.3 Keil和Proteus
  • 4 单片机I/O口方式的应用
    • 4.1 C51联合仿真方法
    • 4.2 I/O端口的简单应用
      • 4.2.1 发光二极管与应用编程
      • 4.2.2 数码管静态显示原理与编程
      • 4.2.3 按钮与编程
    • 4.3 I/O端口的进阶实践
  • 5 单片机的中断系统
    • 5.1 567章综合讲解
    • 5.2 中断的概念
    • 5.3 中断控制系统
    • 5.4 中断系统的参数设置
    • 5.5 中断处理过程
    • 5.6 中断的编程和应用举例
  • 6 单片机的定时/计数器
    • 6.1 定时/计数器的结构与 工作原理
    • 6.2 定时/计数器的工作方式1
    • 6.3 定时/计数器的工作方式0,2,3
    • 6.4 定时/计数器的控制
    • 6.5 定时/计数器的编程和应用1
    • 6.6 定时/计数器的编程和应用2
  • 7 单片机的串行口及应用
    • 7.1 串行通信概述
    • 7.2 MCS-51的串行口控制器
    • 7.3 串行工作方式
    • 7.4 567综合讲解3
    • 7.5 串行通信编程示例
  • 8 单片机C语言程序设计(c51编程-2022-1)
    • 8.1 项目1:认识编程载体-单片机和开发环境
      • 8.1.1 目标与知识技能要求
      • 8.1.2 认识单片机和计算机语言
      • 8.1.3 KEIL入门操作
        • 8.1.3.1 操作步骤
        • 8.1.3.2 常见错误
      • 8.1.4 结构化程序设计--建立函数概念
      • 8.1.5 单片机存储器及数据交流之IO口
      • 8.1.6 KEIL安装 说明
      • 8.1.7 Proteus  安装说明
      • 8.1.8 KEIL串口输出汉字乱码解决方案
      • 8.1.9 学习参考网站
      • 8.1.10 小结
      • 8.1.11 测验1
      • 8.1.12 教材PDF
      • 8.1.13 单片机初学的疑问解答
      • 8.1.14 学生作品展示
    • 8.2 项目2  多变的花样灯
      • 8.2.1 目标-知识与技能要求
      • 8.2.2 任务1:亮一个灯——多个灯
        • 8.2.2.1 电路的PROTEUS绘制
        • 8.2.2.2 网络标号连线法
        • 8.2.2.3 亮一个灯
          • 8.2.2.3.1 引脚与位——硬软件对应
          • 8.2.2.3.2 仿真测试、判断
          • 8.2.2.3.3 代码下载到STC单片机中
          • 8.2.2.3.4 实物测试
        • 8.2.2.4 8位引脚与16进制数
        • 8.2.2.5 亮多个灯-LED显示学号
          • 8.2.2.5.1 亮多个灯
          • 8.2.2.5.2 用LED表示 学号
        • 8.2.2.6 用BCD数码管显示学号
      • 8.2.3 任务2:亮点流动的花样灯
        • 8.2.3.1 认识头文件
        • 8.2.3.2 顺序结构的程序设计
        • 8.2.3.3 用库函数CROL/CROR
          • 8.2.3.3.1 循环移位函数说明
          • 8.2.3.3.2 变化规律分析与表达式
          • 8.2.3.3.3 参考程序
      • 8.2.4 任务3:一一亮起的花样灯
        • 8.2.4.1 讲解
        • 8.2.4.2 位逻辑运算-与或非-异或,《、》
        • 8.2.4.3 动态数据分析
        • 8.2.4.4 自定义头文件dly05s.h
        • 8.2.4.5 参考程序
        • 8.2.4.6 随堂测
        • 8.2.4.7 仿真与实物对比视频
      • 8.2.5 任务4:高低4位交替的花样灯
        • 8.2.5.1 参考程序讲解
        • 8.2.5.2 进阶设计:两个亮点相向 / 相背
          • 8.2.5.2.1 用移位运算符实现
            • 8.2.5.2.1.1 用移位函数实现
        • 8.2.5.3 随堂测
      • 8.2.6 三种效果 的花样灯
        • 8.2.6.1 仿真与实物运行视频
        • 8.2.6.2 参考程序
        • 8.2.6.3 进阶:变速流水灯
        • 8.2.6.4 可变时长的延时程序:dly_nms.h
        • 8.2.6.5 算术及赋值复合运算符随堂测
      • 8.2.7 初识函数
      • 8.2.8 小结
      • 8.2.9 测验2
      • 8.2.10 教材PDF
    • 8.3 项目3:键控灯
      • 8.3.1 目标与知识技能要求
      • 8.3.2 任务1:键控灯——IF分支结构训练
        • 8.3.2.1 讲解-仿真
        • 8.3.2.2 参考程序
      • 8.3.3 任务2:键控灯2-IF-ELSE
        • 8.3.3.1 讲解-仿真
        • 8.3.3.2 参考程序
      • 8.3.4 任务3:键控灯3——IF-ELSE-IF 多分支
        • 8.3.4.1 讲解-仿真
        • 8.3.4.2 参考程序
      • 8.3.5 任务4:键控灯4——if 嵌套
        • 8.3.5.1 讲解-仿真
        • 8.3.5.2 参考程序
      • 8.3.6 任务5:键控灯5——switch语句训练
        • 8.3.6.1 讲解-仿真
        • 8.3.6.2 参考程序
        • 8.3.6.3 进阶设计
      • 8.3.7 任务6:学习循环结构训练
        • 8.3.7.1 讲解-仿真
        • 8.3.7.2 求和——参考程序
        • 8.3.7.3 BREAK  CONTINUE 语句
      • 8.3.8 任务7:键控灯6-综合FOR-WHILE
        • 8.3.8.1 讲解-仿真
        • 8.3.8.2 参考程序
        • 8.3.8.3 Proteus 源码调试-看时长
        • 8.3.8.4 循环语句随堂测
      • 8.3.9 任务8:键控灯7-FOR-BREAK
        • 8.3.9.1 讲解-仿真
        • 8.3.9.2 参考程序
      • 8.3.10 任务9:一位示意计数器设计
        • 8.3.10.1 任务 分析
          • 8.3.10.1.1 视频讲解
          • 8.3.10.1.2 OMF调试设置步骤
        • 8.3.10.2 进阶设计
      • 8.3.11 小结
      • 8.3.12 测验3
      • 8.3.13 教材PDF
    • 8.4 项目4:逻辑思维训练
      • 8.4.1 目标与知识技能要求
      • 8.4.2 任务1:用printf语句跟踪数据
        • 8.4.2.1 什么是数据类型
        • 8.4.2.2 标识符与常量 、变量、宏定义
        • 8.4.2.3 变量输出——printf()
        • 8.4.2.4 参考程序
        • 8.4.2.5 关于数据类型的测验
      • 8.4.3 任务2:歌星大赛计分——简单统计运算
        • 8.4.3.1 设计过程讲解
        • 8.4.3.2 程序流程、参考程序
        • 8.4.3.3 测试与判断
      • 8.4.4 任务3:车号是多少——推理
        • 8.4.4.1 设计过程讲解
        • 8.4.4.2 程序设计
        • 8.4.4.3 测试与判断
        • 8.4.4.4 进阶设计与思路点拨1:角谷猜想
      • 8.4.5 任务4:谁是罪犯——逻辑运算
        • 8.4.5.1 设计过程讲解
        • 8.4.5.2 程序设计
        • 8.4.5.3 测试与判断
        • 8.4.5.4 进阶设计与思路点拨2:新娘和新郞
      • 8.4.6 任务5:百鸡百钱——穷举、组合
        • 8.4.6.1 设计过程讲解、仿真
        • 8.4.6.2 程序设计
        • 8.4.6.3 测试与判断
        • 8.4.6.4 进阶设计与思路点拨3:换钱币
      • 8.4.7 任务6:冒泡排序——数组
        • 8.4.7.1 认识数组
        • 8.4.7.2 设计过程讲解、仿真
        • 8.4.7.3 程序设计
        • 8.4.7.4 进阶设计
      • 8.4.8 任务7:求解约瑟夫问题——结构数组
        • 8.4.8.1 结构体
        • 8.4.8.2 结构数组-班级学生信息表
        • 8.4.8.3 设计过程讲解、仿真
        • 8.4.8.4 程序设计
      • 8.4.9 局部、全局、外部变量--变量的时、空性
      • 8.4.10 小结
      • 8.4.11 测验4
      • 8.4.12 教材PDF
      • 8.4.13 补充阅读:比赛名次和凶手
    • 8.5 项目5:定时器/计数器、中断应用
      • 8.5.1 目标与知识技能要求
      • 8.5.2 中断系统简介
      • 8.5.3 任务1:用外中断干扰流水灯
        • 8.5.3.1 测试电路
        • 8.5.3.2 参考程序
        • 8.5.3.3 测试与进阶
      • 8.5.4 任务2:两中断干扰流水灯-中断优先级
        • 8.5.4.1 测试 电路
        • 8.5.4.2 参考程序
        • 8.5.4.3 测试与进阶
      • 8.5.5 任务3:多少个小球——计数器
        • 8.5.5.1 任务分析与思路
        • 8.5.5.2 单片机的计数器工作原理
        • 8.5.5.3 单个数码管应用
        • 8.5.5.4 测试电路
        • 8.5.5.5 程序设计
        • 8.5.5.6 测试与进阶
      • 8.5.6 任务4:定时产生2500Hz方法
        • 8.5.6.1 任务分析与构思
        • 8.5.6.2 测试电路
        • 8.5.6.3 程序设计
        • 8.5.6.4 测试与进阶
      • 8.5.7 任务5:长时间定时-static应用
        • 8.5.7.1 任务分析与构思
        • 8.5.7.2 参考电路
        • 8.5.7.3 程序设计
        • 8.5.7.4 测试与进阶
      • 8.5.8 任务6:T0定时产生不同频率的方波-推算公约数
        • 8.5.8.1 任务分析与构思
        • 8.5.8.2 测试电路
        • 8.5.8.3 程序设计
        • 8.5.8.4 测试与进阶
      • 8.5.9 任务7:测量正脉冲宽度
        • 8.5.9.1 任务分析与构思
        • 8.5.9.2 测试电路
        • 8.5.9.3 程序设计
        • 8.5.9.4 测试与进阶
        • 8.5.9.5 虚拟脉冲发生器应用
      • 8.5.10 任务8:键控PWM调光灯
        • 8.5.10.1 任务分析与构思
        • 8.5.10.2 测试电路
        • 8.5.10.3 程序设计
        • 8.5.10.4 测试与进阶
      • 8.5.11 测验5
      • 8.5.12 教材PDF
    • 8.6 项目6: 动态扫描技术应用
      • 8.6.1 目标与知识技能要求
      • 8.6.2 任务1:并联数码管显示生日
        • 8.6.2.1 任务分析与构思
        • 8.6.2.2 测试电路参考
          • 8.6.2.2.1 6联数码管简介
          • 8.6.2.2.2 74245手册
        • 8.6.2.3 程序构思与程序参考
          • 8.6.2.3.1 seg_dis.c
          • 8.6.2.3.2 dly_nms.h
          • 8.6.2.3.3 seg_dis.h
        • 8.6.2.4 测试与进阶
      • 8.6.3 任务2:可调时钟
        • 8.6.3.1 任务分析与构思
        • 8.6.3.2 测试电路参考
        • 8.6.3.3 程序构思与主程序  clk_led.c  参考
        • 8.6.3.4 测试与进阶
      • 8.6.4 任务3:多功能秒表——一键多用
        • 8.6.4.1 任务分析与构思
        • 8.6.4.2 测试电路参考
        • 8.6.4.3 程序构思 与主程序  mb.c  参考
        • 8.6.4.4 测试与进阶
      • 8.6.5 任务4:矩阵键盘识别
        • 8.6.5.1 任务分析与构思
        • 8.6.5.2 测试电路参考
        • 8.6.5.3 程序构思与程序参考
          • 8.6.5.3.1 keytest.c
          • 8.6.5.3.2 key16.h
        • 8.6.5.4 测试与进阶
      • 8.6.6 任务5:打地鼠游戏机设计
        • 8.6.6.1 任务分析与构思
        • 8.6.6.2 测试电路参考
        • 8.6.6.3 程序构思与主要程序 dishu.c  参考
        • 8.6.6.4 测试与进阶
      • 8.6.7 补充:指针及其应用
      • 8.6.8 测验6
      • 8.6.9 教材PDF
      • 8.6.10 小结
    • 8.7 项目7: 音乐门铃及串行通信
      • 8.7.1 目标与知识技能要求
      • 8.7.2 任务1:生日快乐歌
        • 8.7.2.1 任务分析与构思
        • 8.7.2.2 测试电路参考- 蜂鸣器简介与驱动
        • 8.7.2.3 程序构思与参考--music.c
          • 8.7.2.3.1 defn.h
          • 8.7.2.3.2 sondplay.c
        • 8.7.2.4 测试与进阶
      • 8.7.3 任务2:595串出3位数据-串口0方式应用
        • 8.7.3.1 任务分析与构思
        • 8.7.3.2 测试电路参考
        • 8.7.3.3 74HC 595简介
        • 8.7.3.4 串口简介
        • 8.7.3.5 程序构思与参考
        • 8.7.3.6 测试与进阶
      • 8.7.4 任务3:用595中行控制8*8点阵
        • 8.7.4.1 任务分析与构思
        • 8.7.4.2 测试电路参考
        • 8.7.4.3 程序构思与参考
        • 8.7.4.4 测试与进阶
        • 8.7.4.5 8*8点阵补充说明
          • 8.7.4.5.1 8*8仿真模型说明
          • 8.7.4.5.2 8*8实物简介
      • 8.7.5 任务4:双单片机间串行通信
        • 8.7.5.1 任务分析与构思
        • 8.7.5.2 测试电路参考
        • 8.7.5.3 程序构思与参考
        • 8.7.5.4 测试与进阶
        • 8.7.5.5 用串口调试助手监测目标板上的数据
      • 8.7.6 18B20测温
        • 8.7.6.1 任务分析与构思
        • 8.7.6.2 18B20简介
        • 8.7.6.3 程序构思与参考
          • 8.7.6.3.1 主程序
          • 8.7.6.3.2 延时程序
          • 8.7.6.3.3 测温程序
      • 8.7.7 测验7
    • 8.8 项目8:AD及DA接口应用
      • 8.8.1 目标与知识技能要求
      • 8.8.2 任务1:LCD显示的简易 电压表
        • 8.8.2.1 任务分析与构思
        • 8.8.2.2 测试电路参考
          • 8.8.2.2.1 LCD602 简介
          • 8.8.2.2.2 ADC0831 简介及程序设计
        • 8.8.2.3 程序构思与参考
          • 8.8.2.3.1 1602.h
          • 8.8.2.3.2 myhead.h
          • 8.8.2.3.3 dly_nms.h
          • 8.8.2.3.4 ADC0831.h
          • 8.8.2.3.5 ADC0831-1602.c
        • 8.8.2.4 测试与进阶
      • 8.8.3 任务2:简易波形发生器
        • 8.8.3.1 任务分析与构思
        • 8.8.3.2 测试电路参考
        • 8.8.3.3 程序构思与参考
        • 8.8.3.4 测试与进阶
        • 8.8.3.5 DAC0832- LM358 简介
          • 8.8.3.5.1 DAC0832简介
          • 8.8.3.5.2 运放LM358\LM324简介
      • 8.8.4 测验8
中断控制系统
  • 1 教学视频
  • 2 PPT