尚硅谷Java培训

嵌入式51单片机

视频介绍

51单片机凭借简单的架构和成熟的生态系统,是嵌入式开发入门学习的理想选择。通过学习51单片机,可以轻松掌握微控制器的核心概念,理解嵌入式系统的基本原理,并熟悉软硬件协同工作的方式,为后续学习奠定坚实的基础!

本套教程涵盖51单片机各大核心模块:通用输入输出端口、中断系统、定时器、串口通信等,这些概念在更高级的微控制器,如STM32中都是通用的,因此学完51单片机,能够更快地上手这些更复杂的微控制器。

教程采用案例式教学,案例驱动讲解如数码管、LED点阵、按键、蜂鸣器、OLED屏幕等,逐行手敲代码,通过案例将理论与实践相结合,让初学者更加深入地理解单片机中的核心概念。还是尚硅谷一贯的风格:保姆式讲解,败家式赠送。除了视频,配套的资料:代码、笔记、软件,一个都不能少,一站式服务,全部打包带走,学习无忧!
 

视频目录 选集

  • 001.教程简介
  • 002.51单片机-简介
  • 003.51单片机-引脚功能
  • 004.51单片机-最小系统
  • 005.开发环境-硬件
  • 006.开发环境-软件-概述
  • 007.开发环境-软件-Keil安装
  • 008.开发环境-软件-Keil激活
  • 009.开发环境-软件-ISP
  • 010.快速入门-编码&编译
  • 011.快速入门-烧录
  • 012.快速入门-案例解读
  • 013.LED案例-闪烁
  • 014.LED案例-闪烁-延时函数
  • 015.LED案例-6T模式
  • 016.LED案例-流水灯-需求说明
  • 017.LED案例-流水灯-编码实现
  • 018.VSCode环境-EIDE-安装
  • 019.VSCode环境-EIDE-创建项目
  • 020.VSCode环境-EIDE-编译项目
  • 021.VSCode环境-EIDE-烧录项目
  • 022.VSCode环境-EIDE-烧录项目问题说明
  • 023.数码管-概述
  • 024.数码管-静态显示-需求说明
  • 025.数码管-静态显示-硬件设计-初步设计
  • 026.数码管-静态显示-硬件设计-138译码器
  • 027.数码管-静态显示-硬件设计-单片机引脚内部结构
  • 028.数码管-静态显示-硬件设计-245驱动器
  • 029.数码管-静态显示-硬件设计-完整原理图
  • 030.数码管-静态显示-软件设计-思路分析
  • 031.数码管-静态显示-软件设计-提示
  • 032.数码管-静态显示-软件设计-编码实现
  • 033.C89变量声明语法说明
  • 034.数码管-动态显示-软件设计-思路分析
  • 035.数码管-动态显示-软件设计-编码实现
  • 036.模块化编程-规范说明
  • 037.模块化编程-数码管改造
  • 038.模块化编程-EIDE模版
  • 039.模块化编程-header代码模版
  • 040.独立按键-概述
  • 041.独立按键-硬件设计
  • 042.独立按键-软件设计-方案一
  • 043.独立按键-软件设计-方案二
  • 044.独立按键-软件设计-方案二-问题分析
  • 045.独立按键-软件设计-方案三
  • 046.独立按键-软件设计-规范化
  • 047.矩阵按键-硬件设计
  • 048.矩阵按键-引脚工作模式
  • 049.矩阵按键-需求说明
  • 050.矩阵按键-按键检测
  • 051.矩阵按键-数码管显示
  • 052.矩阵按键-数码管显示-亮度问题说明
  • 053.矩阵按键-数码管显示-按键阻塞问题
  • 054.矩阵按键-数码管显示-循环检测按键
  • 055.蜂鸣器-概述
  • 056.蜂鸣器-仿真
  • 057.蜂鸣器-电感工作原理
  • 058.蜂鸣器-瞬时高压产生原理
  • 059.蜂鸣器-编码实现
  • 060.中断系统-概述
  • 061.中断系统-中断源
  • 062.中断系统-中断服务程序
  • 063.中断系统-中断优先级
  • 064.中断系统-外部中断-硬件设计
  • 065.中断系统-外部中断-使用说明
  • 066.中断系统-外部中断-编码实现
  • 067.定时器-概述
  • 068.定时器-使用说明-设置工作方式
  • 069.定时器-使用说明-设置脉冲计数器工作方式
  • 070.定时器-使用说明-设置脉冲计数器工作方式-补充
  • 071.定时器-使用说明-设置脉冲计数器初始值
  • 072.定时器-使用说明-启动定时器
  • 073.定时器-使用说明-中断服务程序
  • 074.定时器-LED闪烁-实现思路
  • 075.定时器-LED闪烁-编码实现
  • 076.定时器-当前代码痛点
  • 077.定时器-封装-思路分析
  • 078.定时器-封装-编码-上
  • 079.定时器-封装-编码-下
  • 080.定时器-封装-使用说明
  • 081.点阵LED-概述
  • 082.点阵LED-静态显示-硬件设计-概述
  • 083.点阵LED-静态显示-硬件设计-595工作原理
  • 084.点阵LED-静态显示-软件设计-思路分析
  • 085.点阵LED-静态显示-软件设计-方法定义
  • 086.点阵LED-静态显示-软件设计-编码实现
  • 087.点阵LED-静态显示-软件设计-定时器扫描
  • 088.点阵LED-滚动显示-实现思路
  • 089.点阵LED-滚动显示-编码实现
  • 090.UART通信-基础概念
  • 091.UART通信-基本定义
  • 092.UART通信-通信协议-数据格式
  • 093.UART通信-通信协议-双方约定
  • 094.51单片机串口-概述
  • 095.51单片机串口方式1-波特率-概述
  • 096.51单片机串口方式1-波特率-定时器1-初始化配置
  • 097.51单片机串口方式1-波特率-定时器1-初始值
  • 098.51单片机串口方式1-发送数据-概述
  • 099.51单片机串口方式1-接收数据-概述
  • 100.51单片机串口方式1-中断说明
  • 101.串口通信需求-硬件设计
  • 102.串口通信需求-单字节命令-思路分析
  • 103.串口通信需求-单字节命令-编码-初始化
  • 104.串口通信需求-单字节命令-编码-发送数据
  • 105.串口通信需求-单字节命令-编码-接收数据
  • 106.串口通信需求-单字节命令-编码-中断冲突解决
  • 107.串口通信需求-单字节命令-编码-中断冲突说明
  • 108.串口通信需求-多字节命令-思路分析
  • 109.串口通信需求-多字节命令-编码实现
  • 110.IIC通信-概述
  • 111.IIC通信-信号线
  • 112.IIC通信-主从架构
  • 113.IIC通信-空闲状态&起始&结束信号
  • 114.IIC通信-确认信号
  • 115.IIC通信-从机地址&读写标识
  • 116.IIC通信-完整通信流程
  • 117.IIC通信-基础驱动分析
  • 118.IIC通信-基础驱动-起始信号
  • 119.IIC通信-基础驱动-发送一个字节
  • 120.IIC通信-基础驱动-接收确认信号
  • 121.IIC通信-基础驱动-接收一个字节
  • 122.IIC通信-基础驱动-发送确认信号
  • 123.IIC通信-基础驱动-发送结束信号
  • 124.EEPROM-概述
  • 125.EEPROM-引脚说明
  • 126.EEPROM-内存组织结构
  • 127.EEPROM-写操作-ByteWrite
  • 128.EEPROM-写操作-PageWrite
  • 129.EEPROM-读操作-上
  • 130.EEPROM-读操作-下
  • 131.EEPROM-项目准备
  • 132.EEPROM-函数定义
  • 133.EEPROM-编码-写多个字节-上
  • 134.EEPROM-编码-写多个字节-中
  • 135.EEPROM-编码-写多个字节-下
  • 136.EEPROM-编码-读多个字节
  • 137.EEPROM-编码-测试
  • 138.逻辑分析仪-使用说明
  • 139.EEPROM-编码-写多个字节-循环写法
  • 140.OLED屏幕-概述
  • 141.OLED屏幕-驱动芯片SSD1315-概述
  • 142.OLED屏幕-驱动芯片SSD1315-IIC接口
  • 143.OLED屏幕-驱动芯片SSD1315-GDDRAM-组织结构
  • 144.OLED屏幕-驱动芯片SSD1315-GDDRAM-寻址方式选择
  • 145.OLED屏幕-驱动芯片SSD1315-GDDRAM-寻址方式-介绍
  • 146.OLED屏幕-驱动芯片SSD1315-GDDRAM-显存和屏幕的映射关系
  • 147.OLED屏幕-硬件原理图
  • 148.OLED屏幕-软件实现-基础函数
  • 149.OLED屏幕-软件实现-点亮屏幕
  • 150.OLED屏幕-软件实现-清屏
  • 151.OLED屏幕-软件实现-简单符号显示
  • 152.OLED屏幕-软件实现-字模制作
  • 153.OLED屏幕-软件实现-字模测试
  • 154.OLED屏幕-软件实现-显示位置
  • 155.OLED屏幕-软件实现-显示位置-测试
  • 156.OLED屏幕-软件实现-完整编码
  • 157.OLED屏幕-软件实现-清屏优化
  • 158.OLED屏幕-展示数字-方案一
  • 159.OLED屏幕-展示数字-方案二
  • 160.18B20-概述
  • 161.18B20-1Wire-通信协议-概述
  • 162.18B20-1Wire-通信协议-初始化
  • 163.18B20-1Wire-通信协议-写操作
  • 164.18B20-1Wire-通信协议-读操作
  • 165.18B20-通信流程
  • 166.18B20-硬件设计
  • 167.18B20-软件设计-初始化
  • 168.18B20-软件设计-写字节
  • 169.18B20-软件设计-读字节
  • 170.18B20-软件设计-测试
  • 171.DS1302-概述
  • 172.DS1302-使用说明
  • 173.DS1302写操作
  • 174.DS1302-读操作
  • 175.DS1302-寄存器说明
  • 176.DS1302-硬件设计
  • 177.DS1302-软件设计-项目创建
  • 178.DS1302-软件设计-写字节
  • 179.DS1302-软件设计-读字节
  • 180.DS1302-软件设计-设置日期
  • 181.DS1302-软件设计-获取日期-上
  • 182.DS1302-软件设计-获取日期-下
  • 183.DS1302-软件设计-测试
  • 184.DS1302-软件设计-最终效果