Java自学网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 5002|回复: 44

黑马嵌入式开发2024黑马博学谷单片机开发教程

[复制链接]

该用户从未签到

7

主题

153

帖子

313

积分

普通会员

Rank: 2

积分
313
发表于 2024-5-17 18:27:02 | 显示全部楼层 |阅读模式
完整无秘课件齐全!文件太多了减少了01阶段视频内容和02阶段的视频内容还有04阶段day1和day2的视频内容,要不然发不出来,帖子就受字数限制了。
6 Y+ n8 l6 K4 H" s9 S' h. G- M 182702lt5jdtbqyk5ct0w2.png 182703eh662z667ccvc3j2.png
3 d* t/ G7 M+ T" ~1 M- A┣━【黑马程序员】嵌入式开发2024
& b+ W1 M4 f$ m) h  ~┃  ┣━01阶段:模拟电路,计算机原理
7 c3 x9 D9 K: S1 f" M; U┃  ┃  ┣━模拟电路! x+ b3 Z5 v7 R) @
┃  ┃  ┣━视频
( }9 Y0 t- [. t, _) B4 K7 ]┃  ┃  ┣━计算机组成原理
: H5 v4 {5 D2 @: e) U- I; B  d┃  ┣━02阶段:C语言编程; Q4 H, f6 S" \
┃  ┃  ┣━day01
% s: |% e+ Z: _2 n4 O┃  ┃  ┃  ┣━视频
: l! \7 s" V+ L$ \: R# I1 e2 c┃  ┃  ┣━day026 ?1 W7 H  o6 A- H$ q
┃  ┃  ┃  ┣━视频
6 m) {, c3 Y+ B" P┃  ┃  ┣━day03% i3 d: Q' q) H9 ]
┃  ┃  ┃  ┣━视频; D- r8 A. G8 K
┃  ┃  ┣━day04
  y1 a/ c) a2 {! k┃  ┃  ┃  ┣━视频
! B7 v- ^0 u" v0 g┃  ┃  ┣━day05
7 X# h1 i3 o/ m  l! H┃  ┃  ┃  ┣━视频
! B+ q4 C' F' P0 @┃  ┃  ┣━day06% L3 H: L# ]0 \3 S
┃  ┃  ┃  ┣━视频/ D# j& z$ u" |7 j
┃  ┣━03阶段:STC8增强型单片机开发
' U! F. V4 Z7 q: O$ F6 }$ c) ?2 [┃  ┃  ┣━day01
9 S+ s2 B& T! f; i' L4 i7 ^& L┃  ┃  ┃  ┣━Video
7 l3 L9 q2 ?( g) p9 `. _# k& x┃  ┃  ┃  ┃  ┣━00_课程简介.mp40 {: u# j' I$ ^
┃  ┃  ┃  ┃  ┣━01_STC系列产品介绍.mp4% |( j3 m, c4 I% i0 M# D
┃  ┃  ┃  ┃  ┣━02_MCU的CPU和外设关系.mp4
; D+ i% s5 |1 c) ~+ I┃  ┃  ┃  ┃  ┣━03_Keil软件的安装与激活.mp4
( N! L3 w7 A; e7 q┃  ┃  ┃  ┃  ┣━04_Keil创建第一个STC8工程.mp4
* V  }6 m+ J0 k3 |┃  ┃  ┃  ┃  ┣━05_Keil编写代码及烧录流程.mp44 U  n# q# I% Z
┃  ┃  ┃  ┃  ┣━06_IO模式配置.mp4
! k/ k( g2 ]) v0 n% Y" U┃  ┃  ┣━day02. R4 A7 K- p: a( c1 H. T  `) J
┃  ┃  ┃  ┣━Video
0 p0 B$ G2 P1 w' S6 M  V┃  ┃  ┃  ┃  ┣━04_点灯_通过库函数实现1.mp4
1 f( `! `; |9 p. \/ Q- U( j  ~+ v. A┃  ┃  ┃  ┃  ┣━05_点灯_通过库函数实现2.mp43 R8 k$ C8 i6 w" h! |3 j8 E" `, G2 p
┃  ┃  ┃  ┃  ┣━09_UART串口基础知识.mp4
9 k1 f5 I( y' G& a: d6 H: l┃  ┃  ┃  ┃  ┣━10_UART初始化.mp4
( x9 y" U" z5 Z+ I┃  ┃  ┃  ┃  ┣━14_使用逻辑分析仪解析数据.mp4' q$ b+ x/ t7 y
┃  ┃  ┃  ┃  ┣━16_UART1和UART4数据通讯实现.mp4$ M0 r2 D; v0 ~/ q1 o5 \$ f
┃  ┃  ┃  ┃  ┣━00_知识回顾.mp4# \1 D: M. l0 \4 C2 I# C, h6 |
┃  ┃  ┃  ┃  ┣━01_IO模式_高阻输入&开漏输出.mp42 v" d6 v; k+ I; s( X) F  h( p
┃  ┃  ┃  ┃  ┣━02_软延时操作.mp4
! F% E1 d7 w) \6 y5 H┃  ┃  ┃  ┃  ┣━03_点灯_通过寄存器实现.mp4
+ G# M0 m; F& R3 f9 B┃  ┃  ┃  ┃  ┣━06_通过Delay库函数实现延时.mp40 b. `; u# M1 t2 K" k2 I
┃  ┃  ┃  ┃  ┣━11_UART初始化重点注意.mp4
" H9 N$ U& H- I# H5 |┃  ┃  ┃  ┃  ┣━13_UART重点注意.mp4( j0 e; ]# u  i$ k- p- X" ^% U( y3 P
┃  ┃  ┃  ┃  ┣━15_串口通讯测试需求.mp4
; e, [6 t" e( ^4 F┃  ┃  ┃  ┃  ┣━07_LogicAnalyzer逻辑分析仪的使用.mp4
5 N% c5 h7 w$ o* @6 @1 _┃  ┃  ┃  ┃  ┣━08_AStyle格式化工具.mp4( `' o  ]. `  R7 S% |, b0 j
┃  ┃  ┃  ┃  ┣━12_UART数据的接收并回显.mp4
+ t6 K" q5 M! K( j, [┃  ┃  ┣━day030 p% w( }, d! y( B
┃  ┃  ┃  ┣━Video
, F6 ]' u3 ?  p6 L  I: ~' p┃  ┃  ┃  ┃  ┣━02_UART1数据接收发送_寄存器形式.mp4
0 {/ e$ l$ d, Z; q) b  n┃  ┃  ┃  ┃  ┣━06_extern关键字_封装头文件.mp4
7 H, i4 j; l, r! H8 \/ X$ V: {┃  ┃  ┃  ┃  ┣━08_Timer的定时器自动重装机制.mp4* e7 q  ^2 A: z+ T. s7 H* }- R& n) w
┃  ┃  ┃  ┃  ┣━00_知识回顾.mp4! m! `* D; R3 d
┃  ┃  ┃  ┃  ┣━01_认识中断系统.mp4
! P8 ~6 S$ k4 t* r! u% K┃  ┃  ┃  ┃  ┣━03_通过UART1中断函数开关灯.mp4
6 i" B2 d9 r4 B" U┃  ┃  ┃  ┃  ┣━05_extern关键字.mp4' ?) d: [% h$ p4 F# T+ H7 ~
┃  ┃  ┃  ┃  ┣━07_Timer的初始化及配置.mp4& J0 j# i/ d" L7 C; E
┃  ┃  ┃  ┃  ┣━09_Timer利用extern实现自己的业务.mp4: O& Y! j* [, k: S. {
┃  ┃  ┃  ┃  ┣━04_不同主频下机器周期的执行时间.mp45 x: p) M% \% e5 P2 M# |
┃  ┃  ┃  ┃  ┣━10_LED灯组_全部点亮.mp4( V  S+ ]5 X& f9 @- v
┃  ┃  ┃  ┃  ┣━11_LED_SW总开关失效的解决方法.mp4" P  c0 x; @" O
┃  ┃  ┃  ┃  ┣━12_LED灯组_走马灯.mp4% @; N$ n* U3 d& U+ @* i3 B% ]0 S
┃  ┃  ┣━day043 Q) q2 G3 |: k- M
┃  ┃  ┃  ┣━Video3 F/ v0 `8 @+ z. t( Y3 X
┃  ┃  ┃  ┃  ┣━00_知识回顾.mp4+ F1 z  R, D+ A
┃  ┃  ┃  ┃  ┣━03_LED灯组_Timer调整灯的亮灭.mp4& g* j: [4 V3 M" d, o* g( u
┃  ┃  ┃  ┃  ┣━04_LED灯组_Timer配合UART调整duty.mp4
6 c' \# e% e9 X& w┃  ┃  ┃  ┃  ┣━08_LED灯组_串口控制PWM占空比.mp4
9 o% Q7 m6 {* c% @0 }- e┃  ┃  ┃  ┃  ┣━09_PWM死区设置.mp4( U# y! I0 h+ \' `& R
┃  ┃  ┃  ┃  ┣━10_LED灯组_8路PWM控制.mp4  K4 @! M% n6 o7 x/ v# G" E2 a+ R
┃  ┃  ┃  ┃  ┣━11_震动马达.mp4
5 M2 C% |% _, u/ a; x$ [+ |8 C1 G┃  ┃  ┃  ┃  ┣━12_震动马达_PWM控制.mp4
% ?- j$ ?9 b) i( }/ x9 l/ z* ?" f┃  ┃  ┃  ┃  ┣━15_ADC采样_热敏电阻测温原理.mp41 [# d5 B! ^, [' ?5 ^5 F, a
┃  ┃  ┃  ┃  ┣━01_LED灯组_UART串口控制.mp4
, W. N, W0 y) s0 Y0 c$ e# [┃  ┃  ┃  ┃  ┣━02_UART接收数据判断逻辑.mp43 x1 G* U: T- D( H
┃  ┃  ┃  ┃  ┣━05_PWM简介.mp43 J6 p4 ~4 {) R! `* ]$ P& n% Q
┃  ┃  ┃  ┃  ┣━06_LED灯组_PWM控制.mp43 i+ A' b' V, q# i
┃  ┃  ┃  ┃  ┣━07_LED灯组_PWM呼吸灯.mp4
5 s" `  ]6 s- c7 ^" |( Z5 M┃  ┃  ┃  ┃  ┣━13_ADC采样_电位器电压.mp4- B5 D2 a( }- M( I# C; D
┃  ┃  ┃  ┃  ┣━14_ADC采样_内部1.19V参考信号源.mp4
2 P' \# C$ }1 j; H% I% n8 V& b0 W┃  ┃  ┣━day05
. Q  U2 @6 b0 f8 g6 d- N┃  ┃  ┃  ┣━Video/ v* o: t9 V  t; H" \
┃  ┃  ┃  ┃  ┣━00_PWM频率&周期&占空比.mp4
- W2 Y. }* {$ q8 z! k7 }2 Y0 S┃  ┃  ┃  ┃  ┣━01_知识回顾.mp4; D0 R' _; ~2 d
┃  ┃  ┃  ┃  ┣━04_ADC采样_热敏电阻_封装NTC.mp4( ?9 |' Z/ B+ }) S3 q- f1 s
┃  ┃  ┃  ┃  ┣━05_ADC采样_热敏电阻_封装NTC优化.mp4
9 h; D& z. e9 ?4 b, [' p0 \┃  ┃  ┃  ┃  ┣━06_独立按键_获取单个按钮状态.mp4! t2 l" j2 ]4 ~: ]' {2 G6 L
┃  ┃  ┃  ┃  ┣━07_独立按键_获取多个按钮状态.mp48 u% p% G2 i7 o: x' d* h$ |( v
┃  ┃  ┃  ┃  ┣━09_数码管_认识数码管.mp4, a( b: g0 @/ |' o: E4 R
┃  ┃  ┃  ┃  ┣━11_数码管_移位寄存器的操作方式.mp4
' ?7 s- _6 P7 u3 P+ g" z, n, c┃  ┃  ┃  ┃  ┣━12_数码管_输出数据到移位寄存器.mp41 m, U$ g/ |# d
┃  ┃  ┃  ┃  ┣━02_ADC采样_热敏电阻_求出阻值.mp4- E: x# V1 J" i- Z6 O, G7 \! S
┃  ┃  ┃  ┃  ┣━03_ADC采样_热敏电阻_根据阻值查出温度.mp48 J) O* c8 n; z3 b4 A7 w3 Y
┃  ┃  ┃  ┃  ┣━08_独立按键_使用位操作.mp4
. p  {. M' T1 n" |8 |┃  ┃  ┃  ┃  ┣━10_数码管_使用Digtal模拟.mp4
; z  B3 ?7 }9 y1 f+ @! u0 e& p* g┃  ┃  ┣━day06
2 f8 ~" J; e6 x# @2 @+ ^! m┃  ┃  ┃  ┣━Video9 c  e% W3 I( v* |% `+ E
┃  ┃  ┃  ┃  ┣━04_数码管_其他引脚功能.mp4
4 K7 e2 Y' J. _┃  ┃  ┃  ┃  ┣━05_数码管_函数优化.mp4- k) p: G- ~% ?: f# U
┃  ┃  ┃  ┃  ┣━06_蜂鸣器_发声原理.mp4' |8 ~6 P$ h8 F( `0 F9 E: K  H
┃  ┃  ┃  ┃  ┣━07_蜂鸣器_基础乐理知识.mp49 e, ]4 \* P& i7 `
┃  ┃  ┃  ┃  ┣━09_蜂鸣器_使用PWM播放.mp4
. v& L2 G% X- O' V┃  ┃  ┃  ┃  ┣━11_蜂鸣器_播放两只老虎.mp48 x/ F! ^. C* n0 J% w7 G: A
┃  ┃  ┃  ┃  ┣━00_知识回顾.mp45 L& ]/ @( A5 }  C- }9 \$ C
┃  ┃  ┃  ┃  ┣━01_数码管_两个字节控制.mp4
# E1 h8 D2 h8 N( d& f┃  ┃  ┃  ┃  ┣━02_数码管_封装库函数show.mp4
* z, f. V% C' O1 Y  u% z┃  ┃  ┃  ┃  ┣━12_蜂鸣器_播放天空之城.mp4
+ _& X! d* ^3 e9 V, M* ~( f! z┃  ┃  ┃  ┃  ┣━03_数码管_封装库函数display.mp4$ |. Y# h' C( O! v
┃  ┃  ┃  ┃  ┣━08_蜂鸣器_播放哆来咪发唆拉西哆.mp4
! M9 L/ i  p0 e! H┃  ┃  ┃  ┃  ┣━10_蜂鸣器_两只老虎乐谱.mp4) T# O) E. k0 \$ V( F) u9 l
┃  ┃  ┣━day079 {5 M0 U* [1 P
┃  ┃  ┃  ┣━Video& t3 W$ L+ h& f7 |& |. l- t
┃  ┃  ┃  ┃  ┣━05_RTC时钟_读取数据_秒.mp4
( m/ r) X2 u0 T% F# d% }+ E2 W┃  ┃  ┃  ┃  ┣━06_I2C协议读写流程.mp4
9 ^7 B; `" D' U┃  ┃  ┃  ┃  ┣━09_RTC时钟_写秒分时日月年.mp4; R( D* v5 b/ C7 N
┃  ┃  ┃  ┃  ┣━11_外部中断_INT0.mp4
/ C: J# d( o, e# q, X$ t+ W┃  ┃  ┃  ┃  ┣━00_知识回顾.mp4$ X- D/ T3 I2 i, q
┃  ┃  ┃  ┃  ┣━01_RTC时钟芯片的电路.mp4& m+ b) U8 k" T/ [0 p0 Q5 G
┃  ┃  ┃  ┃  ┣━03_I2C开发环境准备.mp40 Z+ l5 _# |; ?( @/ E3 B
┃  ┃  ┃  ┃  ┣━04_RTC时钟芯片PCF8563文档阅读.mp48 ]8 j; Q2 H. `0 D/ y% F4 o7 N
┃  ┃  ┃  ┃  ┣━07_RTC时钟_读取秒分时.mp46 u  g/ T9 l2 y& K
┃  ┃  ┃  ┃  ┣━08_RTC时钟_读取年月日.mp4& Y/ _6 o! p4 R) I
┃  ┃  ┃  ┃  ┣━10_RTC时钟_封装读写函数.mp41 J3 k. n+ w8 S
┃  ┃  ┃  ┃  ┣━12_外部中断_INT3.mp4. \' o  u+ Y/ c* [! o
┃  ┃  ┃  ┃  ┣━13_RTC时钟_设置闹钟Alarm.mp4
, e/ A; ^. C6 x3 t┃  ┃  ┃  ┃  ┣━02_I2C总线简介.mp46 Q" K: v; I2 V5 V
┃  ┃  ┣━day084 Q  m1 Q- s+ ]$ g. d3 |- P
┃  ┃  ┃  ┣━Video- g( s# B# W8 C
┃  ┃  ┃  ┃  ┣━03_RTC时钟_封装Alarm.mp4
9 x! I/ y: S7 Y. l  Q2 B$ g+ s┃  ┃  ┃  ┃  ┣━07_RTC时钟_Timer封装.mp4" t) e6 k, y. s; [
┃  ┃  ┃  ┃  ┣━01_考试题讲解.mp4
2 A' J" h. S* e; }  g( \5 x8 N┃  ┃  ┃  ┃  ┣━02_考题讲解2.mp4
8 V* M; {+ }8 V) x: _( @┃  ┃  ┃  ┃  ┣━05_RTC时钟_Timer的开发流程.mp4
' M: g2 N8 h# J┃  ┃  ┃  ┃  ┣━08_RTC时钟_区分Timer和Alarm.mp4
: B) d6 I0 ^$ t* F1 e┃  ┃  ┃  ┃  ┣━04_RTC时钟_封装Alarm2.mp4- M# Y0 I% b& n; ?' X1 a! V1 g. R  q8 n
┃  ┃  ┃  ┃  ┣━06_RTC时钟_实现Timer.mp4
) S# g; A% {! Y┃  ┃  ┣━day09
) `/ k  y; e6 f' G1 `. D* |  p┃  ┃  ┃  ┣━Video
  x. h6 Q  `  i4 |┃  ┃  ┃  ┃  ┣━02_0.96寸OLED显示屏_介绍.mp4
7 T4 w, l# g5 [# n# _# M) B: g┃  ┃  ┃  ┃  ┣━07_0.96寸OLED显示屏_显示日期时间.mp4
! y* C/ O! [4 f+ A3 q  i, k┃  ┃  ┃  ┃  ┣━08_I2C通讯数据查看_逻辑分析仪.mp4
% Q+ n# `$ n/ ?. T┃  ┃  ┃  ┃  ┣━09_DHT11温湿度传感器的数据时序.mp4+ w, \6 t5 g6 C+ w: h2 U
┃  ┃  ┃  ┃  ┣━授人以渔.mp4
. l- [. X8 |, C$ y: r┃  ┃  ┃  ┃  ┣━03_0.96寸OLED显示屏C51_IIC官方示例.mp47 B! F3 f0 j; n3 c) b3 w* {
┃  ┃  ┃  ┃  ┣━04_0.96寸OLED显示屏_显示字符&汉字.mp44 ]8 p; p$ F, |
┃  ┃  ┃  ┃  ┣━05_0.96寸OLED显示屏_显示图片.mp4# V: _. c( s& ?* G7 Z. T, \
┃  ┃  ┃  ┃  ┣━06_0.96寸OLED显示屏_移植OLED为I2C硬实现.mp4; S/ i" G! n7 V2 u( j
┃  ┃  ┃  ┃  ┣━10_DHT11温湿度_解析数据.mp4% G9 u+ [  Q0 {! z3 E' p
┃  ┃  ┃  ┃  ┣━11_DHT11温湿度_解析40个bit.mp4
* o! F, B* F; v  y% v3 t4 t2 F┃  ┃  ┃  ┃  ┣━00_知识回顾.mp42 G5 ]1 }; ^, Y5 J9 D4 M' ]
┃  ┃  ┃  ┃  ┣━01_RTC时钟_I2C读写数据_单独启用Alarm&Timer.mp4
% d! K; @1 z3 a6 L┃  ┃  ┣━day10- g) M$ K1 }- b/ ~  ~) {% T% Q
┃  ┃  ┃  ┣━Video
2 z+ R1 ], }) T% w+ m& I┃  ┃  ┃  ┃  ┣━01_DHT11温湿度传感器_解析数据.mp4) _0 X4 H) p- D. u5 r3 C! b
┃  ┃  ┃  ┃  ┣━02_DHT11温湿度传感器_解决潜在bug.mp4
' D- h" `0 c$ u- t) w5 B' F┃  ┃  ┃  ┃  ┣━05_SPI协议OLED屏幕_官方示例.mp4: t5 s# V9 {* T! b# l! G2 c9 a
┃  ┃  ┃  ┃  ┣━06_SPI协议OLED屏幕_官方示例API.mp4, O+ l! [& Q+ t2 w# y8 e. N  C
┃  ┃  ┃  ┃  ┣━08_矩阵键盘_多个按钮.mp40 T+ ~4 b: \4 h- C9 j4 `3 @9 y
┃  ┃  ┃  ┃  ┣━13_使用EEPROM读写str.mp4! r' g5 A5 ]; H. o  p
┃  ┃  ┃  ┃  ┣━00_知识回顾.mp4
2 t' h  u7 _- |: A; U+ `& x┃  ┃  ┃  ┃  ┣━03_DHT11温湿度传感器_封装.mp4
7 e2 b" J. f4 U: [8 y6 I┃  ┃  ┃  ┃  ┣━04_SPI协议OLED屏幕_SPI通讯流程.mp4- Z# I3 G- @% z$ R
┃  ┃  ┃  ┃  ┣━07_矩阵键盘_单个按钮.mp4
: B# G7 _$ d$ f1 O- ]( u5 D┃  ┃  ┃  ┃  ┣━09_矩阵键盘_全部按钮_数组存储状态.mp47 z; V$ N3 q0 o
┃  ┃  ┃  ┃  ┣━11_矩阵键盘_全部按钮_封装.mp4
* I( j9 }9 A" M$ P! Q┃  ┃  ┃  ┃  ┣━12_了解EEPROM.mp4
$ g8 s  c6 b; q$ m7 b* e3 Y% k) E┃  ┃  ┃  ┃  ┣━10_矩阵键盘_全部按钮_二进制位存储状态.mp4
5 M5 X$ _, l8 y' C" Z# T┃  ┃  ┃  ┃  ┣━编辑器&浏览器配置.mp4) ^# F6 Y$ f( P# b; S
┃  ┃  ┣━day11
* W- J' C1 C; ^( F* Q┃  ┃  ┃  ┣━Video
0 e, D  y1 c' G: M9 v0 r* a┃  ┃  ┃  ┃  ┣━00_知识回顾.mp44 z- ]4 P1 I9 ^) ~- I& Y
┃  ┃  ┃  ┃  ┣━06_USB键盘_Config描述符.mp48 Q' N( s- T. h5 ]& l3 G. Y
┃  ┃  ┃  ┃  ┣━09_USB键盘_避免频繁发送数据.mp4/ E7 S: }5 |' N+ k
┃  ┃  ┃  ┃  ┣━10_USB键盘_PC_OUT获取LOCK状态.mp4
& O5 D6 L; V* u& o7 ?+ M* [4 e┃  ┃  ┃  ┃  ┣━小车焊接.mp4
% B1 K% g1 j4 b) G# n% J: W┃  ┃  ┃  ┃  ┣━01_HID官方示例.mp4
2 ^# l! A& H& E+ @; R( I4 [┃  ┃  ┃  ┃  ┣━02_HID文件了解.mp4( o0 F/ z& F$ ^' l5 m" E
┃  ┃  ┃  ┃  ┣━03_封装USB的HID协议驱动.mp42 m* }- ]9 y  r5 u; b6 G
┃  ┃  ┃  ┃  ┣━04_USB键盘_集成矩阵键盘.mp4
, n3 u  M0 T" m2 R7 Z┃  ┃  ┃  ┃  ┣━05_USB键盘_封装发送函数&点灯.mp4
/ q+ M4 _& }& f# h┃  ┃  ┃  ┃  ┣━07_USB键盘_配置HID描述符.mp4' Q! a2 `0 q/ \/ |2 k7 h' M# y
┃  ┃  ┃  ┃  ┣━11_USB键盘_封装LED回调函数.mp4; U4 q/ T, {+ U& W; }( K
┃  ┃  ┃  ┃  ┣━13_USB鼠标_实现移动&按键.mp49 a5 [  r" n' D" `8 w7 X; r0 Q
┃  ┃  ┃  ┃  ┣━08_USB键盘_发送多个按键.mp4
. l3 o0 d( x6 R' H3 Z; ^┃  ┃  ┃  ┃  ┣━12_USB鼠标_描述符配置.mp4
' n$ m: _& i$ W" e┃  ┃  ┣━day127 {, @3 @1 [) D5 W2 y5 f
┃  ┃  ┃  ┣━Video& I% o# V# \% }" ?
┃  ┃  ┃  ┃  ┣━00_知识回顾.mp4$ Y" w  S' O0 q. F+ u2 d0 y
┃  ┃  ┃  ┃  ┣━01_今日任务.mp4
+ B2 J2 L3 T% }2 J┃  ┃  ┃  ┃  ┣━02_新建STC8H原理图&供电.mp4
% T1 D! J' k4 z- X" r6 `0 D┃  ┃  ┃  ┃  ┣━04_CH340的二极管和电阻.mp4& X+ v! A9 H6 T
┃  ┃  ┃  ┃  ┣━06_线性稳压器LDO_可调输出ADJ.mp4
+ j( y; N2 q1 ?: J2 t, q┃  ┃  ┃  ┃  ┣━10_替换电容电阻为0603.mp4$ J/ s0 D/ y( P: j6 \! k2 Y) n. q
┃  ┃  ┃  ┃  ┣━小车自测固件.mp4
" l$ ]; F2 q$ n/ q2 A┃  ┃  ┃  ┃  ┣━05_线性稳压器5V-3V3.mp4
. V& T) I3 @" \$ X┃  ┃  ┃  ┃  ┣━07_Type-C接口.mp4% `! N; \; Z; u. A
┃  ┃  ┃  ┃  ┣━08_LED指示灯.mp4
7 X$ i! [4 v+ M  S; K  Y& h┃  ┃  ┃  ┃  ┣━09_串口和HID切换&所有引脚.mp47 B+ }9 [1 s2 ]3 P1 d/ N& a3 i
┃  ┃  ┃  ┃  ┣━11_PCB设计_摆放元器件.mp4) k, P) q1 ]( O+ [) e
┃  ┃  ┃  ┃  ┣━12_PCB设计_电源布线.mp48 [* M6 u9 ^0 `+ e; W
┃  ┃  ┃  ┃  ┣━03_CH340及周围电路.mp4
; m& F( A/ H) ^7 ]┃  ┃  ┣━day13( V" F+ [7 @  r8 X5 ?5 T
┃  ┃  ┃  ┣━Video2 B( A3 R- Q& I% S
┃  ┃  ┃  ┃  ┣━03_串口烧录器_PCB走线.mp4
% U0 @% @8 {2 e0 G; p┃  ┃  ┃  ┃  ┣━05_小闹钟_SCH_时钟芯片.mp41 v& K# P& b" S" b5 \% S9 [" m
┃  ┃  ┃  ┃  ┣━07_小闹钟_PCB电源走线.mp4
7 ], [" L0 a: f  |8 p' j' x┃  ┃  ┃  ┃  ┣━01_串口烧录器_SCH提取.mp4
! H. D2 d* r! z+ g┃  ┃  ┃  ┃  ┣━04_串口烧录器_端子接线问题.mp4
) r6 X3 Z# h6 L0 c# ?# ~- m5 t┃  ┃  ┃  ┃  ┣━06_小闹钟_PCB_摆放器件.mp4: j/ D8 e! W9 ]" N* J
┃  ┃  ┃  ┃  ┣━06_小闹钟_SCH_其他外设.mp4! `- `/ L- i! a7 t9 s
┃  ┃  ┃  ┃  ┣━02_串口烧录器_PCB布局.mp4! t4 A; Q' |) k- F
┃  ┃  ┣━day14
" J+ Q: M2 [  k+ B┃  ┃  ┃  ┣━Video
% _4 g6 T6 ]: m4 N0 z5 A- X┃  ┃  ┃  ┃  ┣━01_了解最小操作系统.mp4
# {; I. v# ?7 c2 r0 T' y┃  ┃  ┃  ┃  ┣━02_RTX51系统_环境初始化.mp4
7 C3 R. d% o7 {! z6 I! K) X┃  ┃  ┃  ┃  ┣━04_RTX51系统_集成库函数.mp4
. r! T- r3 [( [$ u! Y┃  ┃  ┃  ┃  ┣━09_巡线小车_简介.mp47 Y$ O) o, Y( }" o
┃  ┃  ┃  ┃  ┣━11_巡线小车_按键控制.mp4
7 S' _% X' }2 A) I8 |5 r- ^1 \┃  ┃  ┃  ┃  ┣━03_RTX51系统_多任务执行.mp45 b" V/ q! v3 \; d
┃  ┃  ┃  ┃  ┣━05_RTX51系统_K_TMO和K_IVL区别.mp4! d5 H: z8 Q7 W* i
┃  ┃  ┃  ┃  ┣━06_RTX51系统_K_SIG信号.mp4. |9 v8 f2 ^' N
┃  ┃  ┃  ┃  ┣━07_RTX51系统_外设驱动.mp4
" e" v. J4 K) S& j1 V1 X( q┃  ┃  ┃  ┃  ┣━08_RTX51系统_按键更新数码管.mp4& [9 G  C( n8 f
┃  ┃  ┃  ┃  ┣━12_巡线小车_ADC电压检测Battery.mp4* Q( y8 |1 k) V2 {+ G# ?
┃  ┃  ┃  ┃  ┣━13_巡线小车_蜂鸣器Buzzer.mp4# o) K" @+ k: a  w- E% \# Q) G
┃  ┃  ┃  ┃  ┣━00_知识复习.mp4
- ?" y6 D( N! ]0 w- A┃  ┃  ┃  ┃  ┣━10_巡线小车_车灯控制.mp42 _9 p8 S2 Q1 E
┃  ┃  ┣━day15. ?& ~' q8 u- w: b8 U
┃  ┃  ┃  ┣━Video. r; x1 g) r' K
┃  ┃  ┃  ┃  ┣━01_超声测距_原理.mp4
% ]' v+ \5 y7 R& p1 f┃  ┃  ┃  ┃  ┣━02_超声测距_TRIG触发测距.mp43 Y2 M8 E2 s5 H
┃  ┃  ┃  ┃  ┣━03_超声测距_ECHO计算距离.mp4  n5 a: }- d- I9 I% V: y& T& l% ?
┃  ┃  ┃  ┃  ┣━04_循迹传感器_原理介绍.mp4
3 P% S9 E. K7 u9 r( f┃  ┃  ┃  ┃  ┣━08_巡线小车_IO控制电机.mp4
3 T. G; m7 o  ^: `; i. M9 S! C┃  ┃  ┃  ┃  ┣━09_巡线小车_PWM控制小车速度.mp4
/ ~2 b' e; \" r. g' Y' k+ _/ j/ K┃  ┃  ┃  ┃  ┣━11_巡线小车_PWM控制所有车轮.mp4' ^* l% }: }* A- I4 t
┃  ┃  ┃  ┃  ┣━12_巡线小车_PWM指定速度实现转弯&掉头.mp4
& z  d+ n) M8 t- a4 Q% f, [┃  ┃  ┃  ┃  ┣━05_循迹传感器_读取所有光电传感器状态.mp48 M6 ]: Y9 F9 f2 H
┃  ┃  ┃  ┃  ┣━06_循迹传感器_计算小车转弯方向.mp4* S' k4 o* A0 Z" a5 v0 U
┃  ┃  ┃  ┃  ┣━07_循迹传感器_光电传感器问题排查.mp4& V  S0 H4 k5 ]  |9 q: R! H( c4 j8 _
┃  ┃  ┃  ┃  ┣━00_知识回顾.mp4
4 q5 s2 G+ i: a; {┃  ┃  ┃  ┃  ┣━10_巡线小车_PWM控制前进后退.mp4
" C8 H: G, s& z" H+ O. o  W% g┃  ┃  ┣━day16
) O+ h- T* R% e$ c- p9 k2 [┃  ┃  ┃  ┣━Video
9 P# P( S, @  |3 t9 U$ _┃  ┃  ┃  ┃  ┣━01_巡线小车_根据按钮切换巡线功能.mp4- ?" E) w* X% i8 O
┃  ┃  ┃  ┃  ┣━05_蓝牙模块_AT指令1.mp4: a" s0 K% t3 s7 \9 T  ]! P0 x. \9 N
┃  ┃  ┃  ┃  ┣━07_蓝牙模块_通过核心板直连.mp4: c* N7 T5 \, H$ s, Z  T7 X7 G
┃  ┃  ┃  ┃  ┣━10_遥控小车_接收并处理模拟遥控器数据.mp49 M# v8 |8 O- y  H, J- ]
┃  ┃  ┃  ┃  ┣━02_巡线小车_根据巡线传感器调整方向.mp4
& w4 e2 ]/ ?, I) `; `, Z┃  ┃  ┃  ┃  ┣━03_蓝牙模块_简介.mp4
" _% h- N8 O2 Y9 m. U┃  ┃  ┃  ┃  ┣━06_蓝牙模块_AT指令2.mp4
7 }1 O3 g  ?# o# p; ~. t┃  ┃  ┃  ┃  ┣━08_蓝牙模块_通过PC或手机蓝牙连接.mp4
) `$ t/ k- N2 u┃  ┃  ┃  ┃  ┣━09_蓝牙模块_接收消息并执行.mp4
, O4 D$ ?/ {& a9 K┃  ┃  ┃  ┃  ┣━11_遥控小车_启用禁用超声测距模块.mp4
) P) F# c$ G+ [9 t& P$ d┃  ┃  ┃  ┃  ┣━12_遥控小车_启用禁用巡线.mp4
, `/ x. o. y/ j5 C, }, B2 z┃  ┃  ┃  ┃  ┣━13_遥控小车_遇到前方障碍物停车.mp4
! P. x( v6 @$ m┃  ┃  ┃  ┃  ┣━14_遥控小车_电量监测.mp4
/ X$ d8 \+ b, t% {+ ~┃  ┃  ┃  ┃  ┣━15_遥控小车_方向控制.mp4
8 z7 M5 L8 w/ h* G┃  ┃  ┃  ┃  ┣━04_蓝牙模块_通讯流程.mp4( s* Q- [; ]8 V7 ?, |) L. P/ n$ _
┃  ┃  ┣━day17
2 O, ?2 j; s1 G. O% X┃  ┃  ┃  ┣━Video
- O: R% H+ z) y3 e┃  ┃  ┃  ┃  ┣━02_舵机PWM_分频系数.mp4+ v6 ~) g/ ?* T2 G
┃  ┃  ┃  ┃  ┣━00_舵机PWM的控制原理.mp4
& t  Q4 }) M6 t3 n% W2 z) q┃  ┃  ┃  ┃  ┣━01_舵机PWM_工程初始化.mp4
5 s& h+ Y, ?! Q/ p, @┃  ┃  ┃  ┃  ┣━03_舵机PWM_修改不同的占空比.mp4
+ c( F6 `, F- H! s% ^* C2 U┃  ┣━04阶段:Python与上位机开发& R! L  o9 h6 Y3 a+ {# t2 H
┃  ┃  ┣━day01
8 c& r3 ?; x& v( S) ?. i┃  ┃  ┣━day02
: o, `! a: _- l6 r9 i┃  ┃  ┣━day03! }$ b- u( K) [
┃  ┃  ┃  ┣━Video
+ ^  S6 T7 }- }# m& w0 b┃  ┃  ┃  ┃  ┣━01_推导式.mp4
: Q+ Q% N1 |( n+ \1 O: ~┃  ┃  ┃  ┃  ┣━05_类和对象.mp4( z  w5 o$ E; c" o3 m; Q) p- D
┃  ┃  ┃  ┃  ┣━06_声明类&创建对象.mp4  ~7 J- `3 s; |8 F$ k3 o1 B
┃  ┃  ┃  ┃  ┣━09_练习_搬家具进房子.mp4! a3 Q9 S$ J+ \0 |, u. j
┃  ┃  ┃  ┃  ┣━15_面向对象_扩展知识.mp4
7 O& P* m: I5 q8 i0 N  C$ u9 G┃  ┃  ┃  ┃  ┣━17_pygame创建窗口.mp45 P  C8 |( T3 o: a1 }! L" a8 B
┃  ┃  ┃  ┃  ┣━00_知识回顾.mp4. J$ ~/ `" C, r1 a
┃  ┃  ┃  ┃  ┣━02_高级变量的公共语法.mp4" w$ H8 E  h+ g  P6 g# m
┃  ┃  ┃  ┃  ┣━03_练习_字符串的逆序统计.mp4$ j' D4 G  n+ O8 X' ^% j- d2 Q; Q+ X
┃  ┃  ┃  ┃  ┣━04_面向对象概念.mp4  V# l. K- B& t
┃  ┃  ┃  ┃  ┣━07_类的组成.mp4
) f+ R& m* M: K. ^* j- E┃  ┃  ┃  ┃  ┣━08_特殊方法和参数.mp4
5 n, P/ L- m& L, s0 n; R┃  ┃  ┃  ┃  ┣━10_str和repr.mp4- V9 E- ~, u) Y9 H
┃  ┃  ┃  ┃  ┣━11_private私有化.mp4
* b3 C4 [- U) M9 ?' L% ~% J- G$ P┃  ┃  ┃  ┃  ┣━14_面向对象_多态.mp41 Q+ _9 z* M. c1 _
┃  ┃  ┃  ┃  ┣━16_pygame环境准备.mp48 X: Z2 a  S/ @+ k& J: ]2 C9 f
┃  ┃  ┃  ┃  ┣━12_面向对象_封装.mp4
4 [5 ~6 E- P; r& b┃  ┃  ┃  ┃  ┣━13_面向对象_继承.mp4* b$ w& w' j% e3 v8 b: k
┃  ┃  ┣━day04  Y  B/ y$ b8 Y4 @% G; J' A
┃  ┃  ┃  ┣━Video. W+ L. f- K. ?* ]& Z1 a$ @0 L; ^; M
┃  ┃  ┃  ┃  ┣━03_pygame自动计算fps_Clock.mp4
$ ~+ @+ {( d* E# V* t% U┃  ┃  ┃  ┃  ┣━04_pygame绘制背景图&线条.mp4, H* l( d7 U8 _9 f. J
┃  ┃  ┃  ┃  ┣━05_pygame封装Snake和Food.mp4/ k' Z* C: i: y/ n, `
┃  ┃  ┃  ┃  ┣━06_pygame蛇身移动起来.mp4) p! B' e5 d$ e: X* j1 d5 j, Z
┃  ┃  ┃  ┃  ┣━07_pygame蛇身根据用户输入更新方向.mp4; ~% _" y+ k; G& n2 T5 c
┃  ┃  ┃  ┃  ┣━10_pygame吃掉食物&更新食物.mp4% E" B. F# V  ]7 c7 q
┃  ┃  ┃  ┃  ┣━11_pygame碰撞墙壁&身体判定.mp4  I+ @) g) C/ g7 k
┃  ┃  ┃  ┃  ┣━00_知识回顾.mp4
6 ^5 h$ h3 I" l: T) g) L5 i/ k; S┃  ┃  ┃  ┃  ┣━01_pygame基本操作.mp4
5 P9 p& G' Z! r+ W" d# G┃  ┃  ┃  ┃  ┣━02_pygame手动计算fps.mp4
! g* L: B! z, y8 c$ s┃  ┃  ┃  ┃  ┣━08_pygame封装Game类.mp4* p* O! ~0 W8 Q9 F" ^2 B7 Y1 Q
┃  ┃  ┃  ┃  ┣━12_pygame游戏结束&文字绘制.mp4
4 Q( I1 E6 C# U4 c┃  ┃  ┃  ┃  ┣━13_pygame穿墙从另一端出现&原地调头bug.mp4
; B! c3 b* C! F" Y┃  ┃  ┃  ┃  ┣━14_pygame其他细节.mp4
* ^* a* H2 ?1 I* `" G( U' g6 Q% e, k, p┃  ┃  ┃  ┃  ┣━09_pygame更新蛇头图标.mp4# `3 E" S- D/ s6 E8 ^
┃  ┃  ┣━day05
( t4 V* q8 O+ s7 w/ J& ?┃  ┃  ┃  ┣━Video
* I3 |: _; V: X┃  ┃  ┃  ┃  ┣━00_知识回顾.mp4
! m" C1 S' Y( p$ _' E, {+ X+ n┃  ┃  ┃  ┃  ┣━01_module_导入模块中的功能.mp4; K. U" F/ g% m, u
┃  ┃  ┃  ┃  ┣━04_VSCode配置常用代码块.mp4
1 ^- O7 }4 Z2 ]1 Q1 T" q% m6 z3 J% O┃  ┃  ┃  ┃  ┣━07_常用系统内置模块2_random_math.mp4, q1 ~$ Z, Q  }; K; i% ~
┃  ┃  ┃  ┃  ┣━09_异常捕获try_except_finally.mp4
; `+ }" j& j- A/ U( p5 W0 h┃  ┃  ┃  ┃  ┣━14_默认值参数和关键字参数.mp4
5 ~9 }' C$ D& P3 v0 X┃  ┃  ┃  ┃  ┣━17_可变参数_组合使用.mp4
# ^3 f  i6 q) F! E. B┃  ┃  ┃  ┃  ┣━18_递归函数.mp4
  y0 v/ n3 }( W8 R  S2 C5 c; n┃  ┃  ┃  ┃  ┣━02_module_模块导入冲突及解决.mp4
# F/ @# d4 S+ S0 I  f┃  ┃  ┃  ┃  ┣━03_模块内置变量__name__.mp4
; A( s( Q& ]2 L6 M2 j; h┃  ┃  ┃  ┃  ┣━05_包package.mp4
' G: ?# h) c1 x$ q; k3 s┃  ┃  ┃  ┃  ┣━06_常用系统内置模块sys_datetime等.mp41 |$ O; u" y- |
┃  ┃  ┃  ┃  ┣━08_异常捕获try_except.mp4" B* u' j; c+ n2 F# L  N% X# R
┃  ┃  ┃  ┃  ┣━10_异常捕获try_except_else_finally.mp40 B# T9 c8 W1 w0 ~% e4 \2 b: f: F
┃  ┃  ┃  ┃  ┣━11_常见异常.mp4
& x5 |" R" v* X' x┃  ┃  ┃  ┃  ┣━12_自定义异常.mp4( \* x( H& y$ ~* M  B
┃  ┃  ┃  ┃  ┣━16_可变参数.mp45 P2 l( r; P+ N3 q1 t# W
┃  ┃  ┃  ┃  ┣━20_文件的写入.mp4& i, b4 T: b4 o- x" N
┃  ┃  ┃  ┃  ┣━22_绝对路径&相对路径.mp4+ `1 t& e6 S0 e; I5 E
┃  ┃  ┃  ┃  ┣━23_练习_文件IO.mp40 }: R$ B+ u) w" V
┃  ┃  ┃  ┃  ┣━13_多个异常捕获&异常的返回值.mp4! W' N% o" }5 S& I$ N
┃  ┃  ┃  ┃  ┣━15_练习-根据需要创建用户.mp4
0 O$ g/ y3 N0 h6 f+ j/ d0 g┃  ┃  ┃  ┃  ┣━19_文件的读取.mp4
8 h2 j9 M: T3 p' ^" q┃  ┃  ┃  ┃  ┣━21_文件读写模式.mp4% m2 f1 _9 k' l
┃  ┃  ┣━day068 p% M! W1 w1 M' e4 s. E9 @8 ?% m
┃  ┃  ┃  ┣━Video
4 n5 I1 t) ?& |┃  ┃  ┃  ┃  ┣━00_知识回顾.mp4/ g: D5 [6 R( p" A+ ^! w) u
┃  ┃  ┃  ┃  ┣━08_冲突的产生及解决.mp4( D/ u6 }/ K: l
┃  ┃  ┃  ┃  ┣━01_版本控制系统Git.mp4
/ W( E0 c( H0 T+ f2 m┃  ┃  ┃  ┃  ┣━03_配置忽略文件.mp4
. T  A4 g. x. `( O┃  ┃  ┃  ┃  ┣━04_GUI工具操作.mp46 m( L4 i6 a4 H
┃  ┃  ┃  ┃  ┣━05_将新建项目&已有项目添加版本管理.mp4
$ r) ^6 ?# |' I$ j1 ]/ x  x┃  ┃  ┃  ┃  ┣━07_分支reset操作.mp47 b3 R; {# N* _
┃  ┃  ┃  ┃  ┣━09_Git分支操作.mp4: O9 A4 k. z4 D5 I8 }% ^6 L. O6 s& x
┃  ┃  ┃  ┃  ┣━02_git常用命令.mp45 V# `7 p( ], a, {/ @; ^/ A( }
┃  ┃  ┃  ┃  ┣━06_使用VSCode编辑器提交代码.mp4
! N* |* {3 Z  S8 J5 k; d) |) r┃  ┃  ┃  ┃  ┣━10_PyQt5概述.mp4
0 r! E8 e7 n; _┃  ┃  ┣━day07
: ^. m0 G% D" j* g) z┃  ┃  ┃  ┣━Video3 q3 [% N. Q6 g# N
┃  ┃  ┃  ┃  ┣━00_知识回顾.mp4
9 e! T  `$ k+ f+ D% E! k9 O┃  ┃  ┃  ┃  ┣━01_PyQt环境搭建_VSCode插件.mp4
. G3 r9 q" a- z- b┃  ┃  ┃  ┃  ┣━03_PyQt文本、图片及输入组件.mp42 v) C% T! a$ M
┃  ┃  ┃  ┃  ┣━04_PyQt按钮.mp4- v' K* T* ^# ~1 Y
┃  ┃  ┃  ┃  ┣━05_信号关联系统函数.mp4
, f  z5 F3 [/ d, i0 B" _& A6 B5 v┃  ┃  ┃  ┃  ┣━07_PyQt对话框.mp46 @4 k5 Y- a2 x1 p( {: ^8 ~
┃  ┃  ┃  ┃  ┣━08_单选&多选输入.mp45 ^$ Y1 s/ B; j  V4 V
┃  ┃  ┃  ┃  ┣━09_面向对象开发QWidget.mp4* f2 z# H9 ]3 V, I
┃  ┃  ┃  ┃  ┣━11_QWidget&关联槽函数问题.mp4) A; p( C7 r- {
┃  ┃  ┃  ┃  ┣━02_PyQt创建窗口&并设置窗口信息.mp4
4 C5 _, u% o1 I$ ?: t6 Z5 U; `& Z┃  ┃  ┃  ┃  ┣━04_槽函数使用lambda表达式.mp41 F7 K' G" q( ?1 s
┃  ┃  ┃  ┃  ┣━06_PyQt布局layout.mp45 o* X: R2 y# B& @) \
┃  ┃  ┃  ┃  ┣━12_加载QMainWindow自定义ui文件.mp4
9 Y/ O- }2 H8 A' a6 w┃  ┃  ┃  ┃  ┣━13_QtDesigner主要功能.mp4: a( U: Q7 w1 Q/ ?" Y4 s5 x& u" L
┃  ┃  ┃  ┃  ┣━14_自定义主题qt-material.mp4
+ ?" T; |+ P2 Q* `: n" v┃  ┃  ┃  ┃  ┣━10_加载QWidget自定义ui文件.mp4* c% a' C$ A# g& Z& c- V& p' q
┃  ┃  ┣━day08
' D1 A( \9 E/ c6 H& ?0 U0 q, a5 }┃  ┃  ┃  ┣━Video5 q3 |, |; y5 |
┃  ┃  ┃  ┃  ┣━02_端口和端口号.mp4
' R" c3 U2 b: O5 j6 }0 D: ~' V8 B% t9 N┃  ┃  ┃  ┃  ┣━07_TCP网络程序开发流程.mp4; I7 @; |% _7 }% i$ ^, f
┃  ┃  ┃  ┃  ┣━09_TCP服务端_接受并回复消息.mp4
6 u- s0 I/ {5 f# o7 U# Y  g+ m: k+ O* J┃  ┃  ┃  ┃  ┣━11_UDP介绍.mp4
. M% J( j  n6 E3 B' h0 J8 T. \: m┃  ┃  ┃  ┃  ┣━14_UDP广播.mp4
1 v- e, K/ x0 L! W+ c. N┃  ┃  ┃  ┃  ┣━16_多任务开发-线程.mp4
, p& E5 ^, O0 ^/ i" K$ f" }0 U┃  ┃  ┃  ┃  ┣━17_给线程添加参数.mp4
3 U: }" E1 ]' a┃  ┃  ┃  ┃  ┣━19_同步和异步.mp4# U5 V- b" U; @
┃  ┃  ┃  ┃  ┣━20_练习:多任务版TCP服务器.mp46 E& U7 X5 F  O5 w; F) _7 I
┃  ┃  ┃  ┃  ┣━00_知识回顾.mp4
9 J( v3 M% o2 r┃  ┃  ┃  ┃  ┣━01_IP地址.mp4# T% n3 ?- M* c
┃  ┃  ┃  ┃  ┣━03_socket套接字.mp49 w) F2 I0 k7 Z* o. A  T! u
┃  ┃  ┃  ┃  ┣━04_字符串数据编解码.mp49 H5 Y' F4 w4 J) o7 @' ^5 a0 w% _
┃  ┃  ┃  ┃  ┣━05_TCP特点.mp45 c" n8 S, `/ B* w0 {8 J
┃  ┃  ┃  ┃  ┣━06_TCP拓展知识_三次握手&四次挥手.mp4
& Y* N" H# F; T6 q) I┃  ┃  ┃  ┃  ┣━10_TCP服务端_循环接受客户端.mp4
- S. V7 m% K( g% R. Q4 E. O┃  ┃  ┃  ┃  ┣━12_UDP发送端代码实现.mp4- `8 T- z- X# |" Z+ q) K3 B
┃  ┃  ┃  ┃  ┣━13_UDP接收端代码实现.mp4
7 e' C3 T' [  B% w2 @9 M0 f( j* B┃  ┃  ┃  ┃  ┣━15_多任务介绍_并发&并行.mp4
/ K2 H6 j6 e+ x7 C- r) R┃  ┃  ┃  ┃  ┣━18_守护线程.mp4( F, ?2 R" v( ^$ i
┃  ┃  ┃  ┃  ┣━21_Python的venv虚拟环境.mp4
+ |$ n) ~1 K# e0 `& F2 Q┃  ┃  ┃  ┃  ┣━08_TCP客户端发送并接收消息.mp4
1 e% `5 f" Z7 u/ V1 n┃  ┃  ┣━day09
; b- f# G4 [# H4 \┃  ┃  ┃  ┣━Video/ N3 H% @: z4 A4 Z8 x7 |4 j
┃  ┃  ┃  ┃  ┣━02_加载ui_res下的资源.mp4
1 ]9 X) P' ~# X1 f' x; i5 V┃  ┃  ┃  ┃  ┣━04_网络工具_TCP客户端_连接服务器.mp4
! z# M+ K9 ^) N, B) K( U$ f$ q8 u; z┃  ┃  ┃  ┃  ┣━07_网络工具_TCP客户端_发送数据.mp4
2 C" d; W4 ~/ X0 S& D& w┃  ┃  ┃  ┃  ┣━08_网络工具_TCP服务器_接收数据.mp48 ~7 H9 H* k. |' o# k; u
┃  ┃  ┃  ┃  ┣━12_串口工具_UI界面搭建.mp4
' B8 j6 o; w  [2 N" z8 R1 Q& r3 i┃  ┃  ┃  ┃  ┣━13_串口工具_扫描所有设备.mp4
, `. r2 ^" M, s7 s+ W- Z; T5 n" H┃  ┃  ┃  ┃  ┣━00_知识回顾.mp44 B* S" \- j5 q& \
┃  ┃  ┃  ┃  ┣━01_初始化PyQt5实用工具UI.mp4& v* r0 ?  J. O3 X$ J$ f
┃  ┃  ┃  ┃  ┣━03_网络工具_TCP客户端_初始化.mp4
& I8 {  E' Y8 F  ?; W, P┃  ┃  ┃  ┃  ┣━10_网络工具_TCP服务器_隐藏显示Widget.mp4
" W" o0 b$ [7 ?# ^" t4 M: {2 k┃  ┃  ┃  ┃  ┣━11_串口工具_pyserial的使用.mp48 s8 C- @: |8 O  ]
┃  ┃  ┃  ┃  ┣━05_网络工具_TCP客户端_根据连接状态更新UI.mp4, ?9 ?  ^0 M" ?. z2 x, y) T  j7 y$ N
┃  ┃  ┃  ┃  ┣━06_网络工具_TCP客户端_循环接收展示数据.mp4
. W) y, |6 Y# {+ Q3 y┃  ┃  ┃  ┃  ┣━09_网络工具_TCP服务器_接收多个客户端数据.mp49 }! X" z4 W/ }$ {( ]# V
┃  ┃  ┃  ┃  ┣━14_串口工具_设置对话框.mp4( S1 P9 u6 m* _9 C
┃  ┃  ┃  ┃  ┣━15_串口工具_通过子线程异步接收数据.mp4% |% J/ ]4 X, W. d, b
┃  ┃  ┃  ┃  ┣━16_串口工具_更新数据及状态到UI.mp42 D  O; I4 g; O  L$ k) E5 Y! ^
┃  ┃  ┣━day10
' z& a% h4 P+ ~' N& T┃  ┃  ┃  ┣━Video3 B2 \$ z! a9 U( e2 n6 u, W- k# ^
┃  ┃  ┃  ┃  ┣━00_知识回顾.mp4
! S) r- \' ]- z! H/ I! z┃  ┃  ┃  ┃  ┣━01_Python的蓝牙模块pybluez调试设计.mp4, y, E, U, w' `7 P+ u& U
┃  ┃  ┃  ┃  ┣━02_蓝牙助手_初始化UI.mp4
& c6 t% C& ]6 Y┃  ┃  ┃  ┃  ┣━05_蓝牙助手_发送数据.mp4( E& F+ V# h2 H3 v, s+ g+ V
┃  ┃  ┃  ┃  ┣━06_聊天室_UI界面搭建.mp44 d4 P7 w) T, b/ [& M2 m
┃  ┃  ┃  ┃  ┣━08_聊天室_将异步数据接受任务封装到Mananger.mp4% k, {% L. M! m& B' ^7 ?9 I2 J
┃  ┃  ┃  ┃  ┣━13_彩色日志工具.mp4
$ @; s) L3 X, [; V┃  ┃  ┃  ┃  ┣━14_PyQt多线程&多任务管理.mp49 U' X5 y/ [! P4 r2 g
┃  ┃  ┃  ┃  ┣━04_蓝牙助手_连接设备并更新状态.mp4
% u" x8 b9 V( I5 M, Q┃  ┃  ┃  ┃  ┣━09_聊天室_自定义信号和槽.mp4& ]/ @) ]6 u( x* f; b7 h% R$ ~
┃  ┃  ┃  ┃  ┣━10_聊天室_解析并展示历史消息.mp4/ M8 |# x2 Y3 c" e) m3 f( E
┃  ┃  ┃  ┃  ┣━12_使用pyinstaller打包程序.mp4
0 |& j& A$ p* y) G- A# w( [& T┃  ┃  ┃  ┃  ┣━03_蓝牙助手_扫描所有蓝牙设备.mp4- d  r8 n8 T0 v
┃  ┃  ┃  ┃  ┣━07_聊天室_聊天室数据获取.mp4) c/ l" a& p/ O7 N3 s, _+ h
┃  ┃  ┃  ┃  ┣━11_聊天室_发送消息.mp4
5 s( ^, ?  a! i0 P4 E8 t3 Y8 ]' ^: |┃  ┣━05阶段:GD32开发
  x' s' L2 [3 E6 X& j┃  ┃  ┣━day018 _* v2 a1 W" {* j
┃  ┃  ┃  ┣━video/ g* Z' s- e( a/ g/ V, B" k
┃  ┃  ┃  ┃  ┣━02_扩展板介绍.mp4
+ }6 ~, v& w$ H' {% a/ \┃  ┃  ┃  ┃  ┣━03_51单片机和ARM说明.mp4
+ S$ E) P) l1 }! `! Q5 ]┃  ┃  ┃  ┃  ┣━04_芯片内部外设概述.mp4$ b7 H' y  o1 t8 [
┃  ┃  ┃  ┃  ┣━07_梁山派说明.mp4; V0 M& M2 J3 d0 s6 _- _  i' ~
┃  ┃  ┃  ┃  ┣━10_ARMPACK安装.mp4
- q5 z+ h3 k- y! [  I┃  ┃  ┃  ┃  ┣━11_ARMCC V5安装和配置.mp4
" `# J5 q9 O4 F/ n& N0 Y┃  ┃  ┃  ┃  ┣━13_SPL库和HAL库.mp4
$ H2 D* \" o1 h. ^┃  ┃  ┃  ┃  ┣━16_GD32_模板创建.mp4# A2 B6 _6 m$ S" G% X# U4 x
┃  ┃  ┃  ┃  ┣━17_测试GD32模板.mp42 v( S/ p- o: r6 B. e5 z, K9 |
┃  ┃  ┃  ┃  ┣━19_system_tick介绍.mp48 l/ o' d$ H/ n, [7 @
┃  ┃  ┃  ┃  ┣━20_STM32点灯测试.mp4$ C7 C  A* M) N  {/ }8 ]
┃  ┃  ┃  ┃  ┣━21_STM32 V6问题.mp4. b) s) M6 `4 Z, \
┃  ┃  ┃  ┃  ┣━5_ARM介绍.mp4  }% w/ \' l1 p  _% ?/ ]# _
┃  ┃  ┃  ┃  ┣━01_开发板介绍.mp4( D! b; h) h, A( {9 b0 n( R
┃  ┃  ┃  ┃  ┣━06_ARM32芯片介绍.mp47 j( u2 L; n  @% s
┃  ┃  ┃  ┃  ┣━09_Keil安装2.mp4
& ?. n3 I- {# o0 ~' w( M┃  ┃  ┃  ┃  ┣━12_GPIO点灯实现.mp4# @; y* d( h2 k
┃  ┃  ┃  ┃  ┣━14_GD32标准库资料下载.mp4
0 d' w- Q, X6 X1 L: {┃  ┃  ┃  ┃  ┣━15_GD32_外设库文件系统介绍.mp4
. `& \* L% e& w- e) _  O, ~┃  ┃  ┃  ┃  ┣━08_Keil安装说明.mp4& N9 ]# ~! C6 c% p' E! t" u
┃  ┃  ┃  ┃  ┣━18_stm32_SPL库移植V5.mp4
, F, G( P. {3 Z6 p┃  ┃  ┣━day027 p0 _! i5 W! u+ k
┃  ┃  ┃  ┣━video0 @$ ]7 E( a) k6 i1 w$ A- P
┃  ┃  ┃  ┃  ┣━02_梁山派原理图初步说明.mp4
- ~* J' o- Q4 i/ @% y, y┃  ┃  ┃  ┃  ┣━03_转接板引脚说明.mp4
1 O& `$ ?3 R7 j7 y┃  ┃  ┃  ┃  ┣━05_GPIO引脚基本电路说明.mp4
, H/ ~: Q  u* z  I  f┃  ┃  ┃  ┃  ┣━06_GPIO引脚内部寄存器控制电路详解.mp4% i+ k% }0 a' C: S3 C9 m3 _0 T
┃  ┃  ┃  ┃  ┣━09_GPIO的输入模式.mp43 Z1 z" j; t  ?6 v* R
┃  ┃  ┃  ┃  ┣━10_代码中的输入输出情况分析.mp43 y3 n8 R$ F" j4 D1 k1 h# b/ b
┃  ┃  ┃  ┃  ┣━14_总线介绍.mp4/ a! ~' w6 S! c
┃  ┃  ┃  ┃  ┣━15_时钟树介绍.mp4
# r& \0 `$ _- K+ |. ]' V9 R┃  ┃  ┃  ┃  ┣━16_电量显示需求说明.mp4
' R2 h) D/ D# }8 v/ A2 c┃  ┃  ┃  ┃  ┣━17_模拟开始充电和结束充电.mp4; {$ K0 \+ z9 p$ P. x6 }
┃  ┃  ┃  ┃  ┣━19_BSP驱动初始化.mp47 N8 g; c6 G# f5 A: x
┃  ┃  ┃  ┃  ┣━01_转接板介绍.mp41 [" P' C% h! c% M5 R4 j9 S
┃  ┃  ┃  ┃  ┣━04_MOS管基础.mp4
6 Q0 Y6 u7 ]; Q- d) q2 M& p┃  ┃  ┃  ┃  ┣━07_GPIO的推挽和开漏.mp4
8 K# v$ i. ?" ]7 A3 M; b! B┃  ┃  ┃  ┃  ┣━11_ARM的输入输出电路小结.mp4
3 j1 o5 H  s$ _. e; k┃  ┃  ┃  ┃  ┣━12_GPIO输出和输入案例.mp4' H2 g, }9 X$ N
┃  ┃  ┃  ┃  ┣━13_GPIO输入按键配置.mp4
& y/ J# L9 y# d9 ~┃  ┃  ┃  ┃  ┣━18_模拟电量增加.mp4  V; Q7 b; f# ]% W  M
┃  ┃  ┃  ┃  ┣━20_BSP驱动开始和结束的业务.mp43 Y. G. i; ^5 b" w  Y% F3 N
┃  ┃  ┃  ┃  ┣━21_BSP流水灯初步实现.mp4' m8 u# |5 H* \0 q2 y/ v
┃  ┃  ┃  ┃  ┣━22_BSP流水灯逻辑实现.mp44 E5 w$ H9 P: [' R0 @8 L7 _, k
┃  ┃  ┃  ┃  ┣━08_GPIO的推挽和开漏的线与操作.mp4
6 D7 c3 @0 ]* }+ W2 T1 {( ]; r┃  ┃  ┣━day03
* @7 D; ~6 d. _, V┃  ┃  ┃  ┣━video* `) ~  L3 B, S, i3 p. h8 t
┃  ┃  ┃  ┃  ┣━01_STM32_GPIO输入操作.mp4
, V$ r9 K! H3 Y┃  ┃  ┃  ┃  ┣━07_串口发送流程.mp4
/ ~) V5 G4 U) x  @┃  ┃  ┃  ┃  ┣━08_串口发送字符串和printf.mp4& V; ^1 Q# Q$ d/ M! ?
┃  ┃  ┃  ┃  ┣━10_串口接收的配置.mp4$ K9 y' ?  m& `0 }
┃  ┃  ┃  ┃  ┣━14_GD32串口驱动封装.mp4
7 }# `2 Z5 V4 J9 d┃  ┃  ┃  ┃  ┣━16_STM32串口封装_串口部分.mp4
" g$ p  o8 N! G1 {6 B┃  ┃  ┃  ┃  ┣━02_STM32_流水灯实现.mp4; K4 L: ?/ z) c7 ]. D% H  O
┃  ┃  ┃  ┃  ┣━03_串口基础理论.mp4' |4 f1 d) I: @& _2 ?& R
┃  ┃  ┃  ┃  ┣━04_串口初始化API详解1.mp43 W) w) E  K' Q. W7 V' T8 U
┃  ┃  ┃  ┃  ┣━06_串口发送调试.mp4
! y! p0 d7 Y! o8 B7 ]# ?: p┃  ┃  ┃  ┃  ┣━11_串口接收中断状态变化说明.mp4
! i9 ~6 C9 F0 Q" W0 P┃  ┃  ┃  ┃  ┣━13_串口接收逻辑实现.mp4, i: v: E% m/ u6 o
┃  ┃  ┃  ┃  ┣━15_STM32串口封装_GPIO部分.mp4, N" Y- j: y! Z8 h
┃  ┃  ┃  ┃  ┣━18_文档来源.mp4
( t4 I( [9 V6 n  g/ n, S┃  ┃  ┃  ┃  ┣━05_串口复用功能发送实现.mp47 d0 i4 D/ C3 j1 p& B
┃  ┃  ┃  ┃  ┣━09_串口发送配置需要关注的点.mp4& d  C6 h4 [: l
┃  ┃  ┃  ┃  ┣━12_串口接收中断过程说明.mp4
* I  ^/ n% N0 ?0 l8 N% l, Y┃  ┃  ┃  ┃  ┣━17_STM32串口封装实现.mp4
% F( \2 |1 c/ t4 Z  O7 \/ ~┃  ┃  ┣━day04
9 _6 G6 s, q$ z, y- K5 V" {" E┃  ┃  ┃  ┣━video4 a0 D: d- S/ n" g
┃  ┃  ┃  ┃  ┣━05_按键外部中断实现.mp4
: {, L* p" z; f3 N  P8 s/ n$ R┃  ┃  ┃  ┃  ┣━07_扩展板外部中断按键实现.mp4: S- A: H* o0 l3 m* L9 h: H
┃  ┃  ┃  ┃  ┣━10_外部中断软件触发.mp4
+ X, U5 }5 K) Q. q┃  ┃  ┃  ┃  ┣━11_中断优先级介绍.mp4& U% E/ a2 ?3 J+ x/ B7 R% w
┃  ┃  ┃  ┃  ┣━12_中断优先级配置_全局和局部.mp4) T  ~$ w+ H- |) \" w# V# x
┃  ┃  ┃  ┃  ┣━14_中断优先级小实验.mp46 r( }% }% S& Y% |2 u7 }) `
┃  ┃  ┃  ┃  ┣━15_外部中断简单封装.mp4
: {4 E" n' r, K┃  ┃  ┃  ┃  ┣━01_中断机制.mp4* N& }9 x, E% W7 d/ Z- L1 g  L
┃  ┃  ┃  ┃  ┣━02_外部中断相关概念.mp4# j& F! |) t2 S9 X+ }4 ]
┃  ┃  ┃  ┃  ┣━03_外部中断初始化.mp4
  Z7 h( D$ l/ Q) C; c% n* t  q┃  ┃  ┃  ┃  ┣━08_外部中断关注点.mp4
: F# a2 {% Z" V┃  ┃  ┃  ┃  ┣━09_外部中断的特殊案例.mp4
) o  _5 u9 G7 o( \# l& u7 Q" e' r0 M┃  ┃  ┃  ┃  ┣━16_外部中断封装2.mp4' Q" r! `# H) r! c; N" e  d
┃  ┃  ┃  ┃  ┣━17_外部中断封装2.mp4
: R( C4 b  x" h# k* u; K. l┃  ┃  ┃  ┃  ┣━04_外部中断函数实现.mp4
4 M4 G% O# I9 ?* b( d( A┃  ┃  ┃  ┃  ┣━06_systick实现tick计时.mp4
9 i$ h. u  v  I: u┃  ┃  ┃  ┃  ┣━13_中断优先级环境准备.mp43 r% v7 |) J. y8 V
┃  ┃  ┃  ┃  ┣━18_STM32外部中断实现.mp4' u# e" B/ M& C, B5 d! L9 e  x
┃  ┃  ┣━day05
5 A( b( J: ]- U" i0 X, g% ^┃  ┃  ┃  ┣━video
. m6 z2 D: G: K( j# d; z┃  ┃  ┃  ┃  ┣━01_定时器初步认知.mp4
& D0 L8 p: Y8 F: p' |┃  ┃  ┃  ┃  ┣━05_通用定时器配置实现.mp4
8 q# V! h* j! K- b5 h8 C┃  ┃  ┃  ┃  ┣━07_定时器多通道的配置.mp47 }" }# `. L) v2 z
┃  ┃  ┃  ┃  ┣━10_定时器封装配置.mp4% k0 x$ ^+ `& X/ a$ i7 E8 K" ~
┃  ┃  ┃  ┃  ┣━02_基本定时器初始化配置.mp4
( J7 B* d; l. n/ v& G. B0 a2 m┃  ┃  ┃  ┃  ┣━03_基本定时器周期和频率配置.mp4
, v* Z4 {' ^# T┃  ┃  ┃  ┃  ┣━04_基本定时器分频计数.mp4
9 c) Q" m3 @4 C1 V- b) L0 L┃  ┃  ┃  ┃  ┣━06_定时器配置关系的内容.mp4
" }4 c/ l% Y- F; `3 X; c" g( E┃  ┃  ┃  ┃  ┣━08_蜂鸣器实现.mp4
$ P, T7 \8 A# L& M! x┃  ┃  ┃  ┃  ┣━09_定时器前期封装准备.mp4
& ~( F# b8 h! G' ]2 g; g  D┃  ┃  ┃  ┃  ┣━11_定时器封装完成.mp4
4 T$ X: n0 o. ?( g, |" i# x┃  ┃  ┣━day06
3 q2 z/ U9 a. W! c. k' P4 J+ q┃  ┃  ┃  ┣━video0 b) b: s4 M2 n! R- X. I3 H0 g
┃  ┃  ┃  ┃  ┣━04_高级定时器特性.mp4
, t; s9 A( w4 O. q3 m1 l┃  ┃  ┃  ┃  ┣━08_DMA通讯过程.mp4, o2 i& W7 P& l3 a
┃  ┃  ┃  ┃  ┣━09_DMA的一些关键文档信息.mp4
$ T; u* @8 z- r┃  ┃  ┃  ┃  ┣━01_高级定时器配置.mp4
. H0 ~" u% b" e* A( B┃  ┃  ┃  ┃  ┣━03_高级定时器封装配置.mp4, m/ y. R% {& ?" y3 k& U9 A
┃  ┃  ┃  ┃  ┣━05_STM32_timerGPIO配置.mp4
9 c* H. w$ R5 k/ e+ J┃  ┃  ┃  ┃  ┣━06_STM32_timer_channel和brk配置.mp44 ?! U' ^! N! k) u1 @# \% P0 `9 a
┃  ┃  ┃  ┃  ┣━07_CPU内存外设数据间通讯过程.mp4
1 t" `  I" d" X: M1 T9 S┃  ┃  ┃  ┃  ┣━11_DMA实现内存到内存的功能.mp4
1 j5 X- a2 r0 O1 `% W/ Y0 a( A, E$ N┃  ┃  ┃  ┃  ┣━12_DMA内存到内存关心的配置.mp4! s7 z3 v6 r+ ?! [8 t
┃  ┃  ┃  ┃  ┣━13_DMA内存到内存中断完成.mp4' \1 |# I' x' k  V/ z
┃  ┃  ┃  ┃  ┣━02_高级定时器极性和break电路配置.mp4# K! S2 g4 t1 f7 q, ^* G0 C& C
┃  ┃  ┃  ┃  ┣━10_DMA的初始化常规配置.mp45 A. }# i' Q' q. K+ m$ V6 b! v
┃  ┃  ┃  ┃  ┣━14_DMA动态配置内存到内存的实现.mp4
, M! G. C& F$ K& v┃  ┃  ┣━day07- H! t$ C( a3 d1 p
┃  ┃  ┃  ┣━video
' r. A" z; ^# [) `┃  ┃  ┃  ┃  ┣━01_dma发送流程.mp4
  t' M4 _2 _* q. ?2 A1 y& J┃  ┃  ┃  ┃  ┣━04_DMA数据发送调试.mp4
+ Z! y7 ~8 ]0 b$ q7 X┃  ┃  ┃  ┃  ┣━05_DMA数据发送优化.mp4
/ p4 H$ N; x, r0 r4 Y5 ]) y┃  ┃  ┃  ┃  ┣━06_DMA串口接收配置.mp44 R+ U" d/ d. a9 E
┃  ┃  ┃  ┃  ┣━09_DMA接收中断逻辑实现.mp47 H  J- p3 \+ O9 R1 D0 U0 n- N
┃  ┃  ┃  ┃  ┣━12_STM32 DMA发送调试.mp4" K3 l. }2 ]5 X# l
┃  ┃  ┃  ┃  ┣━14_GD32 串口驱动封装初始配置.mp4- m3 F! o5 M5 [" K
┃  ┃  ┃  ┃  ┣━16_GD32 RTC时钟介绍.mp4
  d" @1 S& Z7 V- a# u┃  ┃  ┃  ┃  ┣━02_DMA数据发送地址配置.mp40 p4 I  {( \  S) Y
┃  ┃  ┃  ┃  ┣━03_DMA数据发送细节配置.mp4
3 b/ Q- a( `& R0 z┃  ┃  ┃  ┃  ┣━07_DMA串口接收流程分析.mp4
3 ^- K. |/ \9 R┃  ┃  ┃  ┃  ┣━08_DMA接收数据计数流程.mp4$ Y: L; G. G& a. h+ P2 K3 H  _
┃  ┃  ┃  ┃  ┣━13_STM32 DMA接收实现.mp4
+ e; U% B& @( N# E┃  ┃  ┃  ┃  ┣━10_STM32 DMA内存到内存.mp45 m& P/ |& k" K+ V- I3 N
┃  ┃  ┃  ┃  ┣━11_STM32 DMA发送配置.mp4' i5 [) F, o( f- ]! i5 K* ?* l- |# k
┃  ┃  ┃  ┃  ┣━15_GD32 串口驱动内部配置定义.mp46 \- K& e4 }/ ~6 N! c! r) _
┃  ┃  ┃  ┃  ┣━17_GD32 RTC时钟日期配置和读取.mp4
0 ], ~2 L4 X/ S┃  ┃  ┣━day08
+ \1 t3 d  x' }/ E┃  ┃  ┃  ┣━video
, M) k$ `( o& y# K3 l┃  ┃  ┃  ┃  ┣━01_RTC时钟闹钟参数配置.mp4
1 ?8 P2 n& a, o& y# q9 n: S" |┃  ┃  ┃  ┃  ┣━02_RTC时钟闹钟中断配置.mp4# A- [* K. E0 o* ]7 ~5 z4 c
┃  ┃  ┃  ┃  ┣━03_RTC闹钟代码来源说明.mp4
/ U9 @* o. w8 Y( O4 E- P7 h. Z┃  ┃  ┃  ┃  ┣━04_看门狗的基本概念.mp4  E  t) I* a0 V( w2 z
┃  ┃  ┃  ┃  ┣━06_窗口看门狗实现.mp4( i' T# ^. V& l1 B0 f+ N4 ]
┃  ┃  ┃  ┃  ┣━09_I2C写数据的流程.mp4
. x4 ^9 K# F; W# Y1 K$ G& x┃  ┃  ┃  ┃  ┣━11_I2C操作的基本环境准备.mp48 f: y$ s5 ~2 m4 g, m2 S
┃  ┃  ┃  ┃  ┣━13_I2C的START和STOP信号实现.mp4
2 O9 `6 I( j9 w. j┃  ┃  ┃  ┃  ┣━14_I2C的SEND数据信号.mp4" e/ J0 W. |, [: U) K) i$ }
┃  ┃  ┃  ┃  ┣━17_I2C的写数据实现.mp4
" F# T1 g0 h; M' d3 ]┃  ┃  ┃  ┃  ┣━05_独立看门狗实现.mp4
$ w8 c( ]( e2 y; F  e5 o! o; {┃  ┃  ┃  ┃  ┣━07_窗口看门狗问题.mp4
) D3 Y6 m* h& s/ U0 u  s7 [$ f┃  ┃  ┃  ┃  ┣━08_I2C一些常规理论.mp4" M  H" q5 m2 _2 o( h
┃  ┃  ┃  ┃  ┣━12_I2C基本信号函数定义.mp4
( l9 E: P- c- X- Y- X+ T┃  ┃  ┃  ┃  ┣━10_I2C写的开始结束和数据发送信号.mp4
' |& M  b7 U9 f1 @5 W┃  ┃  ┃  ┃  ┣━15_I2C的Wait ACK介绍.mp4. }( `! _* D- B/ D9 p
┃  ┃  ┃  ┃  ┣━16_I2C的Wait ACK实现.mp4
- f) `+ \. k. Z, K3 t┃  ┃  ┣━day09$ z$ ]& S4 Q! i& A" [) d! m1 p% x
┃  ┃  ┃  ┣━video
# w0 s) J5 c6 x* r2 `: C8 n┃  ┃  ┃  ┃  ┣━01_I2C通讯回顾.mp4
) s! l' A" \, @, d0 n5 F) |┃  ┃  ┃  ┃  ┣━02_I2C读取流程.mp4
. [" S% z/ z. `( d: b" q4 B# f% [┃  ┃  ┃  ┃  ┣━03_I2C读取流程代码表达.mp43 x# `: P) o: v- u7 m+ C
┃  ┃  ┃  ┃  ┣━04_I2C读数据信号的实现.mp4
. g/ n2 L% s) y6 ~" J9 P┃  ┃  ┃  ┃  ┣━05_I2C读取数据的实现.mp4; @. |: O  W! u2 b# M9 p1 N% _
┃  ┃  ┃  ┃  ┣━06_I2C错误状态定义.mp4
9 D% N; @8 \+ }2 w3 S1 j! A┃  ┃  ┃  ┃  ┣━08_I2C硬件电路写数据实现.mp4: g+ m$ q. G2 G) }
┃  ┃  ┃  ┃  ┣━07_I2C硬件电路的初始化配置.mp4- U% J7 X8 m, d8 r7 `( G1 F
┃  ┃  ┃  ┃  ┣━09_I2C硬件电路读数据实现.mp4! f) y& M2 r  s% V
┃  ┃  ┣━day10  R0 F& I, t  ]5 G2 _8 e9 h
┃  ┃  ┃  ┣━video( S4 z  c- _( h5 G
┃  ┃  ┃  ┃  ┣━02_I2C屏幕官方环境移植.mp4
, h" `- x( Q5 R; L( w┃  ┃  ┃  ┃  ┣━04_I2C屏幕协议逻辑调试.mp4$ V7 S) N+ U' w& O
┃  ┃  ┃  ┃  ┣━06_GD32的OLED屏幕驱动移植.mp4
7 v% w1 `! o! x( g) t/ `┃  ┃  ┃  ┃  ┣━12_GD32核心板MCU选型.mp4
/ I  v$ _/ _" N- B5 J  G% B# Q┃  ┃  ┃  ┃  ┣━17_核心板设计烧录按钮.mp4
% [8 e- T9 ]% z8 W9 W  Q┃  ┃  ┃  ┃  ┣━18_核心板设计DAP Link.mp4- A) ~9 h( {# T4 c/ d2 d
┃  ┃  ┃  ┃  ┣━01_数码管驱动移植.mp4
. _5 a/ x( ]+ B- J& s5 {' W┃  ┃  ┃  ┃  ┣━03_I2C屏幕移植的问题.mp4+ [5 P' P6 {" B; \3 `( K
┃  ┃  ┃  ┃  ┣━07_GD32的i2c移植过程中发送数据格式问题.mp4
# t/ g, L+ q/ F$ z. F$ m┃  ┃  ┃  ┃  ┣━08_二维数组内存分布问题.mp4
& M1 q7 h" }+ C# m: U, g┃  ┃  ┃  ┃  ┣━09_GD32的I2C的二维数据数据发送实现.mp4
! o8 p. _% |) P  |. h! [┃  ┃  ┃  ┃  ┣━11_I2C驱动封装实现.mp4- U5 `* v. N+ P9 N' u4 R/ ]1 ?
┃  ┃  ┃  ┃  ┣━14_核心板设计RTC时钟选型.mp4
! A/ m: P# B7 g' U2 O7 \: I┃  ┃  ┃  ┃  ┣━15_核心板设计重置按钮.mp4
2 W( t1 U% p1 |( A- |3 B┃  ┃  ┃  ┃  ┣━16_核心板设计电源部分设计.mp4
) V& D7 o' x" k8 s┃  ┃  ┃  ┃  ┣━19_核心板设计电源选型.mp4
4 {, b/ R! w- }5 y: t% Z┃  ┃  ┃  ┃  ┣━20_核心板设计LDO.mp4" v4 w+ y4 w" Q8 w
┃  ┃  ┃  ┃  ┣━21_核心板设计DCDC.mp4
1 [: u# R& Q! }┃  ┃  ┃  ┃  ┣━22_核心板比较.mp49 ?( x& C) C! E; U/ p6 W) z
┃  ┃  ┃  ┃  ┣━05_开发调试注意事项.mp4
$ }  Q6 I) I1 f┃  ┃  ┃  ┃  ┣━10_GD32的I2C硬件实现.mp44 x2 h- N% k3 I. h
┃  ┃  ┃  ┃  ┣━13_核心板设计非常规引脚说明.mp4
+ X2 y& V6 Q6 w0 c8 |┃  ┃  ┣━day11
' w* z* N. s. @  i1 p4 L┃  ┃  ┃  ┣━video
6 ?/ Z0 g7 v# E: H( A2 j& Y┃  ┃  ┃  ┃  ┣━03_线规格选型说明.mp4
5 S$ ^/ O/ L. L4 A; E9 i┃  ┃  ┃  ┃  ┣━06_梁山派母座封装创建.mp47 S7 R; `! a, n
┃  ┃  ┃  ┃  ┣━07_梁山派母座封装实现.mp4) S* n+ X+ d" p' y+ G, P  V
┃  ┃  ┃  ┃  ┣━08_电机驱动芯片选型.mp4
4 m/ W4 F0 ?: G┃  ┃  ┃  ┃  ┣━10_电机驱动芯片引脚介绍.mp4  g( r8 |- m: Q/ J
┃  ┃  ┃  ┃  ┣━12_MPU6050绘制.mp4
) a* _6 A" m! n* T┃  ┃  ┃  ┃  ┣━13_其他电路介绍.mp4
8 M8 H1 z, \) {) I; H┃  ┃  ┃  ┃  ┣━01_平衡车功能分析.mp4
% S3 X! k# i2 b9 v┃  ┃  ┃  ┃  ┣━02_电机介绍.mp4
- Y+ @8 r# R& @2 u  D┃  ┃  ┃  ┃  ┣━04_姿态传感器介绍.mp47 G& A0 `. \* r2 v& O
┃  ┃  ┃  ┃  ┣━05_梁山派母座元件创建.mp47 {# |0 b) s+ g( x
┃  ┃  ┃  ┃  ┣━11_电机接口配置.mp4' X/ P1 K; s# Q! t, `& k
┃  ┃  ┃  ┃  ┣━09_电机驱动原理图绘制.mp4
- O! \% M$ n+ k- j" ?5 b! {( a┃  ┃  ┃  ┃  ┣━14_电池供电版本实现.mp4" S. X+ I4 J6 a  [
┃  ┃  ┃  ┃  ┣━15_引脚功能分析.mp4/ J6 q; n$ g1 `. o& P. a5 {
┃  ┃  ┣━day120 s( k( e0 @2 F) ?* V0 T: \
┃  ┃  ┃  ┣━video8 }1 }; L$ c, S; \/ d* Z* W
┃  ┃  ┃  ┃  ┣━02_电机模块摆放.mp4
/ g; R' j; t7 h; h& ^9 b$ ^5 l┃  ┃  ┃  ┃  ┣━04_mpu6050布线说明.mp4
) t7 z# k7 p- l5 x# Y% }┃  ┃  ┃  ┃  ┣━06_其他模块布线说明.mp4
  L0 y) L6 N$ m# c┃  ┃  ┃  ┃  ┣━07_i2c屏幕引脚选型说明.mp42 M$ V) r' C1 T4 H8 ~; w
┃  ┃  ┃  ┃  ┣━08_布线注意的内容.mp4
0 v) s$ T7 t% l* n- s# o, x& F┃  ┃  ┃  ┃  ┣━01_布局摆放.mp4
0 z# m7 {( l/ ?/ x4 e# ?* N┃  ┃  ┃  ┃  ┣━03_电机模块引脚选型和电源走线.mp4& r/ B  Y5 s6 J! [7 b$ L
┃  ┃  ┃  ┃  ┣━05_蜂鸣器电路布线.mp48 |* f) o7 S+ ?" z0 p! X
┃  ┃  ┣━day132 z' q: a! z- G/ O7 F+ A
┃  ┃  ┃  ┣━video
. G+ s+ U  }2 U5 O0 R┃  ┃  ┃  ┃  ┣━03_ADC初始化配置介绍.mp4
- \- q+ |8 O+ H! P' Z$ V, u- z' _8 _┃  ┃  ┃  ┃  ┣━05_ADC配置参数说明.mp4- j# ?8 l8 m: l. H# K' O/ z6 e+ {8 S, T
┃  ┃  ┃  ┃  ┣━06_ADC温度采样结果.mp4
  t4 z4 Q. \( ]1 d$ W* P┃  ┃  ┃  ┃  ┣━07_ADC主频和采样时间的关系.mp4( c2 }" V1 G* @. z$ x* M
┃  ┃  ┃  ┃  ┣━09_ADC解决多路数据采样问题.mp4& L2 M+ i6 M, o; I+ b& Z& p! s% x9 o
┃  ┃  ┃  ┃  ┣━12_ADC的插入通道的实现.mp4
1 [% J/ n; j$ \. v┃  ┃  ┃  ┃  ┣━02_ADC原理介绍02.mp44 f. t! a7 Y0 Z  N& W# E
┃  ┃  ┃  ┃  ┣━08_ADC采样多路的配置和问题.mp4% ?5 t8 W' @. e: k
┃  ┃  ┃  ┃  ┣━10_ADC的DMA分析和配置.mp4+ E5 k+ I7 `: R9 j9 ^! a4 w6 p
┃  ┃  ┃  ┃  ┣━11_ADC的DMA采样实现.mp4
% J6 b- I9 U9 H" y┃  ┃  ┃  ┃  ┣━13_SPI基础概念介绍.mp4
6 {" o5 |3 E& B+ k& L6 h┃  ┃  ┃  ┃  ┣━14_SPI的时钟极性和相位极性.mp4' k; m% S' D2 o, u1 x9 A% I
┃  ┃  ┃  ┃  ┣━15_SPI的传输和采样的几种模式.mp4
* M2 o' x( B8 `# E┃  ┃  ┃  ┃  ┣━16_SPI屏幕移植.mp46 t& p% o0 M+ b- \
┃  ┃  ┃  ┃  ┣━01_ADC原理介绍01.mp44 s4 N) T% H" O
┃  ┃  ┃  ┃  ┣━04_ADC初始化常用配置说明.mp4
$ U" E$ f" l- Y! a. M┃  ┃  ┣━day14
7 R7 b' h6 \9 w# [┃  ┃  ┃  ┣━video
  p: R3 F) L: o5 s4 o# @1 g┃  ┃  ┃  ┃  ┣━03_SPI协议bug处理.mp4
' b, G! o1 G) d' S┃  ┃  ┃  ┃  ┣━04_SPI协议片选切换修复读时时钟问题.mp4
6 I# N% O# x# {# Y9 w┃  ┃  ┃  ┃  ┣━05_SPI协议的抽象封装.mp4
* F; [# B  A% F' `0 o1 a& F, L┃  ┃  ┃  ┃  ┣━07_SPI软实现应用到OLED中.mp4; m( j$ t0 V( g' k* N" w2 o; r; k
┃  ┃  ┃  ┃  ┣━10_SPI硬实现初始化.mp4
3 k7 j9 L! ^& M# ^$ a- u┃  ┃  ┃  ┃  ┣━11_SPI读写的实现和分频处理.mp4* j& p% }6 }, X2 l* ~" Z
┃  ┃  ┃  ┃  ┣━12_SPI读写Bug的处理.mp4' s! X3 q6 J( i. t
┃  ┃  ┃  ┃  ┣━15_SPI flash源码迁移.mp4% S# n9 p! W) G* ]
┃  ┃  ┃  ┃  ┣━16_SPI4接口抽取.mp4
) g4 O% v* G# K/ t  E! `┃  ┃  ┃  ┃  ┣━17_SPI Flash驱动改造.mp4
0 S1 l3 v2 P) F6 w# c% L┃  ┃  ┃  ┃  ┣━19_SPI的 读写软实现.mp40 W. e' a# M# E% h% w. }3 _; ]
┃  ┃  ┃  ┃  ┣━02_SPI的片选和时钟分析.mp40 x4 O0 G/ A: I, Z6 ^6 m
┃  ┃  ┃  ┃  ┣━14_SPI flash示例源码获取.mp4
8 P3 A, d( s4 s, ^" c" w+ C- n┃  ┃  ┃  ┃  ┣━18_SPI Flash 的API的使用.mp4. J% p/ o: P$ E' o+ b; L
┃  ┃  ┃  ┃  ┣━20_立创开源项目介绍.mp4
' X% j! G$ u1 g( R1 k┃  ┃  ┃  ┃  ┣━01_SPI调试环境的搭建.mp4/ L% p5 \4 }9 h. }8 |6 p( d2 y
┃  ┃  ┃  ┃  ┣━06_SPI协议读和写的实现.mp45 i/ k) X. l2 B, U+ y# G. ?  H$ |
┃  ┃  ┃  ┃  ┣━08_SPI软实现移植到GD32平台.mp4! }6 }; ]& I% m$ G% n; B/ D
┃  ┃  ┃  ┃  ┣━09_SPI config配置实现.mp4
  p2 n$ Z4 D4 y: i0 G, h┃  ┃  ┃  ┃  ┣━13_spi封装完成.mp4
2 S1 p, Z& [# V3 t& O# U$ Q┃  ┃  ┃  ┃  ┣━21_stm32 cubemx 的Repostory配置.mp44 g2 C; D3 y) `- M5 B# [3 S: A6 P
┃  ┃  ┣━day15. G  B9 u$ ]2 W7 D, r
┃  ┃  ┃  ┣━video$ L2 R- b! R; p& a0 k; j$ S: s
┃  ┃  ┃  ┃  ┣━01_PMU电池管理单元介绍.mp4
' L8 j- s0 b- m6 L! h' n┃  ┃  ┃  ┃  ┣━02_PMU的三种省电模式.mp4: [! I' q# d. M5 T6 v7 J
┃  ┃  ┃  ┃  ┣━04_PMU睡眠模式和深度睡眠模式演示.mp4
( ?7 o! L# `/ l2 C8 k" A┃  ┃  ┃  ┃  ┣━05_待机模式说明.mp4
) A+ w$ C2 r/ D8 E$ |┃  ┃  ┃  ┃  ┣━06_HAL库点灯实现.mp4# C! T  g) @0 [- }$ d
┃  ┃  ┃  ┃  ┣━08_HAL库时钟配置.mp4
4 T  G) o# J" C┃  ┃  ┃  ┃  ┣━10_HAL库中断和dma发送.mp4. ~8 ^  `6 X" @/ e
┃  ┃  ┃  ┃  ┣━13_HAL库ADC的实现.mp47 x  ?. c4 \9 L, N& X, X. `* l, F
┃  ┃  ┃  ┃  ┣━15_HAL库I2c写操作实现.mp42 G+ p" l1 |0 H9 ^$ ~; Z
┃  ┃  ┃  ┃  ┣━16_HAL库I2C读操作实现.mp4! X1 j& E  F4 [0 r( b
┃  ┃  ┃  ┃  ┣━17_HAL库SPI配置实现.mp4% h+ x! d% z; I6 b& M6 L1 V
┃  ┃  ┃  ┃  ┣━03_PMU模式初始化.mp4
: @; U% M6 \2 [4 D9 w" q┃  ┃  ┃  ┃  ┣━07_HAL库开发过程的强调.mp4; m0 b" o3 \2 ~$ T
┃  ┃  ┃  ┃  ┣━09_HAL库串口发送实现.mp46 O' ?+ X; Y$ X+ b' Z/ v' U( g
┃  ┃  ┃  ┃  ┣━11_HAL库串口接收实现.mp4
1 s. ^2 M0 h; v' Y9 e┃  ┃  ┃  ┃  ┣━12_HAL库的ADC配置.mp44 D$ k- I& J- b' \' r1 W
┃  ┃  ┃  ┃  ┣━18_HAL库SPI读写实现.mp44 v& _5 S& |$ T7 I% ?
┃  ┃  ┃  ┃  ┣━14_HAL库I2C配置.mp4+ Z' H/ {7 G$ j( A
┃  ┃  ┣━day16, e8 {4 @' U2 n) x2 `" U5 c/ `
┃  ┃  ┃  ┣━video
/ q: g2 Y7 Y2 z+ ?* m┃  ┃  ┃  ┃  ┣━01_HAL库TIM的环境搭建.mp4
9 V! h% K. g/ q! P; A/ V+ e┃  ┃  ┃  ┃  ┣━02_HAL库的TIM配置倍频.mp4
& t, B% z5 z1 g6 d, k┃  ┃  ┃  ┃  ┣━03_FreeRTOS介绍.mp4) ?# x1 g8 c* ?0 h
┃  ┃  ┃  ┃  ┣━04_FreeRTOS的源文件导入.mp4
+ s8 y$ O  C' Y5 t/ W: I┃  ┃  ┃  ┃  ┣━05_FreeRTOS移植中断接管问题.mp40 _* A# S) u9 g7 N% c( w7 Y; H
┃  ┃  ┃  ┃  ┣━06_FreeRTOS移植配置问题.mp43 ^6 \: x3 T0 h4 ~( c0 l& I- N1 y
┃  ┃  ┃  ┃  ┣━07_操作系统中的任务调度相关名称.mp4
- b6 P9 I$ m6 @0 U# j+ w┃  ┃  ┃  ┃  ┣━08_操作系统的调度机制理解.mp45 h5 ~/ D+ E% z' Y
┃  ┃  ┣━day17
, D& k6 [* Y+ i" s+ w┃  ┃  ┃  ┣━video. R/ m$ p9 Y3 s$ n& R9 C. k
┃  ┃  ┃  ┃  ┣━01_临界区的介绍.mp4
. T; m+ j8 q- [, _8 o6 o┃  ┃  ┃  ┃  ┣━02_内存分配说明.mp4
% O0 r- m2 f0 R8 N8 n! ?$ H┃  ┃  ┃  ┃  ┣━03_freeRTOS中断介绍.mp4
: f9 l$ O% ]: C9 K6 }┃  ┃  ┃  ┃  ┣━09_计数型信号量演示.mp4, i* A" I6 ?& O8 t& c! F! m7 t! Q
┃  ┃  ┃  ┃  ┣━11_递归互斥信号量演示.mp4+ ^; B' q. r3 w7 J
┃  ┃  ┃  ┃  ┣━12_队列介绍.mp4, f" j' d- i0 o! V0 _
┃  ┃  ┃  ┃  ┣━15_freeRTOS队列入队和出队.mp4# }' t" N* B+ s2 e! h
┃  ┃  ┃  ┃  ┣━17安装.mp48 R9 ^. S$ E3 ^/ v7 B! L* u
┃  ┃  ┃  ┃  ┣━08_二进制信号量演示.mp43 J, ^% G$ B$ a3 i8 v6 t9 V
┃  ┃  ┃  ┃  ┣━13_freeRTOS中的消息队列.mp4' d' f! |% L. p: P$ F3 |- q
┃  ┃  ┃  ┃  ┣━16_freeRTOS消息队列复杂类型.mp41 d/ I& e0 |5 x: u. }) y$ O/ _4 ^
┃  ┃  ┃  ┃  ┣━04_freeFTOS中断演示.mp42 k0 W2 o) K5 `
┃  ┃  ┃  ┃  ┣━05_freeRTOS官方文档介绍.mp47 |1 D+ y" r) N+ O! ?! Z1 g/ @
┃  ┃  ┃  ┃  ┣━06_freeRTOS的软件定时器.mp49 ~: \# K( A/ i2 X) V" C8 B- {
┃  ┃  ┃  ┃  ┣━07_创建二进制信号量.mp4: a1 t  k; H6 }' q" P2 x
┃  ┃  ┃  ┃  ┣━10_互斥信号量演示.mp40 b; m" Z+ f2 {7 ?: I
┃  ┃  ┃  ┃  ┣━14_freeRTOS队列创建.mp4+ n2 \7 p0 c5 u) M8 B8 d& T3 T( S
┃  ┃  ┣━day18
* l4 }' j5 U+ N9 O: ?. l┃  ┃  ┃  ┣━video0 H/ M) j. w' ~
┃  ┃  ┃  ┃  ┣━02_任务中队列的使用规则.mp4
2 k+ K! G: q  I" p┃  ┃  ┃  ┃  ┣━07_事件组的多接收.mp4$ `* \2 x2 j+ ^- T& c5 A9 ^* G$ P, U
┃  ┃  ┃  ┃  ┣━08_姿态简单介绍.mp4
8 a6 Y, c  V& _" H┃  ┃  ┃  ┃  ┣━09_MPU6050移植.mp4
# e; V+ D' Y3 Y% B& l┃  ┃  ┃  ┃  ┣━10_MPU6050调试过程.mp4' {. R8 O& f" L  y; I8 f
┃  ┃  ┃  ┃  ┣━15_电机霍尔传感器测速原理.mp4' }2 E6 O+ C% ], J
┃  ┃  ┃  ┃  ┣━01_队列结构.mp4
: Y5 L5 Y( R. f8 m; ^. m) o┃  ┃  ┃  ┃  ┣━12_验证MPU功能是否可用.mp4
# X. a2 N$ H. w$ w% _┃  ┃  ┃  ┃  ┣━13_验证问题说明.mp48 N9 O. E" P$ C! c; {
┃  ┃  ┃  ┃  ┣━14_电机的加速比.mp4, H9 ~" Z; V5 l0 c* Z7 [- N
┃  ┃  ┃  ┃  ┣━16_mpu调试过程说明.mp4
" r6 ]/ Z. U  c( }* F+ \6 ]┃  ┃  ┃  ┃  ┣━03_消息队列实现.mp4& M# q1 `1 ?, F9 ~1 @& W
┃  ┃  ┃  ┃  ┣━04_消息队列的中断发送.mp4* z  R+ q! q; H& M" C! O8 o
┃  ┃  ┃  ┃  ┣━05_事件组的基本概念.mp44 A+ R' P/ T1 C% y& t; Z
┃  ┃  ┃  ┃  ┣━06_事件组多事件触发.mp4
3 r2 o1 N2 Q/ [5 `8 |: e+ r9 C┃  ┃  ┃  ┃  ┣━11_示波器功能介绍.mp4
2 j$ J3 e# Q: M' T4 @┃  ┃  ┣━day19
7 b. e% r7 H2 K  t9 N* f" }┃  ┃  ┃  ┣━video
% Y- X+ W5 W1 G" k┃  ┃  ┃  ┃  ┣━01_编码器环境准备.mp4+ _" Q& `$ X* ]6 e, ?
┃  ┃  ┃  ┃  ┣━02_编码器测数实现.mp4
4 B# y* J* ?( b8 j' T$ a4 c┃  ┃  ┃  ┃  ┣━04_项目架构设计.mp4! i! z0 T& a# P/ s* u( H
┃  ┃  ┃  ┃  ┣━06_BSP驱动开发和PML联动.mp4+ [3 R/ u5 Q  m1 |
┃  ┃  ┃  ┃  ┣━09_通讯协议构建过程.mp46 h0 c, D- R0 r% m( X% i
┃  ┃  ┃  ┃  ┣━12_PC端实现指定协议封装.mp4; J) W+ H3 x5 }( Y& W5 b
┃  ┃  ┃  ┃  ┣━13_双方调试方式的调通.mp4
' r0 c) [, Q6 }; w: E1 W┃  ┃  ┃  ┃  ┣━16_开发板消息解析的实现.mp4
4 ]' O6 N, r& L  V8 O! T┃  ┃  ┃  ┃  ┣━17_STLink keil闪退bug修复.mp4% `. H* J; \* @$ T( L' `' m
┃  ┃  ┃  ┃  ┣━03_定时器正交编码器.mp42 k8 O& l1 `8 G7 @& Y) B: \
┃  ┃  ┃  ┃  ┣━07_BSP驱动开发的优化.mp46 R) _- B7 ?; u: z6 l
┃  ┃  ┃  ┃  ┣━08_项目代码结构介绍.mp4! x5 I) Z/ C9 w7 f) R( y
┃  ┃  ┃  ┃  ┣━10_通讯协议双方的职责.mp4
/ J3 j  ^; ]3 y- q) Z" N┃  ┃  ┃  ┃  ┣━11_PC端协议构建.mp40 Y+ R0 {, o0 h3 @
┃  ┃  ┃  ┃  ┣━14_环形缓冲区介绍.mp4
  ?) V( G2 |! `┃  ┃  ┃  ┃  ┣━15_环形缓冲区创建.mp4! w. n' z% u6 c' U
┃  ┃  ┃  ┃  ┣━05_项目结构新建.mp4$ {9 O+ b1 S& Y4 ~4 f3 l+ M
┃  ┃  ┣━day20- c% Q# c# Y, S  ]/ i6 c( G
┃  ┃  ┃  ┣━video" Q9 k: z" ]# O: u# A
┃  ┃  ┃  ┃  ┣━01_内存处理操作.mp44 B& I3 @. s0 y
┃  ┃  ┃  ┃  ┣━05_gd32 FreeRTOS接收协议逻辑.mp4
, l5 K+ T5 m& R! V7 F+ E; C┃  ┃  ┃  ┃  ┣━07_开环和闭环系统.mp47 o0 y, P. V1 _+ y+ M/ Z
┃  ┃  ┃  ┃  ┣━09_小车PID目标和测量值.mp4
0 Y  u# R6 q3 @  h" B┃  ┃  ┃  ┃  ┣━15_速度环说明.mp4/ F- a) X/ B7 I. [( n+ `1 Y9 B! H3 h
┃  ┃  ┃  ┃  ┣━16_速度环调节.mp47 ?! o* s' Y" A2 L% e7 y$ q1 Y$ K
┃  ┃  ┃  ┃  ┣━03_将协议移植到C51.mp4+ R' p( `% _  Y
┃  ┃  ┃  ┃  ┣━08_PID理论介绍.mp4
9 [# Q4 C3 g$ C; G┃  ┃  ┃  ┃  ┣━10_error调试测量介绍.mp4, J9 W3 z7 _9 G/ x' J7 k2 d
┃  ┃  ┃  ┃  ┣━11_I和D的介绍.mp4
% F+ T+ s* ^9 x: v9 E8 W5 d, W┃  ┃  ┃  ┃  ┣━14_平衡环调节点.mp4- ?, U7 ]7 [0 z' B/ w$ Z1 F- Z
┃  ┃  ┃  ┃  ┣━02_具体协议的解析.mp4$ K; o/ @( O% @9 M
┃  ┃  ┃  ┃  ┣━04_c51大小端温度.mp4
, y# Q9 e( y& W3 Q8 S, i┃  ┃  ┃  ┃  ┣━06_GD32 数据和解析和耗时操作分离.mp4: d0 U- ^+ ^# h; N+ |
┃  ┃  ┃  ┃  ┣━12_P值的范围选择.mp4; x0 Q$ w3 [1 v. k0 j
┃  ┃  ┃  ┃  ┣━13_D值问题.mp4
! i' j% S/ M# ~+ ], p2 K1 A9 }3 u& l┃  ┣━06阶段:lvgl开发; K- V+ j7 m6 T
┃  ┃  ┣━day01/ t$ J) t/ h, M; [/ J8 o
┃  ┃  ┃  ┣━video
4 J- m* k; }% {2 o. i0 w┃  ┃  ┃  ┃  ┣━03_lvgl概述.mp46 `( p% H# \3 k  q, R
┃  ┃  ┃  ┃  ┣━04_lvgl学习线路.mp4" F: l# ]8 Q/ x' L; q9 F4 ^3 T
┃  ┃  ┃  ┃  ┣━08_显示一个按钮.mp4! r7 z1 y: K! \! k) Q; D; T# B3 I
┃  ┃  ┃  ┃  ┣━09_LVGL显示第一个OBJ.mp48 h: ^8 {! U9 s- t6 u+ @9 ]% d
┃  ┃  ┃  ┃  ┣━10_显示样式.mp4" e0 X- L7 e8 h! C' ?& G* N6 q7 @
┃  ┃  ┃  ┃  ┣━16_按钮状态可选.mp4
; E" [2 R' U# `$ q; B4 M┃  ┃  ┃  ┃  ┣━20_textarea显示.mp4
# {; |4 t! R6 {┃  ┃  ┃  ┃  ┣━22_gif显示.mp47 q# J) d! u8 ]' P" p  W. o6 I
┃  ┃  ┃  ┃  ┣━26_官方例程如何学习.mp4
: \( t" I2 @# }┃  ┃  ┃  ┃  ┣━02_课程介绍.mp4! }; g8 W- K4 @7 g0 q
┃  ┃  ┃  ┃  ┣━05_lvgl模拟器环境.mp4
! V5 e: `/ W2 t* t$ I" ]┃  ┃  ┃  ┃  ┣━07_lvgl注意事项.mp4
! u# O: j! U! t- v# U$ B2 ^2 s┃  ┃  ┃  ┃  ┣━11_显示Label.mp4
6 m" l4 Z5 I/ K; h* m, s% b& R5 b┃  ┃  ┃  ┃  ┣━12_改变label字体大小和颜色.mp4/ |- b1 J9 L6 @5 g8 P# B
┃  ┃  ┃  ┃  ┣━14_显示button.mp4
, C- ?+ M+ C9 j7 s┃  ┃  ┃  ┃  ┣━17_cmake安装问题.mp46 S; c1 Q. I: p: b: r
┃  ┃  ┃  ┃  ┣━18_btnmatrix按钮矩阵.mp44 r2 O: h- a% W. h+ m/ @( a& y
┃  ┃  ┃  ┃  ┣━24_界面切换.mp4
, G. W& q: Y% T/ @7 @( b* F; e" w8 D# {┃  ┃  ┃  ┃  ┣━25_tabview.mp48 Y6 z5 c* Z4 G4 j
┃  ┃  ┃  ┃  ┣━27_动态的显示表格数据.mp41 t' w* S3 P  P+ N: @
┃  ┃  ┃  ┃  ┣━06_运行lvgl模拟器环境.mp4
5 m# v  T, k* E  ~┃  ┃  ┃  ┃  ┣━06_配置MINGW环境.mp4
. u$ I* S: R1 C: Q9 b& H/ c4 ]┃  ┃  ┃  ┃  ┣━13_如何显示中文.mp4. u  L1 ~2 Z4 b" D, Y
┃  ┃  ┃  ┃  ┣━15_按钮事件的处理.mp4. {7 y/ U% J" x! R. g5 \( H4 V
┃  ┃  ┃  ┃  ┣━19_btnmatrix事件处理.mp4/ H& T! \3 t; m2 N6 p4 p8 x
┃  ┃  ┃  ┃  ┣━21_img显示.mp4
' E' T+ y; w6 D& [2 f5 U' D# W┃  ┃  ┃  ┃  ┣━23_布局相关.mp4
9 \$ d: a3 ?0 l" B; r7 c! r┃  ┃  ┣━day02; p% m4 P: I7 p
┃  ┃  ┃  ┣━video8 s" N, D. p1 e1 W# g$ `
┃  ┃  ┃  ┃  ┣━05_vscode加载工程代码.mp41 n" }( y5 ?1 l/ j( m- W
┃  ┃  ┃  ┃  ┣━07_修改UI一些小细节.mp4
% U+ i- N; F; g! x  o┃  ┃  ┃  ┃  ┣━10_代码演示界面切换.mp4) `0 Q7 _9 [$ C+ f+ ^
┃  ┃  ┃  ┃  ┣━11_阅读屏幕相关资料.mp4) G! z6 }3 c6 T! D9 J
┃  ┃  ┃  ┃  ┣━13_屏幕移植注意事项.mp42 `/ Z7 i7 B2 b( k. h
┃  ┃  ┃  ┃  ┣━15_移植准备工作.mp4& P8 c, C9 v: [( G0 I8 V
┃  ┃  ┃  ┃  ┣━16_移植源代码.mp4
, O( e% C; S2 e( U) k2 M: P┃  ┃  ┃  ┃  ┣━18_移植显示部分.mp4
# W* O9 j$ H# O* W3 Z  y┃  ┃  ┃  ┃  ┣━19_演示显示部分.mp4
% b$ h  x) P/ o9 X; f┃  ┃  ┃  ┃  ┣━02_squareline界面说明.mp4
7 p1 i( N) f3 g; y! ]3 F4 B┃  ┃  ┃  ┃  ┣━03_查看示例工程.mp4# k: e; Y7 J4 U% }& i) ^
┃  ┃  ┃  ┃  ┣━04_创建UI工程.mp47 M. ?: G5 t, J
┃  ┃  ┃  ┃  ┣━06_完成时钟转动的代码.mp4
  a* G; K1 v5 y1 X┃  ┃  ┃  ┃  ┣━08_冒号添加动画.mp4  K8 I4 A  e0 r4 c$ N3 m% z
┃  ┃  ┃  ┃  ┣━09_温度显示界面.mp4
7 o. w) r/ X$ ^; i3 O+ f0 U┃  ┃  ┃  ┃  ┣━12_遇到新的芯片该怎么做.mp4
- _; `1 z& r3 F! j9 P+ K( c) C2 |1 G┃  ┃  ┃  ┃  ┣━17_按照官方文档移植启动流程.mp4: j& N( ?" O1 H% f- z6 Q
┃  ┃  ┃  ┃  ┣━20_移植触摸部分.mp4
/ g2 R. V3 k. q" W3 W  F┃  ┃  ┃  ┃  ┣━01_环境搭建的问题说明.mp41 q& n- K4 f, L, Z+ V
┃  ┃  ┃  ┃  ┣━14_导入触摸的代码.mp4
; s% j% {1 D& q% F" d┃  ┃  ┣━day036 K' v! f' d2 W8 y8 |
┃  ┃  ┃  ┣━video/ I/ b5 ~: A+ g% f
┃  ┃  ┃  ┃  ┣━02_移植Smartwatch.mp4
/ T* s' L' Y4 g% Z) N) W┃  ┃  ┃  ┃  ┣━05_导入freertos模板.mp4
0 f+ K" e3 U( T4 N- s. O; \┃  ┃  ┃  ┃  ┣━06_导入lvgl源代码.mp4+ Z; m* z0 ?+ ?( K( A
┃  ┃  ┃  ┃  ┣━01_上次课内容回顾.mp4
5 E9 N8 b0 b" O5 q/ Q0 j5 ~) A┃  ┃  ┃  ┃  ┣━03_实现代码逻辑.mp4$ r$ K" B4 o: B  m+ N
┃  ┃  ┃  ┃  ┣━04_使用vscode编写keil工程.mp4
+ V0 k0 b; |2 P7 _5 w* t┃  ┃  ┃  ┃  ┣━08_编写按钮与文本刷新案例.mp4
5 d4 b6 o" z7 n1 ]- N┃  ┃  ┃  ┃  ┣━07_编写5个核心代码.mp4! H" Z8 x, L/ m; }
┃  ┣━07阶段:JieLi_AC79开发
$ U0 q0 |1 J# @" N┃  ┃  ┣━day01
7 G/ _$ {1 _- B- n9 L. G* y+ k┃  ┃  ┃  ┣━video% C/ I* t- m7 u  ~) i" t
┃  ┃  ┃  ┃  ┣━06_输不出来的原因.mp40 z1 b4 u: ^2 t) K: [
┃  ┃  ┃  ┃  ┣━08_点灯.mp4
/ [, N) g  B5 V1 g2 k┃  ┃  ┃  ┃  ┣━10_pwm控制灯_下.mp4
% b# k5 J* c7 q% U" I┃  ┃  ┃  ┃  ┣━15_读取程序启动日志_中.mp43 K/ d! z0 R2 |/ s. M
┃  ┃  ┃  ┃  ┣━17_演示音乐的播放.mp4- M- A# r/ O1 X2 t, [& N
┃  ┃  ┃  ┃  ┣━19_屏蔽不要的内容.mp40 S4 w6 p5 s" f
┃  ┃  ┃  ┃  ┣━01_上次课问题.mp4
1 ]% L6 i8 Z4 Q+ j┃  ┃  ┃  ┃  ┣━02_线上文档说明_上.mp4
& @* h& ?( H$ E0 X┃  ┃  ┃  ┃  ┣━04_阅读代码相关的文档.mp4
6 y6 h- w9 z: t( x  ?" G7 v┃  ┃  ┃  ┃  ┣━05_输出helloitheima.mp4; j6 q  @1 Y4 d& e# w' I" u4 d
┃  ┃  ┃  ┃  ┣━07_输出日志.mp4
3 p2 K  n( d3 L' j$ o. ~┃  ┃  ┃  ┃  ┣━09_pwm控制灯_上.mp4
1 t8 g! t2 C  @┃  ┃  ┃  ┃  ┣━13_了解boardc文件内容.mp4
2 o9 U7 {+ [% \+ D┃  ┃  ┃  ┃  ┣━18_uart收发数据.mp4
. \+ }/ y" k  q+ H% w3 E0 S5 K┃  ┃  ┃  ┃  ┣━20_内容小结.mp4
  f; v2 k. O. r4 F3 j. j$ x┃  ┃  ┃  ┃  ┣━03_线上文档说明_下.mp4% [! Q" t5 o% ~! d- _
┃  ┃  ┃  ┃  ┣━11_一些问题说明.mp4
% {6 I, }1 Y4 Y4 d9 p; z- s┃  ┃  ┃  ┃  ┣━12_添加自己的c文件.mp4  C% x) c& @8 t9 Y; J, @; h
┃  ┃  ┃  ┃  ┣━14_添加按键空能_上.mp4% C# a+ }+ v5 [
┃  ┃  ┃  ┃  ┣━16_按键功能处理_下.mp4
$ ?! X* t2 V/ f* V6 N8 w) Z┃  ┃  ┣━day02
8 a4 `" [) F( D7 r! R. S┃  ┃  ┃  ┣━video
3 h: l! H" y8 K$ q; _  u2 P% Q┃  ┃  ┃  ┃  ┣━01-物联网项目分析.mp4
4 R) s- I7 N* B" n& x, f┃  ┃  ┃  ┃  ┣━02_开发方式.mp4
( ^* w+ s# x. u- b┃  ┃  ┃  ┃  ┣━03_JSON数据交换格式.mp4
* o8 n6 Q) H2 q. a+ N  P& K/ S┃  ┃  ┃  ┃  ┣━04_cJSON文档阅读.mp4# V' B6 i$ B0 t5 D. n7 G+ B
┃  ┃  ┃  ┃  ┣━07_封装了发送的功能.mp4/ e; ~  d. {" k, F& d9 ^0 y2 j1 T
┃  ┃  ┃  ┃  ┣━08_测试串口接收解析协议.mp4
, ]$ ^, z: Q4 S6 X- ?& n! c% a$ h% Q┃  ┃  ┃  ┃  ┣━11_阅读sdk代码.mp4
; L2 U. b/ G1 J$ p) |8 Q$ w┃  ┃  ┃  ┃  ┣━13_使用通用mqtt_sdk验证连接.mp4  V7 D: ?9 T4 X& R
┃  ┃  ┃  ┃  ┣━17_设备上传阿里云.mp4
9 J6 `0 T* I$ n% \8 q. b  J1 i: Z5 ~6 X┃  ┃  ┃  ┃  ┣━18_PC连接梁山派.mp48 t: v5 j; j9 |# d
┃  ┃  ┃  ┃  ┣━05_cJSON移植到keil中.mp4, }2 |( \( ^+ D& W* e  e
┃  ┃  ┃  ┃  ┣━06_cJSON数据格式化代码.mp45 E2 q% }4 }9 N
┃  ┃  ┃  ┃  ┣━09_串口数据收发代码实现.mp4
% p# b8 l+ t: Q! S  A9 n┃  ┃  ┃  ┃  ┣━10_阿里云端的配置.mp4; t7 R# K( @& ?: Q  K4 f
┃  ┃  ┃  ┃  ┣━15_下午_阿里云端的配置.mp4& f  P; Z; _4 ^: L% l0 l$ y0 ^1 y
┃  ┃  ┃  ┃  ┣━19_全流程上传逻辑.mp4
. f- E0 m8 a9 [8 N8 Z/ \┃  ┃  ┃  ┃  ┣━20_全流程下载逻辑.mp4
  H- O& Y% g; n0 Z. c┃  ┃  ┃  ┃  ┣━12_验证sdk连接.mp42 E" |* }% [+ {3 z5 D+ R% D
┃  ┃  ┃  ┃  ┣━14_阿里云创建步骤小结.mp4  j" [! r- f% X/ X, L: J
┃  ┃  ┃  ┃  ┣━16_使用alink连接阿里云.mp4
* J; l% S& \. F/ F/ R; p┃  ┃  ┣━day03, }- R( i9 K0 ^9 [- r" g
┃  ┃  ┃  ┣━video: ]7 L( `4 B, N! L% L
┃  ┃  ┃  ┃  ┣━02_编写串口收发函数.mp4
/ l; ]0 J# ?8 y6 C( L/ k! ~2 z┃  ┃  ┃  ┃  ┣━04_串口收发_异常调试.mp4
" C& U- N4 L" ^┃  ┃  ┃  ┃  ┣━05_配置wifi信息.mp4) R2 W0 x: x+ Q" }; d. h
┃  ┃  ┃  ┃  ┣━06_tcp代码复制.mp4" q8 J# T, |  q  L0 }  z/ H
┃  ┃  ┃  ┃  ┣━11_mqtt_demo代码编写.mp4
/ l  @" L% U: P6 c8 I5 G& h' H7 }┃  ┃  ┃  ┃  ┣━18_梁山派端代码修改.mp4- e) f0 B9 Z4 f3 c. |) F6 j
┃  ┃  ┃  ┃  ┣━01_流程回顾.mp4+ ^: X8 B. B4 z3 F! M: T
┃  ┃  ┃  ┃  ┣━03_串口收发_烧录代码.mp4
$ F( [: A- F7 T, m; f; L; E# s┃  ┃  ┃  ┃  ┣━09_网络连接部分问题说明.mp43 H) i* v* x( |3 i  ?! U7 U
┃  ┃  ┃  ┃  ┣━10_mqtt_demo代码阅读.mp4
! e; t" R6 B% z) d┃  ┃  ┃  ┃  ┣━12_mqtt_demo验证.mp4
/ E' y/ p( h% t2 }: a┃  ┃  ┃  ┃  ┣━14_uart与mqtt代码测试.mp44 d. O( r4 i- I& e
┃  ┃  ┃  ┃  ┣━15_流程回顾.mp4
! R1 B/ I+ S  P# {┃  ┃  ┃  ┃  ┣━16_mqtt收发代码测试.mp4) ~- Z! f5 p0 V2 C/ }' V3 g+ X
┃  ┃  ┃  ┃  ┣━17_屏蔽SDK中的日志.mp45 w0 p0 W6 Q. N0 y0 V7 M$ G1 |- ?, c
┃  ┃  ┃  ┃  ┣━19_梁山派端测试收发.mp4) v- z5 D8 a, G  q% \8 K* q! E1 U9 p
┃  ┃  ┃  ┃  ┣━20_物联网项目小结.mp43 F6 g( R- W% x; l, U4 Z
┃  ┃  ┃  ┃  ┣━21_移植屏幕显示部分.mp47 L  H& a6 z# g+ O
┃  ┃  ┃  ┃  ┣━22_lvgl需要注意的地方.mp4
8 T' m, A- A; F! a( M┃  ┃  ┃  ┃  ┣━23_课程小结.mp49 x$ E) x, K& p9 ~9 \% a" |
┃  ┃  ┃  ┃  ┣━07_网络连接部分.mp4  c% x) S% E: A6 T6 j) b3 z" C
┃  ┃  ┃  ┃  ┣━13_uart与mqtt代码合并.mp4
! z: m# g) [3 @9 }; f- m┃  ┣━08阶段:Linux驱动(ros)
" |! l8 s& U0 n+ m. J- i┃  ┃  ┣━day01-Linux, y3 k3 R3 }4 O: C
┃  ┃  ┃  ┣━01.课程内容讲解.mp4: U: g  s- S& @
┃  ┃  ┃  ┣━02.linux操作系统简介.mp4
5 `% f! v5 w; Z1 {┃  ┃  ┃  ┣━03.linux的文件和目录.mp4  @" v" B. U. l9 J% k* [5 o4 ~3 j
┃  ┃  ┃  ┣━04.命令的组成和帮助文档.mp46 b2 ]* {5 \  z2 u$ f
┃  ┃  ┃  ┣━05.查看和切换目录.mp4+ Z+ P2 _# t; ~' F% }4 Q; z: \
┃  ┃  ┃  ┣━06.文件和文件夹命令.mp4  I6 D$ d+ b- w
┃  ┃  ┃  ┣━07.输出重定向和查看文件内容.mp4/ V& l0 Q+ w6 @' D( g2 A8 u
┃  ┃  ┃  ┣━08.grep和find.mp4
, S0 U( g- S1 j2 U) e┃  ┃  ┃  ┣━09.管道.mp4
% i# r( D* E9 `7 }" s& D6 r┃  ┃  ┃  ┣━10.管道和链接.mp4
- s, `8 Y/ V( F1 Z, Q+ K┃  ┃  ┃  ┣━11.字母法修改权限.mp4( i9 r* v' }! \$ P7 {3 T! Y% U
┃  ┃  ┃  ┣━12.权限修改和超级管理员权限获取.mp4
/ d! U5 ^; H' e7 V5 z$ X8 v┃  ┃  ┃  ┣━13.文件压缩和解压缩.mp4
5 z7 c$ n( ?; n) t; _┃  ┃  ┃  ┣━14.软件卸载和安装.mp4' i5 P$ o; _" Q1 Z' F
┃  ┃  ┃  ┣━15.vim编辑器.mp4
8 c* Z/ |  p# ^) @  [5 M$ o┃  ┃  ┣━day02-Linux
7 E" |! {& ^+ S* t  a* l6 j; n┃  ┃  ┃  ┣━01.debug串口连接鲁班猫.mp4: P8 e7 ~* _* o. d1 {1 A# J) [
┃  ┃  ┃  ┣━02.共享网络连接鲁班猫.mp4
# O, }( q3 |" P- `1 m% |5 n0 G┃  ┃  ┃  ┣━03.鲁班猫引脚说明.mp4
4 g( `. ]1 e; Z# P3 d┃  ┃  ┃  ┣━04.gpio操作.mp44 P# L5 s/ A8 W) S) s6 G1 Z
┃  ┃  ┃  ┣━05.gpiod操控io口.mp4
" _5 [) y: {9 t: Y( _( d┃  ┃  ┃  ┣━06.pwm控制.mp4) ?/ a: Y& \! J* L) u, T: e
┃  ┃  ┃  ┣━07.uart通信.mp4
/ R- _+ Q# r$ m& g* o! X- I8 f┃  ┃  ┃  ┣━08.vscode远程开发和pip镜像.mp4
4 |! w1 ~5 J/ ^9 U! V┃  ┃  ┃  ┣━09.gpiod引脚输入和输出.mp4
7 S7 _; n* F- S0 {2 X/ ]┃  ┃  ┃  ┣━10.periphery.mp4! R" Y4 s8 A- X" h
┃  ┃  ┃  ┣━11.pwm代码操控.mp4$ ]/ A! E4 D8 M% v0 m5 I& P1 U
┃  ┃  ┃  ┣━12.串口代码控制.mp4
: y6 K( G3 M* G┃  ┃  ┣━day03-opencv+ w* @! @7 Z2 B) B  h0 |4 a
┃  ┃  ┃  ┣━01_课程介绍.mp4: n5 L1 I# I# l" s( r% ~6 w: p5 d) w
┃  ┃  ┃  ┣━02_opencv安装.mp4
% ~* t2 [, {1 p& X3 j: l, X5 H┃  ┃  ┃  ┣━03_机器视觉概述.mp4
6 L: j  V9 P2 S, Y7 A2 d2 ~┃  ┃  ┃  ┣━04_面临的挑战.mp4  K" V  }2 z6 J" s! C! G4 X: j
┃  ┃  ┃  ┣━05_opencv文档介绍.mp4
4 P! h0 a- O- z9 B+ r- L' ~: {' E┃  ┃  ┃  ┣━06_读取图片.mp4" D2 P/ j" @- Q3 k' y6 j
┃  ┃  ┃  ┣━07_vscode中的jupyter.mp4" H1 \+ f" e$ E7 V' }7 O
┃  ┃  ┃  ┣━08_操作像素.mp4
# D8 [% q  S# _┃  ┃  ┃  ┣━09_图像剪切.mp4
/ n3 {: q) x5 z& E1 Y  @& L6 \& A┃  ┃  ┃  ┣━10_图像的镜像处理.mp41 D6 \, U) q, v
┃  ┃  ┃  ┣━11_图像的位移.mp45 p  G/ a$ r& H. q  @' t1 I0 a; }2 L
┃  ┃  ┃  ┣━12_仿射变换mp4.mp4, J" k6 j4 d2 f; I
┃  ┃  ┃  ┣━13_仿射变换_下.mp4$ w) S2 s5 I! b8 ]; F) Y
┃  ┃  ┃  ┣━14_图像金字塔.mp4& z5 i7 `; j4 r
┃  ┃  ┃  ┣━15_图像的融合.mp4& K) L6 r) w- m) O2 Q1 A3 U' g
┃  ┃  ┃  ┣━16_彩色图像转灰度.mp4) d1 |- H) M$ o/ ^" c0 {
┃  ┃  ┃  ┣━17_颜色反转.mp41 }4 ~3 W. |$ d0 J
┃  ┃  ┃  ┣━18_图像马赛克效果.mp4
9 z8 y; f. ]$ K2 @7 z┃  ┃  ┃  ┣━19_毛玻璃的效果.mp4
; N, |" c8 o8 I: P┃  ┃  ┃  ┣━20_图像的浮雕效果.mp4- f* t' g, V: I
┃  ┃  ┃  ┣━21_绘制图像信息.mp4- |! a5 u- s: {2 H5 h4 d
┃  ┃  ┃  ┣━22_图像亮度增强.mp4
' b( j# Y" r  Z┃  ┃  ┃  ┣━23_图像的直方图.mp4
' F3 e' r8 n; I. t% T3 ^) `, M┃  ┃  ┃  ┣━24_灰度图直方图均衡化.mp48 S' D# n' o) h; Q' B. U3 b$ p
┃  ┃  ┃  ┣━25_彩色图像直方图均衡化.mp4) Z5 Z! ~( R2 w+ C" K  U% r1 d2 z
┃  ┃  ┣━day04-opencv
9 O" t) e# m5 ?& q8 }8 H┃  ┃  ┃  ┣━01_读取视频数据.mp4! h. j6 Z) ]$ d/ ]8 _/ H
┃  ┃  ┃  ┣━02_读取摄像头数据.mp45 m! s0 B% f% x0 {$ a" [
┃  ┃  ┃  ┣━03_判断当前是白天还是黑夜.mp4
) I& ^( J9 F3 Z" R( E/ y! H┃  ┃  ┃  ┣━03_截取图片中的网球.mp4
" ~/ |3 N8 M5 m2 {┃  ┃  ┃  ┣━04_截取出网球.mp4
- A+ n/ [" J# h┃  ┃  ┃  ┣━05_图像的二值化.mp4/ v" I/ x6 A1 K) m% l( t1 X
┃  ┃  ┃  ┣━06_自适应阈值.mp40 a# Y7 x1 F: b' _
┃  ┃  ┃  ┣━07_图像卷积运算概念.mp4
# c7 o7 W* h( p- J7 H┃  ┃  ┃  ┣━08_三种滤波算法.mp4
8 @3 J0 @8 \- |; I┃  ┃  ┃  ┣━09_Sobel算子.mp42 |6 L$ p, V' G/ r6 }) o6 w3 J: \
┃  ┃  ┃  ┣━10_Scharr函数.mp4
8 Y) g& m. z! q4 j$ J& N┃  ┃  ┃  ┣━11_拉普拉斯算法.mp4  m$ o( y4 y6 {* D" N4 h7 t
┃  ┃  ┃  ┣━12_canny边缘检测.mp4
- i7 r, b7 w: {# |# u5 u┃  ┃  ┃  ┣━13_图像锐化处理.mp4
  _' @) ?, {) q7 v┃  ┃  ┃  ┣━14_霍夫直线概念.mp4
( f: V, g; v$ u2 L3 H7 [┃  ┃  ┃  ┣━15_查找棋盘中所有的线段.mp4
4 x# q4 U4 {7 k% _' P9 P9 X┃  ┃  ┃  ┣━16_霍夫圆形.mp4
# r4 ]4 j" H, Z0 W┃  ┃  ┃  ┣━17_查找轮廓.mp4
( Q& L$ O6 }" W┃  ┃  ┃  ┣━18_获取轮廓信息.mp4
! L" e. I+ L% ^( i' j┃  ┃  ┃  ┣━20231206_095253.mp4
9 M8 ]- F0 u# U; M2 ~9 g/ }1 \┃  ┃  ┃  ┣━20231206_143305.mp4. e- k2 R4 J  I* i
┃  ┃  ┣━day05-opencv) G3 q8 X+ X, e0 A
┃  ┃  ┃  ┣━01_形态学变换概述.mp4" m; e2 I& P/ i- s
┃  ┃  ┃  ┣━02_膨胀操作.mp4$ z9 ]; m- Q+ ?6 _7 |6 ^- F3 {
┃  ┃  ┃  ┣━03_腐蚀操作.mp4
4 S5 X/ E" _# r7 J┃  ┃  ┃  ┣━04_开操作.mp4; }. O/ e  U7 q! i/ |
┃  ┃  ┃  ┣━05_闭操作.mp4& \1 V/ ^! H! @% j9 v6 ~: @
┃  ┃  ┃  ┣━06_距离变换.mp4+ U: {8 g' ?  B. U, \
┃  ┃  ┃  ┣━07_零件计数.mp47 m) z! Z4 _7 N9 ~3 P
┃  ┃  ┃  ┣━08_车道线检测_上.mp4
7 R0 {. l0 o0 k$ \3 ?$ e┃  ┃  ┃  ┣━09_车道线检测_合并直线.mp4. I! G* L5 `  Y8 S
┃  ┃  ┃  ┣━10_车道线检测_下.mp4
7 b# ?5 F( Z! s! ?┃  ┃  ┃  ┣━11_演示landetect.mp4/ Z+ e2 x; N7 h# ~* H* e% u
┃  ┃  ┃  ┣━12_移动侦测功能.mp42 ]4 Q1 n( Q: e$ [
┃  ┃  ┃  ┣━13_图像切边_上.mp44 B) b; B: \/ h9 F
┃  ┃  ┃  ┣━14_图像切边_下.mp4
% h- x5 W9 B+ q& u0 ~┃  ┃  ┃  ┣━15_删除图像中所有的英文.mp4( ?0 ?, `5 _/ r' C
┃  ┃  ┃  ┣━16_鼠标监听.mp4
$ ^8 s! n1 Q6 R0 q+ C: ^┃  ┃  ┃  ┣━17_图片修复功能.mp4! {; j( C7 g# X" V3 Q* G
┃  ┃  ┃  ┣━18_opencv小结.mp4* [: |5 S  Z! j/ ~
┃  ┃  ┃  ┣━19_扩展_人脸检测.mp4
! Y; C2 e# P) _: I* g┃  ┃  ┃  ┣━20_扩展_人脸属性.mp4
- }6 Z' \5 n1 t% O" w  C3 Z3 z┃  ┃  ┃  ┣━21_扩展_人脸106个特征点.mp4
4 }6 T  {2 g, P8 M! ]* c┃  ┃  ┃  ┣━22_扩展_人脸识别锁.mp4
1 m& L' Q( G" ~, O  X- v. g: ?1 `┃  ┃  ┃  ┣━23_扩展_人脸识别锁流程.mp4* J* o# ?$ C1 ~7 l# o) W7 ^
┃  ┃  ┣━day06-ros; p2 Q3 j8 [+ }0 Y+ _
┃  ┃  ┃  ┣━01.回顾.mp4
+ E5 Y. T: t2 r" a7 T┃  ┃  ┃  ┣━02.鲁班猫连接摄像头.mp4
2 y# N* O. E7 G/ q- {┃  ┃  ┃  ┣━03.打开摄像头.mp4/ N8 J: b- I/ {4 U6 {* E
┃  ┃  ┃  ┣━04.ros介绍.mp4
2 S7 v$ K" a' W* P, v┃  ┃  ┃  ┣━05.ros环境安装.mp4
1 f1 \) [. L# D/ P: j) b┃  ┃  ┃  ┣━06.ros节点介绍.mp42 c; o4 }0 N7 w# W% Y' q
┃  ┃  ┃  ┣━07.turtlesim和rqt.mp43 k' s# Z- m8 h. ~+ F1 Q
┃  ┃  ┃  ┣━08.topic通信.mp4( A' }1 S8 k6 T: y) D. H
┃  ┃  ┃  ┣━09.service通信.mp4; P* D+ C) a+ _: K. E
┃  ┃  ┃  ┣━10.第一个ros节点.mp4; n/ F# [4 ?) x1 w) a! t# D
┃  ┃  ┃  ┣━11.自定义ros节点.mp4# d, T) P# c* |; q$ _9 A
┃  ┃  ┃  ┣━12.节点面向对象抽取.mp4( ~: ?4 o7 W. @  W/ }
┃  ┃  ┃  ┣━13.vscode模板代码配置.mp4
' {6 H) ~' P( i) d2 B┃  ┃  ┣━day07-ros
$ q$ `) g8 ^/ `! u) E┃  ┃  ┃  ┣━01.节点图片处理和加载.mp4
! X4 U6 y: @6 z+ Q* l┃  ┃  ┃  ┣━02.苹果检测节点实现.mp4
) S' |& v9 ^" r3 }$ `6 N+ F; H┃  ┃  ┃  ┣━03.摄像头识别苹果实现.mp4' _0 p: ~9 p* d
┃  ┃  ┃  ┣━04.topic通信回顾.mp4
# f0 M3 z9 a, v┃  ┃  ┃  ┣━05.topic发布者.mp4
3 C7 l7 H# _+ |/ {0 E$ Z4 G┃  ┃  ┃  ┣━06.topic订阅者.mp4! J9 @7 v, `& i) t
┃  ┃  ┃  ┣━07.自定义msg.mp4: N7 F# F+ W8 W7 m0 d9 N4 c
┃  ┃  ┃  ┣━08.自定义msg使用.mp4
* B! V- N& Y1 Y8 j# b4 @+ d: n+ X┃  ┃  ┃  ┣━09.节点打开摄像头.mp4
( `2 z, {3 |: K$ J$ B2 f┃  ┃  ┃  ┣━10.摄像头节点发布图像数据.mp4
- n8 _& q( N/ l2 v0 x┃  ┃  ┃  ┣━11.接收摄像头节点画面.mp49 J; F2 i9 [0 e5 J& M: Y4 r. c
┃  ┃  ┃  ┣━12.发布苹果图像数据.mp4- N- J: x' \* o, @& k" M
┃  ┃  ┃  ┣━13.接收苹果图片并解析.mp49 p" u% i  p3 Q
┃  ┃  ┣━day08-ros0 {& G7 T, O% h4 w/ H, U9 X# K( c
┃  ┃  ┃  ┣━01.topic多对多通信实现.mp4
- u) O$ }; |1 _8 x& p, T┃  ┃  ┃  ┣━02.topic小乌龟控制程序初始化.mp40 M' x! C7 W6 o, Y  z$ A
┃  ┃  ┃  ┣━03.小乌龟控制布局.mp4
, Z  _: o5 k7 _. \. }┃  ┃  ┃  ┣━04.小乌龟线速度和角速度控制.mp4- X2 U- l5 Y. s1 @5 y
┃  ┃  ┃  ┣━05.订阅小乌龟位置.mp45 U1 A4 `$ N8 V$ g
┃  ┃  ┃  ┣━06.更新界面显示.mp40 Z$ Q4 }7 c1 @' R1 G' ~+ S
┃  ┃  ┃  ┣━07.service通信回顾.mp4
& l- z! K2 t" V4 f; ^1 F8 O5 b! b& W┃  ┃  ┃  ┣━08.service通信server端实现.mp44 g0 ~; N3 P# Z, v& ?
┃  ┃  ┃  ┣━09.service通信client端实现.mp48 U3 Z. R/ F1 {! h5 i/ l
┃  ┃  ┃  ┣━10.自定义srv消息.mp4
0 K7 l' @& b  R; ^; m┃  ┃  ┃  ┣━11.apple检测流程.mp4
/ ]- K! E& U/ r* d┃  ┃  ┃  ┣━12.苹果检测图像发布.mp4" g. c6 X! G! n+ \4 J# H. Y1 h
┃  ┃  ┃  ┣━13.server端接收图像数据.mp4
5 u4 u. Q9 N) Q$ [* D! w┃  ┃  ┃  ┣━14.apple检测自定义srv.mp4, R( p. Z& v" }: \! L; @
┃  ┃  ┃  ┣━15.apple检测server端.mp4$ Y4 s$ B- H, Q0 O( s' L& u
┃  ┃  ┃  ┣━16.apple检测client端.mp4
1 k# w: T$ G$ k% b┃  ┃  ┃  ┣━17.小乌龟service搭建.mp46 e) r( n- s; c5 G8 r
┃  ┃  ┃  ┣━18.小乌龟service控制界面实现.mp4
6 `) N+ ]% x2 z- P, T" _  a6 ^┃  ┃  ┃  ┣━19.小乌龟clear和reset.mp40 l- @, k* _0 m) K( Y* I, e
┃  ┃  ┃  ┣━20.小乌龟spawn.mp4
; g; t1 W2 |, ~. s4 o┃  ┃  ┃  ┣━21.杀死小乌龟.mp4
+ Q  Q$ ?8 y9 n: x; U5 p┃  ┃  ┃  ┣━22.设置画笔.mp4
' X" ?* g+ x- J2 O; O0 ~9 [& u┃  ┃  ┃  ┣━23.设置绝对位置和相对位置.mp4
) v6 t. Z& [, c% r5 x3 }, W  k┃  ┃  ┣━day09-ros# Q& {& J6 Y* p; q6 E' z
┃  ┃  ┃  ┣━01.扫地机器人界面搭建.mp40 ]0 ^# [! Y1 P4 o0 A/ ~" y1 u! d
┃  ┃  ┃  ┣━02.小乌龟移动到前方位置.mp4
; u$ v! V7 N) b" p  A8 N7 s! u9 r┃  ┃  ┃  ┣━03.小乌龟位置信息订阅.mp4  D4 A  q3 B2 A1 D
┃  ┃  ┃  ┣━04.小乌龟按照特定时间移动到指定位置.mp4  `: u" ^  k$ k
┃  ┃  ┃  ┣━05.以特定小数时间移动到目标点.mp4
: u, C, p4 r! Q3 r5 F┃  ┃  ┃  ┣━06.以任意时间移动到指定位置.mp4
+ |' w! t0 W; G  X  w7 z2 A7 Z┃  ┃  ┃  ┣━07.解决小乌龟移动时界面更新卡顿.mp4( x( B6 l' ?! d
┃  ┃  ┃  ┣━08.pid回顾.mp4
3 U, N* I* \0 j( s+ U┃  ┃  ┃  ┣━09.计算小乌龟和目标的角度.mp4
2 c  C5 ~# A/ }+ C: T( S$ `! V┃  ┃  ┃  ┣━10.通过pid调节小乌龟移动速度.mp45 x% a: ~8 B0 ~$ e' i
┃  ┃  ┃  ┣━11.小乌龟转向任意方向实现.mp4- m6 h4 d) m+ f1 i1 K
┃  ┃  ┃  ┣━12.扫地机器人纵向扫地.mp4
# z* B0 O. ~) W& r┃  ┃  ┃  ┣━13.param参数命令.mp4
7 w6 `% g. R/ `┃  ┃  ┃  ┣━14.param参数代码实现.mp4
/ S- K7 F$ a8 P6 f┃  ┃  ┃  ┣━15.launch文件实现.mp4
- [& |: q/ I( ?) c9 p┃  ┃  ┃  ┣━16.节点名和命名空间.mp4
; W; p6 f% J: R! W$ |8 k┃  ┃  ┃  ┣━17.topic重定向.mp4
6 `' }( H5 n* [2 k$ D┃  ┃  ┃  ┣━18.param参数和yaml文件加载.mp4' \% O6 T% L6 \! d& x/ Q5 S, H7 l
┃  ┃  ┃  ┣━19.launch文件包含.mp4$ n# X; X  Z0 F# M4 j/ m
┃  ┃  ┣━day10-ros9 [! Q$ D. Y" J0 p7 J+ o" u/ R) Y
┃  ┃  ┃  ┣━01.鲁班猫串口调试.mp4, x0 C; ]0 t: ?* J- D: X8 ~" q9 Y
┃  ┃  ┃  ┣━02.usart1串口实现.mp4. u* _- _, z# f; i: x# I. @
┃  ┃  ┃  ┣━03.上位机和下位机通信流程.mp47 E$ q$ Q1 x; n$ K0 ?* h, [9 a& O
┃  ┃  ┃  ┣━04.struct回顾.mp4+ l8 U* t1 m7 u: T3 j. u
┃  ┃  ┃  ┣━05.rk3566给gd32发数据流程.mp4. [- S4 c- t* h4 ~2 Y; M1 E1 P
┃  ┃  ┃  ┣━06.gd32发送数据给rk3566流程.mp4) i1 |$ ]" x' E& G+ ?$ X
┃  ┃  ┃  ┣━07.整合上位机和下位机通信.mp4
4 F3 p  F; E9 o0 T+ X" |┃  ┃  ┃  ┣━08.usb_cam摄像头节点.mp4
2 o, z" |- D: M( A/ f/ T" R┃  ┃  ┃  ┣━09.rk3566识别车道线.mp4( |3 u0 w! P  O/ m1 X# k
┃  ┃  ┃  ┣━10.上位机通过串口发布线速度和角速度.mp4
9 Y/ e" R, E. |1 s2 {5 @) f2 u┃  ┃  ┃  ┣━11.下位机接收线速度和角速度处理.mp4" K5 X8 O& B8 T& o$ R/ T  V
┃  ┃  ┃  ┣━12.下位机差速运行的原理.mp4+ c, }+ S$ E$ C9 R- R
┃  ┣━09阶段:机器狗项目1 ^5 X+ k  O1 g! @" V3 O$ V1 p$ I
┃  ┃  ┣━day01/ l( w. r) A0 t* }( W% o; W
┃  ┃  ┃  ┣━video- D1 M5 H( p: o2 ]0 X3 c
┃  ┃  ┃  ┃  ┣━01.课程介绍.mp4
- S" @. J  u" V% w┃  ┃  ┃  ┃  ┣━02.机械狗介绍.mp4
% }+ \: z5 ]& E$ X' }0 |0 l# ?& ?- i┃  ┃  ┃  ┃  ┣━03.机械狗自由度介绍.mp4
2 Z: ?/ J& P& C6 a( m┃  ┃  ┃  ┃  ┣━04.机械狗扩展版设计介绍.mp4
, s3 S' V3 t6 l$ F7 P) H% K┃  ┃  ┃  ┃  ┣━05.舵机驱动.mp4
+ K% R6 S+ G4 [┃  ┃  ┣━day02* f: h& W. C, @( y) R
┃  ┃  ┃  ┣━video
, X; x+ j' \5 _6 I* @0 U┃  ┃  ┃  ┃  ┣━03.常见狗腿逆解.mp4; ~% G9 N' O) p$ [. h
┃  ┃  ┃  ┃  ┣━04.狗腿逆解alpha.mp4
5 f9 a2 f0 |) \3 o7 n┃  ┃  ┃  ┃  ┣━06.狗腿逆解求bata.mp49 U% `& b0 Q: W/ P! S4 x
┃  ┃  ┃  ┃  ┣━07.求BCE的坐标.mp4
6 \! O0 U: l! ^- n: g3 I┃  ┃  ┃  ┃  ┣━08.绘制所有的狗腿直线.mp4
- B: h7 j, t# s  b) n┃  ┃  ┃  ┃  ┣━09.狗腿点详情绘制.mp4$ h+ w! n: E' h" r3 c
┃  ┃  ┃  ┃  ┣━10.绘制足端文本和角度文本呢.mp4. S& Z& b' w1 ?7 M6 Z" U
┃  ┃  ┃  ┃  ┣━01.回顾.mp4
0 Q5 a: S$ j& f% `┃  ┃  ┃  ┃  ┣━02.正解和逆解.mp4
6 Z  }$ q* M! X5 |( ^┃  ┃  ┃  ┃  ┣━11.手动设置狗腿目标点.mp4% K- g2 ?2 o) a$ z' c* [0 U  i
┃  ┃  ┃  ┃  ┣━05.狗腿逆解ABC夹角.mp4. m4 a) P/ H( a% B
┃  ┃  ┣━day03
5 S) i+ O, Y# d$ c┃  ┃  ┃  ┣━video
- @2 b" ]: F1 f& `┃  ┃  ┃  ┃  ┣━03.timer1和timer2初始化.mp4
' q& [" f4 R& y3 M: D$ I┃  ┃  ┃  ┃  ┣━04.舵机初始化及角度控制.mp4
& k: E/ y2 v8 C6 g8 \┃  ┃  ┃  ┃  ┣━05.8个舵机控制.mp49 {* }* Y, q+ n) K( j2 Y
┃  ┃  ┃  ┃  ┣━08.狗腿反解之后转换成舵机角度.mp4
7 {" D( @1 w6 l, B) P┃  ┃  ┃  ┃  ┣━09.摆动曲线讲解.mp4
/ j# F3 M5 _3 ?2 k" T( G, T2 E┃  ┃  ┃  ┃  ┣━10.小跑 步态实现.mp43 \+ W/ f. o6 i, d
┃  ┃  ┃  ┃  ┣━01.狗腿反解补充.mp46 p6 Y8 D# m, W) d
┃  ┃  ┃  ┃  ┣━02.摆动曲线和步态规划.mp4' z. A9 {% N2 J0 R- X: L
┃  ┃  ┃  ┃  ┣━07.安装角度及舵机偏差调节.mp4
8 q  `7 M' s+ _5 m┃  ┃  ┃  ┃  ┣━11.小跑步态实现常见动作.mp4
/ m8 @1 m8 D3 \  P, ?5 }┃  ┃  ┃  ┃  ┣━06.下位机实现反解.mp4
. v8 K, d/ x7 l5 c$ `┃  ┃  ┣━day047 m$ d# N4 d; e+ r/ z
┃  ┃  ┃  ┣━video8 L* c1 \% M% X0 W
┃  ┃  ┃  ┃  ┣━01.回顾.mp4; v% T0 D5 W) o6 |# b) U* S
┃  ┃  ┃  ┃  ┣━06.下位机运动控制和姿态控制组合.mp4$ v$ L9 {* J. w! f- j9 L
┃  ┃  ┃  ┃  ┣━07.机械狗控制上位机界面搭建.mp46 P$ q& p+ T* m* ]
┃  ┃  ┃  ┃  ┣━02.机械狗下位机移植freeRTOS.mp4
  H; \; O. ?  X5 x& P( }/ |$ e┃  ┃  ┃  ┃  ┣━03.上位机和下位机通信的指令.mp4
. w) o5 P5 K+ _" C5 \$ e: T6 R┃  ┃  ┃  ┃  ┣━08.上位机控制机械狗.mp4
) F8 m1 D3 L# o┃  ┃  ┃  ┃  ┣━04.下位机通过flag控制狗前后左右踏步运动.mp40 o+ H& Y  M/ K; F3 D- C
┃  ┃  ┃  ┃  ┣━05.狗前倾控制.mp4; o1 P6 Y) L3 I0 X; q
┃  ┣━【在线版】24年嵌入式课件
$ c6 B* i' y1 j3 }# \4 v┃  ┃  ┣━01-阶段课件.rar
2 F) O0 a$ c4 ~+ v* U2 m┃  ┃  ┣━02-阶段课件.rar
4 S8 C; l/ G' y┃  ┃  ┣━03-阶段课件.rar
) I& ?- J3 n6 M! F5 u┃  ┃  ┣━04-阶段课件.rar% W; P0 Y, Z3 H$ S8 p
┃  ┃  ┣━05-阶段课件.rar
) S; i( R1 g# [1 Z$ h┃  ┃  ┣━06阶段课件.rar; h, B7 |% L; ?7 O. S) N
┃  ┃  ┣━07阶段课件.rar$ `: l% P: B2 T8 T, H9 o7 j
┃  ┃  ┣━08阶段课件.rar2 `3 k- P# f& _% k7 O0 D
┃  ┃  ┣━09阶段课件.rar$ c% e* d$ ?) t$ R! y' H

. a) \, t2 w; c5 ~* a; a9 b; i9 A" w- z/ I$ c7 I; b" P
资源下载地址和密码(百度云盘):
游客,如果您要查看本帖隐藏内容请回复
[/hide] 百度网盘信息回帖可见
: ]* W- ?( S6 P# G0 E. |' \$ @4 {, F2 K  E

' ?: m* d( A( Z! W& Q! o* y5 u, Q9 G
. n/ J9 Z8 g& o& @& V) b$ C本资源由Java自学网收集整理【www.javazx.com】
回复

使用道具 举报

该用户从未签到

6

主题

147

帖子

300

积分

普通会员

Rank: 2

积分
300
发表于 2024-5-17 17:46:00 | 显示全部楼层
强烈支持楼主ing……
回复 支持 反对

使用道具 举报

该用户从未签到

5

主题

138

帖子

275

积分

普通会员

Rank: 2

积分
275
发表于 2024-5-17 17:59:43 | 显示全部楼层
强烈支持楼主ing……
回复 支持 反对

使用道具 举报

该用户从未签到

5

主题

170

帖子

333

积分

普通会员

Rank: 2

积分
333
发表于 2024-5-17 18:13:03 | 显示全部楼层
强烈支持楼主ing……
回复 支持 反对

使用道具 举报

该用户从未签到

5

主题

166

帖子

297

积分

普通会员

Rank: 2

积分
297
发表于 2024-5-17 18:26:56 | 显示全部楼层
强烈支持楼主ing……
回复 支持 反对

使用道具 举报

该用户从未签到

6

主题

145

帖子

292

积分

普通会员

Rank: 2

积分
292
发表于 2024-5-17 18:30:18 | 显示全部楼层
看到这帖子真是高兴!
回复 支持 反对

使用道具 举报

该用户从未签到

0

主题

2

帖子

10

积分

普通会员

Rank: 2

积分
10
发表于 2024-5-21 08:23:19 | 显示全部楼层
111111111-1111-------1
回复 支持 反对

使用道具 举报

该用户从未签到

0

主题

4202

帖子

8406

积分

普通会员

Rank: 2

积分
8406
发表于 2024-5-22 13:25:04 | 显示全部楼层
哈哈哈哈哈,开心
回复 支持 反对

使用道具 举报

该用户从未签到

0

主题

4127

帖子

8256

积分

普通会员

Rank: 2

积分
8256
发表于 2024-5-31 21:30:13 | 显示全部楼层
不错 高清晰
回复 支持 反对

使用道具 举报

该用户从未签到

0

主题

7

帖子

20

积分

普通会员

Rank: 2

积分
20
发表于 2024-6-5 11:01:35 | 显示全部楼层
强烈支持楼主ing……
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|Java自学网

GMT+8, 2024-11-24 09:17 , Processed in 0.403287 second(s), 28 queries .

Powered by Javazx

Copyright © 2012-2022, Javazx Cloud.

快速回复 返回顶部 返回列表