C语言入门知识

Python017

C语言入门知识,第1张

C语言基础知识

1.1 C语言简介

C语言于1972年由美国的Dennis Ritchie发明,并首次在配备了UNIX操作系统的DEC PDP-11计算机上实现。它由早期的编程语言BCPL(Basic Combind Programming Language)发展演变而来。1970年,AT&T贝尔实验室的Ken Thompson根据BCPL语言设计出了较先进并取名为B的语言,通过不断修改、完善,更先进的C语言问世了。

C语言是一种功能强大、应用广泛、具有发展前途的计算机语言。它既可用于系统软件的设计,也可用于应用软件的开发。许多著名的系统软件都是由C语言编写的。C语言具有下列特点:

(1)C语言既具有低级语言直接操纵硬件的特点,又具有高级语言与 自然语言和人的思维逻辑相似的特点,C语言程序易编写、易查错,而且实用性很强。

(2)C语言具有丰富的数据类型和运算符,语法结构简单。

(3)C语言是一种结构化程序设计语言,提供了完整的程序控制语句。

(4)C语言是一种模块化程序设计语言,适合大型软件的开发和研制。

(5)C语言还有一个突出的优点就是适合于多种操作系统,如DOS、UNIX,也适用于多种机型,其程序移植性好。

1.2 C语言的数据类型

数据是程序处理的对象,数据类型是数据的内在表现形式。例如,学生的年龄和成绩具有一般数值的特点,在C语言中称为数值型,其中年龄是整数,称为整型;成绩可以为小数,称为实型。而学生的姓名和性别是文字,在C语言中称为字符型数据。

C语言具有丰富的数据类型,其中基本的数据类型有整型、实型、字符型。

1.2.1 变量

变量是在程序执行过程中其值可以被改变的量。

1.变量命名规则

和人的取名一样,变量的命名也有一定的规则。

(1)由字母、数字和下划线组成;

(2)必须以字母或下划线打头;

(3)字母区分大小写(在系统默认状态下);

(4)前32个字符有效(在系统默认状态下)。

例如:a,Book,book,_Make_Cipher都是合法的变量名,且Book与book是不同的变量名,而123A,x+y都不是变量名。

2.变量的数据类型

变量可以是任意的一种数据类型,如整型变量、字符型变量、指针变量等。C语言中的基本数据类型及其特性如表1-1所示。

表1-1 C语言的基本数据类型

数据类型名 数据类型描述 数据类型的长度(字节) 数据取值范围

char 字符型 1 0~255

int 有符号整型 2 –32 768~32 767

unsigned int 无符号整型 2 0~65 535

short 短整型 2 –32 768~32 767

long 长整型 4 –2 147 483 648~2 147 483 647

unsigned long 无符号长整型 4 0~4 294 967 295

float 单精度实数 4 |3.4×10–38|~|3.4×1038|

double 双精度实数 8 |1.7×10–308|~|1.7×10308|

long double 长双精度实数 10 |3.4×10–4932|~|3.4×104932|

3.变量的定义

每个变量在使用前都必须先定义其数据类型,定义变量数据类型的语法格式如下:

数据类型符 变量名1,变量名2,…

例如:

int age,score /* 定义年龄和成绩为整型 */

char name[20] /* 定义姓名为至多含20个字符的字符数组 */

4.变量的存储类型

当定义某个变量时,C语言的编译系统就要给该变量分配若干个存储单元用来存放该变量的值。而在计算机中寄存器和内存都可以存放数据,内存又可分为临时占用和长期占用。变量的存储类型是指变量在计算机中的存放位置及时间。

定义变量存储类型的语法格式如下:

存储类型符 数据类型符 变量名1,变量名2,…

变量的存储类型有自动型(auto)、寄存器型(register)、静态型(static)和外部型(extern),具体特点和使用方法在后面的章节中详细介绍。

在变量定义时,如未说明存储类型,则系统默认为自动型(auto)。

5.变量的初始化

变量的初始化是给变量赋初值的一种方法,是指在变量定义时就给变量赋予初始值。变量初始化的方法很简单,在变量定义的语句中,在变量名后加一个等号和初值即可。

例如:

int x, age=20, score=100

在上面的定义中,变量x未赋初值,而变量age和score的初值分别为20和100。

在程序中,变量未赋值之前不允许使用,即要遵循“先赋值后使用”的规则。

1.2.2 常量

常量是在程序运行过程中值不发生改变的数据。例如,圆周率3.1415926就是一个常量。常量也有数据类型,它们是整型常量、实型常量、字符常量、字符串常量及符号常量,整型常量及实型常量的数据长度及取值范围与变量的规定相同。

1.整型常量

整型常量用来表示整数,整型数据可以以不同数制形式来表示,不同的进位制有其不同的表示方式,其表示方式如表1-2所示。

表1-2 整型常量的表示方式

数制 表 示 方 式 示例

十进制 一般整数的写法 0,–22,55

八进制 在八进制整数前加数字0 00,–072,+0331

十六进制 在十六进制整数前加数字0和字母x 0x0,0x1B5,–0xb3

另外,对于长整型常量,应当在其后加后缀L或l,例如30L。30L和30数值一样,但占用内存的大小不一样。30占用2个字节的存储空间,而30L占用4个字节的存储空间。

2.实型常量

实型常量只有十进制数表示方式,它没有单精度和双精度之分。其表示方式有定点数表示和浮点数表示两种。具体表示方式如表1-3所示。

表1-3 实型常量的书写方法

类别 表 示 方 式 示例

定点数 整数部分.小数部分 0.0,1.34,–34.0

浮点数 尾数E(或e)指数 3.57E10,–5.6e–9

说明:

(1)浮点数表示方式相当于数学中的科学计数法,其换算公式如下:

尾数E(或e)指数=尾数×10指数

(2)浮点数中的指数部分只能是整型数,尾数可以大于或等于10。

3.字符常量

字符常量是用两个单引号引住单个字符来表示的。例如:'A'、'*'、'!'等。使用字符常量时应注意以下几点:

(1)空格也是字符,表示为'a'。

(2)单引号中必须恰好有一个字符,不能空缺。如' '是错误的字符常量。

在C语言中有一类特殊的字符常量,被称为转义字符。它们用来表示特殊符号或键盘上的控制代码,常见的转义字符如表1-4所示。

表1-4 常用转义字符表

转 义 字 符 意义 转 义 字 符 意义

\n 回车换行符 \a 响铃

\t 水平制表符 \" 双引号

\v 垂直制表符 \' 单引号

\b 左退一格 \\ 反斜杠

\r 回车符 \ddd 1~3位八进制数ddd对应的字符

\f 换页符 \xhh 1~2位十六进制数hh对应的字符

4.字符串常量

字符串是用双引号引住的若干个字符。例如,"hello!","485769","a"。

字符串可以不含任何字符,称为空串,表示为""。

字符串中所含的字符个数称为字符串的长度。例如,"abc123","3",""的长度分别为6,1,0。计算字符串长度时应注意以下几点:

(1)对于含有转义字符的字符串,应将转义字符计算为1个字符。例如,"abc\\12\n"的长度为7,而不是9;"abc\\\12\n"及"abc\\\123\n"的长度均为6。

(2)在字符串中,反斜杠表示转义字符的开始,如果其后面没有表1-4中所列出的转义符号,则该反斜杠被忽略,并不参与计算长度。例如,"\A"的长度为1,但"\"是非法的。

5.符号常量

上面所介绍的常量都是具体数据,在程序中也可以用特定符号来表示某个常量,这个符号被称为符号常量。

符号常量的语法格式如下:

#define 符号常量名 常量

例如:

#define PI 3.1415926

经过上述定义后,可以在程序中使用PI来代替3.1415926。

在程序中使用符号常量有两个好处:一是提高了程序的易读性;二是为修改程序提供了方便。例如,当不需要太高精度时,只需要将符号常量定义修改为

#define PI 3.14

而不需要在程序中去修改每一处的圆周率。

1.3 算术运算符与算术表达式

用来表示各种运算的符号称为运算符。C语言中包括以下七大类的基本运算符:算术运算符、逻辑运算符、关系运算符、赋值运算符、逗号运算符、条件运算符和位运算符。本节主要介绍算术运算符,其他的运算符将在后续章节中详细介绍。

1.3.1 算术运算符

C语言中的算术运算符和数学中的算术运算相似,是对数据进行算术运算的。算术运算符的运算对象、运算规则及结合性如表1-5所示。

表1-5 算术运算符

运算对象个数 名称 运 算 符 运 算 规 则 运算对象

数据类型 结 合 性

单目 正 + 取原值 整型或实型 自右向左

负 – 取负值

双目 加 + 加法运算 自左向右

减 – 减法运算

乘 * 乘法运算

除 / 除法运算

模 % 整除取余 整型

单目 增1(前缀) ++ 先加1,后使用 整型、字符型、指针型变量或数组元素、实型 自右向左

增1(后缀) ++ 先使用,后加1

减1(前缀) – – 先减1,后使用

减1(后缀) – – 先使用,后减1

在C语言中,参加运算的对象个数称为运算符的“目”。单目运算符是指参加运算的对象只有一个,如+10,–67,x++。双目运算符是指参加运算的对象有两个,如2+3,7%3。

相同运算符连续出现时,有的运算符是从左至右进行运算,有的运算符是从右至左进行运算,C语言中,将运算符的这种特性称为结合性。

加法(+)、减法(–)、乘法(*)与数学中的算术运算相同。例如:3.5+4.7结果是8.2;3.5 – 4.7结果是–0.8;3.5*4.7结果是16.45。

除法运算(/)与数学中的除法不完全相同,它与参加运算的对象的数据类型相关。当参加运算的两个对象均为整型数据时,其运算结果为数学运算结果的整数部分。如7/4结果为1,而不是1.75。若参加运算的两个对象有一个是实型或两个都是实型,那么运算结果为实际运算的值,如7/5.0的运算结果为1.4。

模运算的运算对象必须为整型,结果是相除后的余数,如7%5结果为2。

增1减1运算符都是单目运算符,用来对整型、实型、字符型、指针型变量或数组元素等变量进行加1或减1运算,运算的结果仍是原类型。

1.3.2 常用数学函数

C语言系统提供了400多个标准函数(称为库函数),设计程序时可以直接使用它们。库函数主要包括数学函数、字符处理函数、类型转换函数、文件管理函数及内存管理函数等几类。下面介绍常用的数学函数,其他类型的函数将在后面章节中陆续介绍。

1.函数名:abs

原型:int abs(int i)

功能:求整数的绝对值。

例如,设x=abs(5),y=abs(–5),z=abs(0),则x=5,y=5,z=0。

2.函数名:labs

原型:long labs(long n)

功能:求长整型数的绝对值。

例如,设x=labs(40000L),y=labs(–5),z=labs(0),则x=40000,y=5,z=0。

3.函数名:fabs

原型:double fabs(double x)

功能:求实数的绝对值。

例如,设x=fabs(5.3),y=fabs(–5.3),z=fabs(0),则x=5.3,y=5.3,z=0。

4.函数名:floor

原型:double floor(double x)

功能:求不大于x的最大整数,它相当于数学函数[x]。

例如,设x=floor(–5.1),y=floor(5.9),z=floor(5),则x= –6,y=5,z=5。

5.函数名:ceil

原型:double ceil(double x)

功能:求不小于x的最小整数。

例如,设x=ceil(–5.9),y=ceil(5.1),z=ceil(5),则x = –5,y=6,z=5

6.函数名:sqrt

原型:double sqrt(double x)

功能:求x的平方根。

例如,设x=sqrt(4),y=sqrt(16),则x=1.414214,y=4.0

7.函数名:log10

原型:double log10(double x)

功能:求x的常用对数。

8.函数名:log

原型:double log(double x)

功能:求x的自然对数。

9.函数名:exp

原型:double exp(double x)

功能:求欧拉常数e的x次方。

10.函数名:pow10

原型:double pow10(int p)

功能:求10的p次方。

例如,设x=pow10(3),y=pow10(0),则x=1000,y=1

11.函数名:pow

原型:double pow(double x, double y)

功能:求x的y次方。

例如,设x=pow(3,2),y=pow(–3,2),则x=9,y=9

12.函数名:sin

原型:double sin(double x)

功能:正弦函数。

13.函数名:cos

原型:double cos(double x)

功能:余弦函数。

14.函数名:tan

原型:double tan(double x)

功能:正切函数。

1.3.3 算术表达式

由算术运算符和运算对象连接形成的式子称为算术表达式。

算术运算符的优先级从高到低规定如下:

++ – –

* /%

+ –

位于同一行的运算符的优先级相同。

1.4 数据类型转换规则

对数据进行运算时,要求参与运算的对象的数据类型相同(运算得到的运算结果的类型与运算对象也相同)。因此,在运算过程中常常需要对变量或常量的数据类型进行转换,转换的方法有两种,一种是系统自动转换(又称为隐式转换);另一种是在程序中强制转换(又称为显式转换)。

1.4.1 自动转换规则

在不同类型数据的混合运算中,由系统自动实现转换。转换规则如下:

(1)若参与运算的数据的类型不同,则应先转换成同一类型,然后进行运算。

(2)将低类型数据转换成高类型数据后进行运算。如int型和long型运算时,先把int型转换成long型后再进行运算。

类型的高低是根据其所占空间的字节数按从小到大的顺序排列的,顺序如下:

char,int,long,float,double。

(3)所有的浮点运算都是按照双精度进行运算的,即使仅含float型单精度量运算的表达式,也要先转换成double型,再作运算。

(4)char型和short型参与运算时,必须先转换成int型。

例如,设有:

float PI=3.14

int s,r=7

s=r*r*PI

因为PI为单精度型,s和r为整型,在执行s=r*r*PI语句时,r和PI都转换成double型后再进行计算,运算结果也为double型,右边的运算结果为153.86,但由于s为整型,故应将赋值号右边的运算结果转换成整型(舍去小数部分),因此s的值为153。

1.4.2 强制类型转换

强制类型转换是通过类型转换运算来实现的,其语法格式如下:

(类型说明符)(表达式)

其功能是把表达式的运算结果强制转换成类型说明符所表示的类型。例如: (float) a 把a转换为实型;(int)(x+y) 把x+y的结果转换为整型;而(int)x+y 则只将x转换为整型。

在使用强制类型转换时应注意以下问题:

(1)类型说明符和表达式都必须加括号(单个变量可以不加括号),如把(int)(x+y)写成(int)x+y则只是把x转换成int型之后再与y相加。

(2)对于被转换的单个变量而言,无论是强制转换还是自动转换,都只是为了本次运算的需要而对变量的数据长度进行临时性转换,而不会改变变量定义时所声明的类型。

例如,设有:

float f = –5.75

int x

x= (int)f

将f强制转换成整数–5,因此x = –5,而f本身的类型并未改变且其值仍为–5.75。

1.5 程序结构

1.5.1 主函数结构

每一个C源程序都是一系列函数的集合。其中,必须有且只能有一个主函数,其函数名为main,其结构如下:

void main(void)

{

}

其中,void main(void) 称为函数说明部分(又称函数头),而

{

}

称为函数体,函数体中的每个语句行末尾都必须用分号结束。

1.5.2 文件包含命令

C语言系统提供了400多个库函数,并将这些函数根据其功能分成了若干组,每组都有一个组名。如数学类函数组的组名为math。在C语言系统所安装文件夹的下级文件夹中有一个与其相对应的文件math.h,这些扩展名为.h的文件称为头文件。

include称为文件包含命令,当用户在程序中使用到系统的标准库函数中的函数时,需要在程序中(一般在程序的首部)增加一条预处理语句如#include<stdio.h>,以便告知系统需要使用某个头文件中的函数。

1.5.3 C语言程序基本结构

一个完整的C语言源程序由如下5个部分构成:

(1)预处理命令;

(2)全局变量说明;

(3)函数原型说明;

(4)主函数;

(5)其他子函数。

一个简单的C语言源程序只需要(1)和(4)两个部分,其中“预处理命令”一般是一系列文件包含命令,即include命令。

关于程序结构,应当注意以下几方面的问题:

(1)可由若干个函数构成,其中必须有且只有一个以main命名的主函数,可以没有其他函数。每个函数完成一定的功能,函数与函数之间可以通过参数传递信息。main()函数可以位于原程序文件中任何位置,但程序的执行总是从main函数开始,main函数执行完毕时程序执行结束。

(2)子函数的结构与主函数相同,即分为函数说明部分和函数体两个部分。

(3)函数中的每个语句最后要有一个分号,作为语句结束标记。但某些特殊的语句行末尾不需要分号,有时还不能有分号。

(4)“/*”和“*/”括住的任意一段字符称为“程序注释”,用来对程序作说明,可以插入到程序的任何地方,且可以跨行使用。程序注释不影响程序运行结果。

(5)函数的书写格式很灵活,在一行中可以书写多个语句(每个语句末尾都要有分号),一个语句也可以写在多行中。在程序的任何地方都可以插入空格或回车符。

(6)主函数可以调用任何子函数但不能调用它自己,任何子函数之间也可以相互调用,但是子函数不能调用主函数。

下面是一个简单的C语言源程序:

【例1-1】 求圆的面积。

#include <stdio.h>

void main(void)

{

float r,s,p=3.14

r=10.5

s=r*r*p

printf("圆的面积是:%f ",s)

}

下面是一个较完整的C语言源程序:

【例1-2】 较完整的C语言程序示例。

#include<stdio.h>

#include<conio.h>

int y,z

void abc(int x)

void main(void)

{

int x

clrscr()

x=10

y=20

z=30

printf("ok1: x=%d y=%d z=%d \n",x,y,z)

abc(x)

printf("ok2: x=%d y=%d z=%d \n",x,y,z)

getch()

}

void abc(int x)

{

int y

printf("ok3: x=%d y=%d z=%d \n",x,y,z)

x=100

y=200

z=300

printf("ok4: x=%d y=%d z=%d \n",x,y,z)

}

你网页制作专业,编程不需要用MS Visual Studio。Linux有许多优秀的IDE,如eclipse, code::block。另外在Linux下编程会比win下更加方便。你可以直接使用gcc,gdb等而不需要复杂的IDE。

三剑客目前是不能运行于Linux下的,不过在Mac OS上得到了支持。在Linux下制作网页,你可以使用Bluefish, 比较适合网页编写的老手,因为它不支持可见即可得。但他的代码处理能力一流,十分简洁。

在Linux下制作网页,会遇到许多麻烦,首先,IE是无法运行于linux的。你可以尝试使用Wine来解决这个问题。但Wine并不稳定。Crossover是Wine的商业版,更加稳定,可以运行visual studio和三剑客软件。不过它是付费的。

就我个人看法,Linux下学习开发网页,还是注重代码,如果你是美工的话,完全没有必要。

学习linux重在坚持,开始会认为linux很不人性化,但用后会发现它的精妙之处。

【书名】 新概念51单片机C语言教程——入门、提高、开发、拓展全攻略(含光盘1张)

【作者】

【作译者】 郭天祥

【出版社】 电子工业出版社

【ISBN】 978-7-121-07893-4

【定价】 69.00元

【出版日期】 2009-01

【页码】

【版次】

【装帧】

【开本】 16

▼内容简介

本书从实际应用入手,以实验过程和实验现象为主导,循序渐进地讲述51单片机C语言编程方法以及51单片机的硬件结构和功能应用。全书共分5篇,分别为入门篇、内外部资源操作篇、提高篇、实战篇和拓展篇。本书内容丰富,实用性强,书中大部分内容均来自科研工作及教学实践,许多C语言代码可以直接应用到工程项目中。本书配套光盘提供13讲近30学时的教学视频和本书实例代码,可使读者更快更好地掌握单片机知识和应用技能。本书作者还可提供与本书配套的单片机实验板。

本书可作为大学本、专科单片机课程教材,适合于51单片机的初学者和使用51单片机从事项目开发的技术人员,也可供从事自动控制、智能仪器仪表、电力电子、机电一体化等专业的技术人员参考。

▼图书目录

第1篇 入 门 篇

1.1 单片机概述

1.1.1 什么是单片机

1.1.2 单片机标号信息及封装类型

1.1.3 单片机能做什么

1.1.4 如何开始学习单片机

1.2 51单片机外部引脚介绍

1.3 电平特性

1.4 二进制与十六进制

1.4.1 二进制

1.4.2 十六进制

1.5 二进制的逻辑运算

1.5.1 与

1.5.2 或

1.5.3 非

1.5.4 同或

1.5.5 异或

1.6 单片机的C51基础知识介绍

1.6.1 利用C语言开发单片机的优点

1.6.2 C51中的基本数据类型

1.6.3 C51数据类型扩充定义

1.6.4 C51中常用的头文件

1.6.5 C51中的运算符

1.6.6 C51中的基础语句

1.6.7 学习单片机应该掌握的主要内容

2.1 Keil工程建立及常用按钮介绍

2.1.1 Keil工程的建立

2.1.2 常用按钮介绍

2.2 点亮第一个发光二极管

2.3 while语句

2.4 for语句及简单延时语句

2.5 Keil仿真及延时语句的精确计算

2.6 不带参数函数的写法及调用

2.7 带参数函数的写法及调用

2.8 利用C51库函数实现流水灯

第2篇 内外部资源操作篇

3.1 数码管显示原理

3.2 数码管静态显示

3.3 数码管动态显示

3.4 中断概念

3.5 单片机的定时器中断

4.1 独立键盘检测

4.2 矩阵键盘检测

5.1 模拟量与数字量概述

5.2 A/D转换原理及参数指标

5.3 ADC0804工作原理及其实现方法

5.4 D/A转换原理及其参数指标

5.5 DAC0832工作原理及实现方法

5.6 DAC0832输出电流转换成电压的

方法

第6章 串行口通信原理及操作流程

6.1 并行与串行基本通信方式

6.2 RS-232电平与TTL电平的转换

6.3 波特率与定时器初值的关系

6.4 51单片机串行口结构描述

6.5 串行口方式1编程与实现

6.6 串行口打印在调试程序中的应用

第7章 通用型1602,12232,12864液晶

操作方法

7.1 液晶概述

7.2 常用1602液晶操作实例

7.3 常用12232液晶操作实例

7.4 常用12864液晶操作实例

第8章 I2C总线AT24C02芯片应用

8.1 I2C总线概述

8.2 单片机模拟I2C总线通信

8.3 E2PROM AT24C02与单片机的通信

实例

第9章 基础运放电路专题

9.1 运放概述及参数介绍

9.2 反相放大器

9.3 同相放大器

9.4 电压跟随器

9.5 加法器

9.6 差分放大器

9.7 微分器

9.8 积分器

第3篇 提 高 篇

第10章 定时器/计数器应用提高

10.1 方式0应用

10.2 方式2应用

10.3 方式3 应用

10.4 52单片机定时器2介绍

10.5 计数器应用

第11章 串行口应用提高

11.1 方式0应用

11.2 方式2和方式3应用

11.3 单片机双机通信

11.4 单片机多机通信

第12章 指针

12.1 指针与指针变量

12.1.1 内存单元、地址和指针

12.1.2 指针变量的定义、赋值与

引用

12.2 指针变量的运算

12.3 指针与数组

12.3.1 指针与一维数组

12.3.2 指针与多维数组

12.4 指针与函数

12.4.1 指针作为函数的参数

12.4.2 指向函数的指针

12.4.3 指针型函数

12.5 指针与字符串

12.5.1 字符串的表达形式

12.5.2 字符指针作为函数参数

12.5.3 使用字符指针与字符数组的

区别

12.6 指针数组与命令行参数

12.6.1 指针数组的定义和使用

12.6.2 指向指针的指针

12.6.3 指针数组作为main()函数的命令行

参数

12.7 指针小结

12.7.1 指针概念综述

12.7.2 指针运算小结

12.7.3 等价表达式

12.8 C51中指针的使用

12.8.1 指针变量的定义

12.8.2 指针应用

第13章 STC系列51单片机功能介绍

13.1 单片机空闲与掉电模式应用

13.2 “看门狗”概念及其应用

13.3 用软件实现系统复位

13.4 内部扩展RAM的应用

13.5 扩展P4口的应用

13.6 内部E2PROM的应用

13.7 STC89系列单片机内部A/D应用

13.8 STC12系列单片机内部A/D应用

13.9 STC12系列单片机的PCA/PWM

介绍

13.10 STC12系列单片机的SPI接口

介绍

13.11 STC12系列单片机的“576MHz”超速

运行

第4篇 实 战 篇

第14章 利用51单片机的定时器设计一个

时钟

14.1 如何从矩阵键盘中分解出独立按键

14.2 原理图分析

14.3 实例讲解

第15章 使用DS12C887时钟芯片设计

高精度时钟

15.1 时钟芯片概述

15.2 DS12C887时钟芯片介绍

15.3 如何用TX-1C实验板扩展本实验

15.4 原理图分析

15.5 实例讲解

第16章 使用DS18B20温度传感器设计

温控系统

16.1 温度传感器概述

16.2 DS18B20温度传感器介绍

16.3 实例讲解

第17章 太阳能充/放电控制器

17.1 控制器原理图分析

17.2 控制器板上元件介绍

17.3 实例讲解

第18章 VC、VB(MSCOMM控件)与

单片机通信实现温度显示

18.1 VC MSCOMM控件与单片机通信实现

温度显示

18.2 VB MSCOMM控件与单片机通信实现

温度显示

第5篇 拓 展 篇

第19章 使用Protell 99绘制电路图全

过程

19.1 绘制电路板概述

19.2 建立工程

19.3 制作元件库

19.4 添加封装及制作PCB封装库

19.5 错误检查及生成PCB

19.6 布线电气特性设置

19.7 自动布线和手动布线

第20章 ISD400x系列语音芯片应用

20.1 ISD400x系列语音芯片介绍

20.2 ISD400x系列语音芯片操作规则

20.3 ISD400x系列语音芯片应用实现

第21章 电机专题

21.1 直流电机原理及应用

21.2 步进电机原理及应用

21.3 舵机原理及其应用

第22章 常用元器件介绍

22.1 二极管

22.2 电容

22.3 场效应管

22.4 光耦

22.5 蜂鸣器

22.6 继电器

22.7 自恢复保险

22.8 瞬态电压抑制器

22.9 晶闸管(可控硅)

22.10 电荷泵

第23章 直流稳压电源专题

23.1 整流电路

23.2 滤波电路

23.3 稳压电路

23.4 集成稳压模块的使用

23.5 串联开关型稳压电源

第24章 运放扩展专题

24.1 简单低通滤波器

24.2 “电流-电压”转换电路

24.3 光电放大器

24.4 精密电流源

24.5 可调参考电压源

24.6 复位稳定放大器

24.7 模拟乘法器

24.8 全波整流器和平均值滤波器

24.9 正弦波振荡器

24.10 三角波发生器

24.11 自动跟踪对称电源

24.12 可调实验电源

24.13 运放相关术语表

附录A 天祥电子开发实验板简介

A.1 TX-1C 51单片机开发板(配套详细

视频教程)

A.2 AVR单片机开发板(配套详细视频

教程)

A.3 PIC单片机开发板(配套详细视频

教程)

A.4 J-Link全功能ARM仿真器

A.5 三星S3C44B0 ARM7入门级开

发板

A.6 三星S3C44B0 ARM7提高级开

发板

A.7 TX-51STAR 51单片机开发板(配套

详细视频教程)

参考文献