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