Logo

郎哥嵌入式编程

30天嵌入式零基础完整课程安排

模块1:计算机基础(3天,每天2小时)

第1天:计算机组成与嵌入式认知

•理论课(1小时):计算机五大组成部分(CPU、内存、外设、总线、控制器),嵌入式系统定义、应用场景(家电、工控、物联网),单片机与嵌入式的关系(单片机是嵌入式的基础核心)。

•实操课(1小时):认识电脑硬件(CPU、内存、接口),了解嵌入式设备(手机、智能音箱、开发板),记录自己身边的嵌入式设备,完成简单认知作业。

•作业:列出3个身边的嵌入式设备,说明其可能用到的单片机/嵌入式技术。

第2天:进制转换(嵌入式必备)

•理论课(1小时):十进制、二进制、十六进制的定义,三者之间的转换方法(重点:二进制与十六进制转换,单片机编程常用),二进制位操作基础(与、或、非、异或,简单理解,后续C语言重点讲)。

•实操课(1小时):练习进制转换(10进制→2进制、16进制;2进制→16进制),用电脑计算器验证转换结果,完成10道进制转换练习题。

•作业:完成20道进制转换题(含二进制与十六进制互转),掌握核心转换逻辑。

第3天:汇编基础与计算机指令

•理论课(1小时):汇编语言基础(不用深挖),简单汇编指令(MOV、ADD、SUB),单片机执行指令的流程(取指、译码、执行),理解“程序控制硬件”的底层逻辑。

•实操课(1小时):观看汇编指令执行演示,简单仿写1-2条汇编指令,理解指令与硬件操作的关联,对比汇编与后续C语言的区别(知道C语言最终会编译成汇编指令即可)。

•模块复盘:梳理计算机基础核心知识点,答疑解惑,考核进制转换知识点。

模块2:C语言基础(10天,每天2.5小时,嵌入式专用C语言,不冗余)

第4天:C语言入门(环境搭建+基础语法)

•理论课(1小时):C语言简介(嵌入式首选语言),C语言环境搭建(Dev-C++,简单易上手,适合入门),基本语法(注释、语句、标识符、关键字)。

•实操课(1.5小时):安装Dev-C++,新建C语言项目,编写第一个C程序(Hello World),编译、运行,排查简单报错(如语法错误、拼写错误)。

•作业:编写3个简单C程序,练习注释、基本语句,确保能正常编译运行。

第5天:变量、数据类型与输入输出

•理论课(1小时):变量定义与使用,基本数据类型(int、char、float,重点char、int,单片机常用),输入函数(scanf)、输出函数(printf),变量赋值与运算。

•实操课(1.5小时):编写程序,定义不同类型变量,实现输入输出(如输入一个数字,输出其平方),练习变量运算(加减乘除、取余)。

•作业:编写程序,实现“输入两个数字,输出其和、差、积、商”,熟练使用输入输出函数。

第6天:条件语句(if-else、switch)

•理论课(1小时):if语句、if-else语句、if-else if-else语句,switch-case语句,条件判断逻辑(大于、小于、等于、不等于),适配单片机“条件控制硬件”的需求。

•实操课(1.5小时):编写程序,用if-else实现“判断数字正负”,用switch-case实现“输入数字1-7,输出对应星期”,练习条件语句的嵌套使用。

•作业:编写程序,实现“输入成绩,判断等级(优秀、良好、及格、不及格)”,熟练使用条件语句。

第7天:循环语句(for、while、do-while)

•理论课(1小时):for循环、while循环、do-while循环的语法与区别,循环的终止条件,循环嵌套(重点for循环,单片机编程常用)。

•实操课(1.5小时):编写程序,用for循环实现“1-100求和”,用while循环实现“输入数字,直到输入0停止”,练习循环嵌套(如打印三角形)。

•作业:编写程序,用for循环实现“LED流水灯逻辑模拟”(打印1-8,模拟LED依次点亮),提前适配单片机实操。

第8天:函数(定义、调用、参数传递)

•理论课(1小时):函数的定义、声明、调用,函数参数(形参、实参),返回值,函数的作用(模块化编程,单片机编程核心),常用库函数简介。

•实操课(1.5小时):编写自定义函数(如求和函数、判断奇偶函数),调用函数实现程序功能,练习函数参数传递,理解模块化编程的优势。

•作业:编写程序,将“判断成绩等级”“1-100求和”封装成函数,调用函数实现功能,养成模块化编程习惯。

第9天:数组与字符串

•理论课(1小时):数组的定义、初始化、访问,一维数组(重点,单片机存储数据常用),字符串的定义、常用操作(赋值、拼接、判断),字符串库函数(strlen、strcpy,简单了解)。

•实操课(1.5小时):编写程序,用一维数组存储10个数字并求和,用字符串实现“输入名字,输出欢迎语”,练习数组与循环的结合使用。

•作业:编写程序,用数组存储LED灯状态(亮/灭),模拟流水灯逻辑,衔接后续单片机实操。

第10天:指针基础(嵌入式核心重点)

•理论课(1小时):指针的定义、指针与变量的关系,指针的基本操作(取值、赋值),指针的作用(操作单片机寄存器,核心重点),不用深研究复杂指针,掌握基础用法即可。

•实操课(1.5小时):编写程序,定义指针变量,通过指针操作变量,练习指针取值、赋值,理解“指针操作内存”的逻辑(对应单片机寄存器操作)。

•作业:编写程序,用指针修改变量的值,熟练掌握指针的基本操作,为单片机寄存器操作铺垫。

第11天:结构体与位操作(嵌入式必备)

•理论课(1小时):结构体的定义、初始化、访问(封装单片机外设配置,常用),位操作(与、或、非、异或,单片机控制GPIO口核心),位操作的实际应用场景。

•实操课(1.5小时):编写程序,定义结构体(如存储温湿度数据),练习位操作(如将某一位置1、置0),模拟单片机GPIO口控制逻辑。

•作业:编写程序,用结构体封装LED灯配置,用位操作控制LED灯状态,贴合单片机实操需求。

第12天:C语言综合练习(排查BUG)

•理论课(1小时):C语言常见报错类型(语法错误、逻辑错误),排查BUG的方法(逐行调试、打印日志),单片机编程中C语言的注意事项(如变量类型选择、函数模块化)。

•实操课(1.5小时):完成2个综合C程序(如“简易计算器”“学生成绩管理”),排查程序中的BUG,练习调试能力。

•模块复盘:梳理C语言核心知识点(重点指针、位操作、结构体),答疑解惑,考核综合编程能力。

模块3:电子基础技术(5天,每天2小时,贴合单片机硬件)

第13天:常用电子元件认知

•理论课(1小时):单片机常用电子元件(电阻、电容、二极管、三极管、LED灯、按键、数码管、LCD1602),每个元件的作用、外观识别、参数解读(如电阻阻值、电容容量)。

•实操课(1小时):观察自己手中的电子元件,对照理论识别元件,用万用表测量电阻阻值、判断二极管正负极,记录元件参数。

•作业:识别10个常用电子元件,测量5个电阻的阻值,记录结果。

第14天:基础电路原理与万用表使用

•理论课(1小时):电路的基本概念(电压、电流、电阻),欧姆定律,串联电路、并联电路的特点,单片机常用电路(电源电路、LED驱动电路、按键电路)。

•实操课(1小时):学习万用表的使用(测电压、电流、电阻),测量开发板电源电压,测量LED灯、电阻的参数,排查简单电路故障(如断路)。

•作业:用万用表测量开发板各接口电压,绘制简单的LED驱动串联电路示意图。

第15天:原理图与PCB基础

•理论课(1小时):原理图的定义、常用符号(电阻、电容、单片机芯片符号),原理图的阅读方法(从电源到负载,理清信号流向),PCB板的基本概念(不用深挖画板,能看懂即可)。

•实操课(1小时):阅读51开发板的简易原理图,识别原理图中的电子元件、引脚连接,对照开发板实物,找到对应的元件位置,理解“原理图与实物的对应关系”。

•作业:阅读51开发板原理图,标注出LED灯、按键对应的引脚和连接关系。

第16天:单片机常用通信协议基础

•理论课(1小时):单片机常用通信协议(串口UART、I2C、SPI,重点串口UART),协议的作用(数据传输),串口通信的基本概念(波特率、TXD、RXD),不用深研究协议细节,理解基本原理即可。

•实操课(1小时):观察51开发板的串口接口,熟悉串口引脚(TXD、RXD),了解串口调试助手的基本使用,模拟串口数据传输的逻辑。

•作业:记录51开发板串口引脚的位置,熟悉串口调试助手的参数设置(波特率、数据位、停止位)。

第17天:电子基础综合应用

•理论课(1小时):单片机硬件电路的基本设计思路(电源、负载、控制端),常见硬件故障排查方法(接线错误、元件损坏、接触不良)。

•实操课(1小时):搭建简单的LED驱动电路(用面包板、电阻、LED灯、杜邦线),用万用表排查电路故障,确保LED灯能正常点亮。

•模块复盘:梳理电子基础核心知识点,答疑解惑,考核原理图阅读、万用表使用能力。

模块4:51单片机(12天,每天2.5小时,Proteus仿真+开发板实操,核心模块)

第18天:51单片机入门+Proteus/Keil环境搭建

•理论课(1小时):51单片机简介(AT89C51/52),单片机的引脚定义(VCC、GND、GPIO口、串口引脚),Proteus9、Keil C51软件的作用,仿真与实物实操的流程。

•实操课(1.5小时):安装Keil C51、Proteus9,熟悉Keil界面(新建51工程、添加文件、编译生成HEX文件),熟悉Proteus9界面(新建仿真工程、添加51芯片、放置元器件)。

•作业:新建Keil 51工程、Proteus 51仿真工程,完成软件环境搭建,确保能正常生成HEX文件、搭建简单仿真电路。

第19天:GPIO口基础(仿真+实物,LED点灯)

•理论课(1小时):51单片机GPIO口(P0、P1、P2、P3)的作用,GPIO口输出模式,寄存器控制GPIO口的原理(P1寄存器、P3寄存器),简单赋值操作。

•实操课(1.5小时):Proteus仿真搭建LED点灯电路,Keil编写点灯代码(控制单个LED亮灭),仿真验证;再在51开发板上接线,烧录程序,实现实物点灯,排查接线、程序错误。

•作业:编写代码,实现单个LED灯闪烁(延时函数),完成仿真与实物实操,记录调试过程中的问题。

第20天:GPIO进阶(流水灯,仿真+实物)

•理论课(1小时):GPIO口位操作,延时函数的优化,流水灯的实现逻辑(循环+位操作+延时),51单片机GPIO口的驱动能力(如P0口需要上拉电阻)。

•实操课(1.5小时):Proteus仿真搭建8个LED流水灯电路,Keil编写流水灯代码(依次点亮、来回流水),仿真验证;实物接线、烧录程序,调试流水灯效果,修改延时时间调节快慢。

•作业:完善流水灯代码,实现“流水+闪烁”组合效果,完成仿真与实物实操。

第21天:按键控制(GPIO输入+消抖,仿真+实物)

•理论课(1小时):GPIO口输入模式,按键的工作原理,按键消抖的原因(抖动现象),延时消抖的实现方法,按键控制LED的逻辑。

•实操课(1.5小时):Proteus仿真搭建“按键+LED”电路,Keil编写代码(按键控制LED亮灭、按键控制流水灯启停),仿真验证;实物接线、烧录程序,调试按键响应,解决消抖问题。

•作业:编写代码,实现“按不同按键,控制不同LED点亮”,完成仿真与实物实操。

第22天:定时器(核心重点,仿真+实物)

•理论课(1小时):51单片机定时器0/1的工作原理,定时器的作用(精准定时,替代延时函数),定时器寄存器配置(模式寄存器、初值寄存器),固定配置模板讲解。

•实操课(1.5小时):Proteus仿真搭建“定时器+LED”电路,Keil编写代码(定时器控制LED每隔1秒闪烁),仿真验证定时精度;实物实操,烧录程序,调试定时效果,对比延时函数与定时器的差异。

•作业:编写代码,用定时器控制流水灯匀速流动,完成仿真与实物实操。

第23天:串口通信(仿真+实物,对接后续应用)

•理论课(1小时):51单片机串口的工作原理,串口寄存器配置(波特率、模式),串口通信的流程(发送、接收),串口调试助手的使用方法。

•实操课(1.5小时):Proteus仿真搭建串口通信电路(添加虚拟串口),Keil编写代码(单片机向上位机发送字符串、接收上位机指令控制LED),仿真验证;实物实操,烧录程序,用串口调试助手查看数据、发送指令。

•作业:编写代码,实现“单片机向上位机发送LED状态,接收上位机指令控制LED亮灭”,完成仿真与实物实操。

第24天:数码管显示(静态+动态,仿真+实物)

•理论课(1小时):数码管的工作原理(共阴/共阳),段码、位码的定义,静态显示与动态扫描的区别,动态扫描的实现逻辑(快速切换显示每一位)。

•实操课(1.5小时):Proteus仿真搭建数码管显示电路(单个/多个数码管),Keil编写代码(静态显示单个数字、动态显示0-9计数),仿真验证;实物接线、烧录程序,调试数码管显示效果,解决闪烁问题。

•作业:编写代码,实现数码管倒计时(10→0),完成仿真与实物实操。

第25天:LCD1602液晶显示(仿真+实物)

•理论课(1小时):LCD1602的工作原理,引脚定义,控制指令(初始化、清屏、显示开关),LCD1602与51单片机的接线方法。

•实操课(1.5小时):Proteus仿真搭建LCD1602显示电路,Keil编写代码(显示静态文字、变量),仿真验证;实物接线、烧录程序,调试LCD显示效果,确保显示清晰、正常刷新。

•作业:编写代码,实现LCD1602显示“51 MCU”和当前计数数值,完成仿真与实物实操。

第26-28天:51单片机综合小项目(仿真+实物,3天)

•项目主题:简易温湿度显示系统(基础版,不用复杂传感器,模拟数据)

•第26天:项目需求分析+电路搭建(1小时理论+1.5小时实操):明确项目功能(LCD1602显示温湿度、按键切换显示模式、定时器定时刷新),Proteus仿真搭建电路(LCD1602+按键+51芯片),实物接线。

•第27天:代码编写(2.5小时):分模块编写代码(LCD1602驱动、按键控制、定时器定时、温湿度模拟数据生成),模块化编程,逐步调试。

•第28天:项目调试+优化(2.5小时):仿真验证项目功能,实物实操调试,排查程序、硬件故障,优化显示效果、按键响应速度,完成完整项目。

第29天:51单片机知识点复盘+答疑

•理论课(1小时):复盘51单片机核心知识点(GPIO、定时器、串口、数码管、LCD1602),梳理仿真+实物实操的流程,总结常见问题及解决方法。

•答疑+实操(1.5小时):解答学员实操中遇到的问题,针对性指导,补充重点知识点,强化记忆。

第30天:综合考核+项目展示+后续规划

•考核(1小时):基础知识点问答(计算机、C语言、电子基础、51单片机),实操考核(编写简单LED点灯/按键控制代码,完成仿真或实物操作)。

•项目展示(1小时):学员展示自己完成的综合小项目,分享学习心得和实操经验,老师点评指导。

•后续规划(0.5小时):讲解后续进阶方向(STM32、嵌入式就业),给出学习建议,衔接后续学习内容。

郎哥嵌入式编程 © 版权所有 | 30天零基础嵌入式完整学习路线