课程简介: 《新概念51单片机C语言教程:入门、提高、开发、拓展》从实际应用入手,以实验过程和实验现象为主导,循序渐进地讲述51单片机C语言编程方法以及51单片机的硬件结构和功能应用。 课程作者:郭天祥 作者介绍: 郭天祥,老家新疆伊宁,原哈尔滨工程大学学生,后接触单片机,已经成为单片机领域的一个企业家,名下有天祥电子网站,其最大成就之一是开设了十天学会单片机系列课程并录制出来,网络上广泛流传,有《十天学会51单片机视频教程》、《十天学会PIC单片机视频教程》、《十天学会AVR单片机视频教程》,可以说这三种单片机类型几乎涵盖了市面上近90%的单片机产品,这些视频教程为广大单片机爱好者提供了最好的学习材料,另外还有关于ARM、嵌入式系统的视频教程,因其名誉广传,被广大学生敬称为郭老师。 打包下载课程目录第1篇入门篇
$ O3 s4 Y6 U2 X* z1.1单片机概述6 [9 [9 _! ?1 D
1.1.1什么是单片机" ~. {( ~: E( }2 ^
1.1.2单片机标号信息及封装类型# i6 `8 P* F8 K' {) _: M
1.1.3单片机能做什么$ [" o, N3 ?- e5 z5 ~- p( {
1.1.4如何开始学习单片机
) H8 S1 `6 G( S& @5 g) G4 N1.251单片机外部引脚介绍
0 U/ _) I9 y7 c" M' I- `1.3电平特性& v* \1 `% N3 h! [* r; ]; Q' {4 ^
1.4二进制与十六进制& q' T9 m/ g7 Q, f4 v
1.4.1二进制
* @. O) T1 N( @) p) u1.4.2十六进制
3 G1 ?1 r; o1 t$ {1.5二进制的逻辑运算
( ]% w& x6 N8 d1.5.1与
/ P! H& Z/ M3 b7 A* T1.5.2或
$ d/ n1 y8 s* K8 p& `1.5.3非: M% Z" Q! O/ `$ I+ p/ _7 E3 B% j
1.5.4同或
# t- }: ~$ d0 ^9 e0 G* k1.5.5异或
q8 n) n1 Y8 L0 R/ W8 x Z `1.6单片机的C51基础知识介绍
$ R% ?, V! B: w5 @4 N1.6.1利用C语言开发单片机的优点8 X8 d. F M2 O; s# N, ~! }; ?
1.6.2C51中的基本数据类型
: ~5 M- X" @- L, @1.6.3C51数据类型扩充定义0 c' a" a7 C( p. ^- Z% `* t* e: V+ ?, y
1.6.4C51中常用的头文件1 ]& t! `/ D$ n+ a" X0 v
1.6.5C51中的运算符8 a. B% h: r. ~4 e+ u: L
1.6.6C51中的基础语句 X6 O; m5 Y9 h+ | W6 ~3 \0 f$ d
1.6.7学习单片机应该掌握的主要内容
( `2 _: z2 B2 U; Q0 q5 t. H. z2.1Keil工程建立及常用按钮介绍. ~8 |" M' p- w3 [9 L' o$ w5 r
2.1.1Keil工程的建立
5 a/ l2 I2 j# G' Q% h4 D2.1.2常用按钮介绍
7 w* Y& Z' O1 E, ~% u h2.2点亮第一个发光二极管# G3 t& ]; `# B
2.3while语句
2 t1 L( h# B: ~/ U J2.4for语句及简单延时语句6 h9 e0 f& g7 e4 }4 G. Q/ g
2.5Keil仿真及延时语句的精确计算 F: ]8 \3 L- q7 E
2.6不带参数函数的写法及调用
8 I- O: E# c: p9 J2.7带参数函数的写法及调用
6 y3 d a: y3 t$ q2.8利用C51库函数实现流水灯 第2篇内外部资源操作篇1 n* Q$ u- J! `4 J: [* s1 i9 `
3.1数码管显示原理 W; l7 z2 X2 N
3.2数码管静态显示
% a; S2 F) v* c7 S0 i2 D3.3数码管动态显示
* k+ B/ A, u' p' V1 c' z6 B( o3.4中断概念7 [$ }; w# ^0 A; H- t; |
3.5单片机的定时器中断/ a% O. }. D* ~, \5 C' S
4.1独立键盘检测, h7 b- ~# B- Q, E# F
4.2矩阵键盘检测5 _( U# Z$ P0 d7 @! T/ W- W
5.1模拟量与数字量概述. B! }3 @: I0 X' E' Z, M* I( t
5.2A/D转换原理及参数指标
# [ h/ _9 N a2 c/ ~" R0 h5.3ADC0804工作原理及其实现方法2 d, \% v: r+ A" I- H2 X3 O9 e' |
5.4D/A转换原理及其参数指标' W3 b- |: }8 ~# W( G0 p
5.5DAC0832工作原理及实现方法
7 M* j: |+ ^% [+ H5.6DAC0832输出电流转换成电压的方法* J0 ~! C. z. B0 c1 g/ ?; ]
第6章串行口通信原理及操作流程& U! e. z; ~8 L& i5 H' K$ u
6.1并行与串行基本通信方式
- w& E+ d$ f0 j% e" q, w: _4 E5 e; E6.2RS-232电平与TTL电平的转换& @: p" O- {: i+ O# u
6.3波特率与定时器初值的关系3 K7 h7 p6 r5 r! H0 Z
6.451单片机串行口结构描述4 A6 ]9 G* F. X+ \8 J; E! n
6.5串行口方式1编程与实现5 R& M1 Z4 [2 ^7 F8 \( T/ P
6.6串行口打印在调试程序中的应用) n) K3 P; N2 ]& A* u
第7章通用型1602,12232,12864液晶操作方法/ J+ }! ?! u0 T$ i
7.1液晶概述
/ R9 q. e! ?, }+ n7.2常用1602液晶操作实例
/ i) v: W- `' g& J2 H# U5 w/ z7.3常用12232液晶操作实例, A5 ~( c4 f7 V
7.4常用12864液晶操作实例5 C- O r1 u& k' a
第8章I2C总线AT24C02芯片应用% D. E, Y& q# a( s( |* [: B
8.1I2C总线概述
3 H" X& y& j9 S2 n8.2单片机模拟I2C总线通信6 g7 ~2 U, p0 Z$ v
8.3E2PROMAT24C02与单片机的通信实例
3 M6 }( Z$ p1 N' T1 V/ P第9章基础运放电路专题
_% Y& i. O& ?0 C! J: Y9.1运放概述及参数介绍# l* e9 w) z6 n4 m- O8 W5 F8 e$ A0 g
9.2反相放大器
8 J8 b9 ?+ A% x- a! A# p3 }: f2 }: e9.3同相放大器
: S3 }/ F% S4 R9.4电压跟随器# {9 v' ]" D2 C# O, W8 r
9.5加法器( Q' G, V8 p6 F/ `! n
9.6差分放大器) e0 i$ w6 r0 e9 Q
9.7微分器( g$ u' A- v) h) t) e4 I8 P' [4 K7 D
9.8积分器 第3篇提高篇9 `% X6 p7 c8 s
第10章定时器/计数器应用提高# `. B" k( X) u! `! G. p4 k
10.1方式0应用
* U+ T/ s! O3 `) P; \0 P10.2方式2应用& l/ ^. Y+ y& k$ N7 m1 D; O9 }' _
10.3方式3应用
$ k7 n P# p4 ^10.452单片机定时器2介绍8 h7 M9 [+ w4 K0 d$ Y$ y
10.5计数器应用
6 M8 Y, L" Q0 ~# M, h第11章串行口应用提高
% C- M1 K8 k" L& ?; u11.1方式0应用
& ^1 F7 g" ~7 e( s. Q+ | D* O; Z11.2方式2和方式3应用: R3 t9 j$ m2 T! W
11.3单片机双机通信* j( l+ ]" `5 \
11.4单片机多机通信" b# d y/ S7 I9 B2 N( o- N3 ?
第12章指针. r5 v5 g8 Z1 ]+ p* A' G6 c% @
12.1指针与指针变量
( R) Y# [: \; {) B+ m0 [/ B: \3 u12.1.1内存单元、地址和指针
8 i2 A& Z$ y8 g6 [! S12.1.2指针变量的定义、赋值与引用
- f2 `% L. C4 n3 u. ?% h12.2指针变量的运算5 M3 x! f: t H( D
12.3指针与数组
* y( B; F$ l3 r, F12.3.1指针与一维数组
( N! O! a @0 V' i# d12.3.2指针与多维数组9 p$ d, r9 @, X0 j! e. t5 a- S$ N
12.4指针与函数: g5 L6 B' C5 b9 T: ~6 M6 o
12.4.1指针作为函数的参数4 i# F: }$ S* a9 ~9 f0 B8 M9 U
12.4.2指向函数的指针/ g5 y! I0 e8 r4 k5 Y) n
12.4.3指针型函数
: }% x; C" q8 H* q: j* O, G12.5指针与字符串
$ W, r; y/ D% p- K) F, ]0 y, A$ K12.5.1字符串的表达形式3 t0 g6 E! [- Z& B5 P
12.5.2字符指针作为函数参数' p, ^; l8 m& ^0 T( r3 n J( Q6 @
12.5.3 使用字符指针与字符数组的区别+ K% z) D: I) T7 X- R7 L1 V
12.6指针数组与命令行参数
1 y9 `0 D7 x6 c, _12.6.1 指针数组的定义和使用
1 j7 M1 @& G) f6 G; Z7 m- ]12.6.2指向指针的指针, u2 \' f+ s* M6 b- c( @1 o+ t
12.6.3 指针数组作为main()函数的命令行参数. g& ]6 ?% E# g$ g/ }
12.7指针小结
: q7 D( a2 F* h0 q) ~ s: Y; v12.7.1指针概念综述) t0 Y. v/ H" T3 R, k
12.7.2指针运算小结) w) p# O, Z- ~- E; p6 |: w
12.7.3等价表达式9 W; @( s8 {, N, O! `
12.8C51中指针的使用1 \+ D3 u% z' x/ M. Q5 }9 T
12.8.1指针变量的定义
, [ p- ]9 @) I: R% M/ b12.8.2指针应用
4 [( M$ G/ L8 |% \/ O第13章STC系列51单片机功能介绍
% q5 y( t6 }3 y' y# P13.1单片机空闲与掉电模式应用
( s1 }) t' ]" t3 c1 E13.2“看门狗”概念及其应用4 ]5 Q* z* h# F
13.3用软件实现系统复位
! T2 |; M7 m+ d. A13.4内部扩展RAM的应用
9 n$ Z" S+ F8 ~, B- s13.5扩展P4口的应用% Y' M/ o: F& D0 Z" A6 `0 Y; Z( e/ U
13.6内部E2PROM的应用
9 n) U" ?% a! e9 ^1 U( [2 p( c# \13.7STC89系列单片机内部A/D应用
) ?; y( ~0 Z2 g1 S13.8STC12系列单片机内部A/D应用5 b# {3 Y7 T7 l" k- `9 S; J
13.9STC12系列单片机的PCA/PWM介绍
) P9 y7 p4 d' J: Z; N6 ~3 x13.10STC12系列单片机的SPI接口介绍
! D; F6 ^! V" z+ x+ ]13.11STC12系列单片机的“576MHz”超速运行 第4篇实战篇
' A) b X9 ^: @. }& l# K第14章利用51单片机的定时器设计一个时钟
) a: Q' G# @, s5 Z; L14.1如何从矩阵键盘中分解出独立按键
l6 u$ w) q8 l' X! G0 `: E1 b8 [14.2原理图分析) {- m9 p# q" D9 f( r
14.3实例讲解
0 U- z, j4 q9 T5 f" h8 K i第15章使用DS12C887时钟芯片设计高精度时钟+ K2 ?% y" I2 u/ c* m; i$ P$ _- \+ Z
15.1时钟芯片概述/ J' q* U# N& j! n. U+ N9 e m' X
15.2DS12C887时钟芯片介绍, s. O, }1 I e6 v
15.3如何用TX-1C实验板扩展本实验
6 z6 ~9 b1 y# y; [6 t15.4原理图分析
) _* C6 z; a) \( s" t% m15.5实例讲解
y0 j' l; L4 X+ o第16章使用DS18B20温度传感器设计温控系统2 w7 F& e9 d% Y. R+ D0 U% {9 z% C
16.1温度传感器概述7 _9 H7 i% d& G
16.2DS18B20温度传感器介绍5 V9 t& o( k8 G" j
16.3实例讲解
7 ^0 s5 `/ O) d第17章太阳能充/放电控制器
$ o, }8 h; g' ]- ]( P9 j17.1控制器原理图分析& ]& L" X8 @! W2 e( d
17.2控制器板上元件介绍3 p7 `: M9 @$ x8 u+ e& d
17.3实例讲解5 ^; x0 s$ s# g( l1 \) q, u8 m
第18章VC、VB(MSCOMM控件)与单片机通信实现温度显示
: U( d ^" h# P6 }8 Y8 w1 m18.1VCMSCOMM控件与单片机通信实现温度显示
0 R9 H# w/ _# Q& ?18.2VBMSCOMM控件与单片机通信实现温度显示 第5篇拓展篇
w+ e0 q- i' }+ v$ Q5 i! X) G第19章使用Protell99绘制电路图全过程( j3 O1 W& `4 U- l4 f
19.1绘制电路板概述
' m u+ ?+ X0 A& K g19.2建立工程. \4 r U& I& @9 ~+ O3 W1 P& h
19.3制作元件库9 f& r3 r! ~ M
19.4添加封装及制作PCB封装库+ ~+ J) @# w9 R# n
19.5错误检查及生成PCB+ _3 r% y: B9 Z- f# U+ u
19.6布线电气特性设置
$ Y2 }! p4 _; B/ f! ]5 c+ u, `19.7自动布线和手动布线
; w1 H/ `4 O6 u$ [第20章ISD400x系列语音芯片应用
. c9 _, u. K; g# Q20.1ISD400x系列语音芯片介绍
. k9 s2 B* U+ D0 |% ?20.2ISD400x系列语音芯片操作规则0 i4 Q5 m2 G$ ^! }* A) \
20.3ISD400x系列语音芯片应用实现" u; ?7 R9 y% W0 u8 c/ u: B+ m
第21章电机专题1 N: X. I9 ?" Z9 w, U R: ~3 T* [
21.1直流电机原理及应用7 f0 H- d3 y7 \; B- Y# b' K$ w' F# e- N
21.2步进电机原理及应用0 T, Y8 r' m5 o' Y' n- M
21.3舵机原理及其应用
% E3 s1 B: b! r/ Q, L L$ f第22章常用元器件介绍
% [$ n4 T+ I3 P; V22.1二极管) K% C- O, w& |) [7 A& _! m
22.2电容2 m" a. D7 r3 o* Y6 @% u# P9 [
22.3场效应管; t9 d% J1 ?4 ^+ r
22.4光耦& V1 `- E% q( r4 P6 B. I E
22.5蜂鸣器
; G/ v6 M, d" L0 Z/ N* |5 C0 b22.6继电器
2 L+ r- S, y3 d! I22.7自恢复保险 K7 ]5 c) H. w/ ]" n
22.8瞬态电压抑制器9 v" r- l4 v$ g) H+ u9 S3 B
22.9晶闸管(可控硅)0 u, w. Y4 `7 @# l' @% U
22.10电荷泵
/ a/ z7 ~( U2 u2 |* M第23章直流稳压电源专题
# ^7 W% e: W2 G" a/ M23.1整流电路
% }0 ^% ^; V% i0 Y5 i3 J23.2滤波电路
4 u7 s2 C2 s. }" B: J) [- ?23.3稳压电路8 z1 f# ^2 y; H- x* e
23.4集成稳压模块的使用: s* {+ D8 \$ s5 y; i( s
23.5串联开关型稳压电源2 T3 L* B- ?7 I1 y9 @. a$ M
第24章运放扩展专题
2 W3 w6 ]" _4 ?24.1简单低通滤波器6 k- n4 I$ A, _0 a+ [
24.2“电流-电压”转换电路+ v2 u: }0 Q2 s9 T7 T' u# v
24.3光电放大器3 H, u7 O4 b8 ?* o) r: E
24.4精密电流源% G+ C, A. ?3 M( _ D) a0 }9 ]
24.5可调参考电压源. j1 n5 _; \: @3 L9 G
24.6复位稳定放大器
! M6 ]2 t+ V' Q1 C4 H$ ^24.7模拟乘法器" z" |4 k: W) p4 @1 ]
24.8全波整流器和平均值滤波器
! ?! E; ~6 d2 f4 z% k$ l$ R24.9正弦波振荡器, A9 ?$ {" v5 C; p+ h/ S
24.10三角波发生器/ M1 k. e- U" G" E4 |* C
24.11自动跟踪对称电源: {0 l2 |4 @1 \7 z6 T1 k% Q2 F
24.12可调实验电源% q8 L% o' x4 A
24.13运放相关术语表 附录A天祥电子开发实验板简介
0 t! ~) G" n- b: T- HA.1TX-1C51单片机开发板(配套详细视频教程)
5 g# M# v- c0 { h, |0 D- CA.2AVR单片机开发板(配套详细视频教程)7 q" \1 O* _7 _) q1 k
A.3PIC单片机开发板(配套详细视频教程)/ y6 q: {. i( x* ]# @! Z" X( H
A.4J-Link全功能ARM仿真器- v% a. d7 Z& G8 p# s
A.5三星S3C44B0ARM7入门级开发板$ i& a3 E. o W+ @% n
A.6三星S3C44B0ARM7提高级开发板
" z0 e; m6 C0 ~) e+ sA.7TX-51STAR51单片机开发板(配套详细视频教程)
, Q" L& V1 d$ ?$ q W |