首页 > 应用 > 硬禾实战培训 > 嵌入式系统入门 - 从PCB设计、焊接到MicroPython编程

嵌入式系统入门 - 从PCB设计、焊接到MicroPython编程

嵌入式系统入门 - 从PCB设计、焊接到MicroPython编程
第1节:课程背景介绍
课程内容介绍
硬件工程师的基本技能
PCB设计
PCB焊接调试
嵌入式系统编程
FPGA的使用
课程安排
平台介绍 - 基于Pico核心模块,用MicroPython编程的学习板
学习方式
自己动手设计并安装一个嵌入式系统学习平台
进度
PCB设计
PCB基本概念及项目设计流程
KiCad设计PCB的要领
PCB的焊接和调试
嵌入式系统编程
嵌入式系统的基本概念
MicroPython的使用
用MicroPython实现板上所有外设功能
为何选用KiCad设计PCB?
为何选用Pico处理器平台?
为何选用MicroPython编程语言?
课后思考
PCB设计工具的调研和比较
嵌入式系统平台的调研和比较
嵌入式系统编程工具的调研和比较
规范化的PCB设计 - 带你设计一块基于PICO处理器和MicroPython编程的学习板
第2节:认知PCB及需要具备的基础和理念
课程
关于PCB - 展示并介绍
PCB的来历
PCB的构成
PCB的材料构成
多层板 - 通孔连接
PCB板元素(以一个板子为例进行讲解)
器件
走线
过孔
丝印
阻焊层
定位孔 - Mounting Hole
PCB时如何设计的
CAD - 计算机辅助设计,通过计算机进行设计
所有的CAD工具的流程都是一样的
框图、原理图、PCB板图、BOM清单
PCB的理论基础
电路、模拟电路、数字电路
电磁场
参考短视频
什么是PCB?
PCB的设计流程
课后思考
好的PCB设计应该是什么样的?
第3节:电子产品的系统构成及关键元器件的选用
课程
系统构成
控制器
输入、输出
传感器
通信
模拟链路
关键器件的选用及相关资料
参考短视频
课后思考
自己身边电子产品的功能构成及器件来源分析
第4节:介绍学习板的功能及设计要求
课程
功能需求
核心板
外设
数字IO
总线
模拟IO
中断
DMA
性能需求
尺寸需求
成本
焊接、调试
参考短视频
关于Pico的介绍
Pico的项目演示
课后思考
如何选用一款好的学习板?
第5节:初识KiCad并体验PCB的设计流程
课程
KiCad简介
KiCad的特点
免费
开源
多平台
多插件支持
发展历程
KiCad的下载安装
下载
国外站点
国内的镜像站点
版本
不同的操作系统
安装
目录
库的选装
不同操作系统平台的差异
不同版本的差异
KiCad的主要功能介绍
主要功能
原理图编辑器Eeschema
符号编辑器
PCB编辑器
封装编辑器
Gerber文件查看器
计算器工具
图纸编辑器
编辑器的主要按钮排布
KiCad的文件和文件夹
KiCad的工程管理
KiCad的工程模板
KiCad的快捷键查看及应用
KiCad的设计资源和帮助文档
KiCad的设计流程演示
参考短视频
KiCad简介
KiCad的安装
KiCad的界面
KiCad的设计流程
课后作业
安装并加载一个参考历程,体验从原理图、PCB板图、3D查看、Gerber的全过程
第6节:学习板设计中元器件库的高效、可靠的构建方式
课程
不同设计工具元器件库的构成方式
KiCad元器件库的构成
元器件库的主要来源
CAD工具自带
参考设计的资源利用
开源网站
电子森林
网上下载资源的利用
原理图符号、PCB封装
3D模型
自己创建
创建原理图符号
创建PCB封装
手工创建3D模型
库的环境和配置
集成化元器件库的管理
参考短视频
第7节:学习板设计中原理图符号库的配置以及符号的构建
课程
KiCad的界面
符号
符号库浏览器
符号库编辑器
符号库的选择及维护
符号的创建
符号库图形元素
符号库引脚
符号字段
符号库电源符号
其它功能
原理图符号规范
常规形状
Refdes
创建一个Project并创建符号
阅读数据手册
参考短视频
第8节:学习板设计中PCB封装库的配置以及新封装的构建
课程
Footprint的构建
封装库介绍
封装编辑器
元器件封装的制作
封装的信息标注
封装的关联 - 同符号、3D的关联
封装的检查
封装向导的使用
3D模型的应用和创建
3D库的获取和关联
FreeCAD的使用
参考短视频
第9节:PICO学习板原理图的绘制
课程
原理图的生成
PDF格式
SVG格式
原理图的设计及示例
原理图编辑器介绍
参考短视频
模版的使用
原理图图框布局的制作
符号库的配置及使用
元器件的复制放置
网标的使用
网格的设定
总线的使用
层级原理图绘制
图框的设置
原理图的导入
电气规则检查ERC
BOM的生成
元器件批注
封装映射
第10节:PCB设计中布局规则及学习板的布局要点
课程
布局规则和规范
操作
准备工作
打开newPCB
设置页面信息
加载网表
规划外框
绘制板框
导入板框
设置坐标原点
配置主题/颜色
器件摆放
导入原理图的网表
放置核心器件
放置周边器件
自动对齐
异形板的设计
3D查看效果
打印检查
参考短视频
第11节:PCB设计中布线规则以及学习板的布线要点
基本设置
设置区域
设置板层
板层的概述
板层的分类
活动板层选择
过孔板层选择
其它设置
电路板设置(包括DRC规则)
查找加工板厂的规则
根据不同的信号类型设置
阻焊层和焊膏层的全局间隙设置
走线操作
复制与移动
PCB的测量
阵列工具
丝印调整
添加Logo和自定义图片
第12节:PCB设计中若干关键话题
区耦电容
地平面及接地
电源走线
模拟、数字的分割
第13节:KiCad工具中的若干技巧
Eeschema
总线的连接
层级设计
导入原理图
其它CAD格式文件的导入
Layout
位置调整
定位移动
平均分布
对齐
阵列复制
锁定
布线
设置禁止布线区
差分线走线
蛇形等长走线
设计文档生成
3D Viewer
3D查看
3D生成
3D模型的获取
Bitmap to Component
Logo制作
有用的插件
交互式BOM
AD到KiCad转换
第14节:Gerber文件的提交、制板和元器件备料
课程
Gerber生成
Gerber查看
拼板
生产商的要求及成本计算
在线提交
备料渠道
成本优化
钻孔文件输出
生成BOM、订购元器件
DXF文件生成及结构设计应用
项目打包
参考短视频
第15节:PCB焊接的基本技能
焊接准备
焊接的器件类型
焊接的工具及使用特点
调试用的仪器设备及工具
焊接、调试的流程及规划
表面贴装器件的焊接
穿孔器件的焊接
器件的拆卸及飞线技巧
MicroPython编程
第16节:MicroPython基本认知
下载安装
环境配置
简单体验
第17节:嵌入式系统基本概念及学习
什么是嵌入式系统,应用?
嵌入式系统的构成及分块讲解
嵌入式系统的学习方法及学习资源
第18节:点亮一颗LED
嵌入式系统对外的连接
微处理器的IO及基本配置
处理器输出管脚的特性及使用
点亮LED
LED的工作原理、种类以及调光、限流电阻的使用
点亮核心板上的LED
LED的配置
认知MicroPython基本语法
Import
machine
utime
管脚定义
让LED常量
让LED亮、灭交替
点亮扩展板上的LED
MicroPython支持的硬件的命名规范
同时点亮板上LED和板外LED
第19节:用输入按键控制LED的状态
处理器输入管脚的特性及使用
读取按键
芯片内部有上拉和下拉的功能
定义输入管脚属性
用开关控制LED的On/Off
第20节:交通灯的控制
使用多个LEDs和一个按键
三个单色LED
蜂鸣器
一个按键
体会嵌入式系统中的线程 - Thread
第21节:测量反应时间的游戏
用到的器件
一个LED
一个按键
认识嵌入式系统中的触发/中断机制
中断和具柄
随机数
第22节:用PWM播放音乐
PWM的工作原理、在嵌入式系统中的实现以及应用
通过芯片内的温度测量来控制LED的亮度
第23节:模拟信号的转换和数据处理
RP2040的ADC特性与使用要点
采集旋转电位计产生的不同电压
采集芯片内温度计的温度并进行数据计算
嵌入式系统中如何观察、判断采集到的数据
第24节:将温度传到上位机
总线的分类、区别
串行总线的特点及类别 - 同步串行、异步串行
UART的工作原理及使用
学习MicroPython中的文件系统
数据记录仪
第25节:将字符和波形显示在OLED上
SPI的特点及使用方式
SPI的信号线
SPI的时序
硬件SPI的使用和MicroPython配置
管脚模拟SPI
Bit Banging
128*32 OLED显示屏的驱动
文本显示
图形显示
第26节:姿态传感器的使用 - 制作一个水平仪
I2C的特点及使用方法
I2C的信号线及应用要点
I2C的时序
硬件I2C的调用
用管脚模拟I2C
姿态传感器MMA7660的信息读取及处理
二进制到十进制转码
用WS2812B来显示姿态传感器的数据
第27节:Micphone的音频信号制作一个音频示波器和频谱仪
Micphone电路工作原理
模拟电路的设计及仿真
音频信号的数据采集
波形的显示
频谱变换
第28节:可编程IO的使用,点亮WS2812B灯串
可编程IO
数据输入和数据输出
状态机的使用
FIFO的使用
输出移位寄存器
使用WS2812制作电子表
WS2812B的使用
第29节:可编程IO及DMA的使用, 制作信号发生器
DDS任意信号发生器的制作原理
使用PIO来实现DDS信号发生器
给它一个控制界面
第30节:综合 - 制作一个定时报时/RGB显示的时钟
嵌入式系统知识点
基本概念
控制系统的意义
使用电子设备和嵌入式计算机的原因
计算机嵌入的方式
嵌入式系统案例
典型的嵌入式系统软件操作
嵌入式系统的属性
应用平台
概述
处理器
MCU
开发板
通用输入、输出接口
MCU外部:0和1,电压和电流
输入信号
输出信号
与开关和LED灯交互
MCU内部
准备:控制寄存器和C代码
配置I/O路径
GPIO外围设备
将C代码组合起来
更多接口实例
其它引脚配置选项
软件并行基础
概念
初始程序
任务的创建和使用
提高响应
中断和事件触发
通过有限状态机减少任务执行的次数
使用硬件节省CPU时间
高级调度问题
等待
任务优先级
任务抢占
实时系统
Arm Cortex M+处理器内核和中断
CPU内核
概念
架构
异常和中断
CPU异常处理
中断与异常硬件
中断软件
C汇编语言
综述
背景
软件开发工具
程序构建工具
编程器
调试器
C语言基础
程序与函数
启动代码
存储器类型
一个程序的存储器需求
构建函数
寄存器使用规范
程序首部与程序尾部
异常处理程序
控制程序流程
条件结构
循环结构
调用子函数
访问内存中的数据
静态分配内存
自动分配内存
动态分配内存和指针
数组元素
模拟接口
综述
简介
背景
概念
采样与量化
DAC
概念
转换器结构
DAC
应用实例 - 波形发生器
模拟比较器
概念
芯片内的比较器
应用实例 - 电压转换监视器
ADC
概念
芯片内的ADC
应用实例
定时器
概念
定时器硬件电路
定时器应用实例
定时器外设
SysTick定时器
正确操作计算机看门狗定时器
定时器、脉宽调制模块
串行通信
概念
使用方法
开发工具
通信软件结构
串行通信协议及外设
同步串行通信
异步串行通信
内部集成电路总线I2C
DMA
综述
概念
控制器和多路复用器外设
sDMA多路复用器和触发源
DMA控制器
基本DMA配置和使用
子曰
490次阅读
2021-11-10
嵌入式系统 MicroPython PICO