logo资料库

40个经典单片机实验帮你成功.pdf

第1页 / 共206页
第2页 / 共206页
第3页 / 共206页
第4页 / 共206页
第5页 / 共206页
第6页 / 共206页
第7页 / 共206页
第8页 / 共206页
资料共206页,剩余部分请下载后查看
40 0 个经典单片机实验帮你成功
1.闪烁灯
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计内容
(1).延时程序的设计方法
(2).输出控制
5.程序框图
6.汇编源程序
7.C 语言源程序
2.模拟开关灯
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计内容
(1).开关状态的检测过程
(2).输出控制
5.程序框图
6.汇编源程序ORG 00H
7.C 语言源程序
3.多路开关状态指示
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计内容
(1.开关状态检测
(2.输出控制
5.程序框图
6.方法一(汇编源程序)
7.方法一(C 语言源程序)
8.方法二(汇编源程序)
9.方法二(C 语言源程序)
4.广告灯的左移右移
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计内容
5.程序框图
6.汇编源程序
7.C 语言源程序
5.广告灯(利用取表方式)
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计内容
5.程序框图
6.汇编源程序
7.C 语言源程序
6.报警产生器
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计内容
5.程序框图
6.汇编源程序
7.C 语言源程序
7.I/O 并行口直接驱动LED 显示
1. 实验任务
2. 电路原理图
3. 系统板上硬件连线
4. 程序设计内容
(1.LED 数码显示原理
(2.由于显示的数字0-9 的字形码没有规律可循
5.程序框图
6.汇编源程序
7.C 语言源程序
8.按键识别方法之一
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计方法
5.程序框图
6.汇编源程序
7.C 语言源程序
9.一键多功能按键识别技术
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计方法
(1.设计思想由来
(2.设计方法
5.程序框图
6.汇编源程序
7.C 语言源程序
10.00-99 计数器
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计内容
5.程序框图
6.汇编源程序
7.C 语言源程序
11.00-59 秒计时器(利用软件延时)
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计内容
5.程序框图
6.汇编源程序
7.C 语言源程序
12.可预置可逆4 位计数器
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计内容
5.程序框图
6.汇编源程序
7.C 语言源程序
13.动态数码显示技术
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计内容
5.程序框图
6.汇编源程序
7.C 语言源程序
14.4×4 矩阵式键盘识别技术
1.实验任务
2.硬件电路原理图
3.系统板上硬件连线
4.程序设计内容
5.程序框图
6.汇编源程序
7.C 语言源程序
15.定时计数器T0 作定时应用技术(一)
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计内容
5.程序框图
6.汇编源程序(查询法)
1.汇编源程序(中断法)
7.C 语言源程序(查询法)
2.C 语言源程序(中断法)
16.定时计数器T0 作定时应用技术(二)
1.实验任务
2.电路原理图
3.系统板硬件连线
4.程序设计内容
5.程序框图
6.汇编源程序
7.C 语言源程序
17.99 秒马表设计
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序框图
5.汇编源程序
6.C 语言源程序
18.“嘀、嘀、……”报警声
1.实验任务
2.电路原理图
3.系统板硬件连线
4.程序设计方法
5.程序框图
6.汇编源程序
7.C 语言源程序
19.“叮咚”门铃
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计方法
5.程序框图
6.汇编源程序
7.C 语言源程序
20.数字钟﹝★﹞
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.相关基本知识
5.程序框图
6.汇编源程序
7.C 语言源程序
21.拉幕式数码显示技术
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计方法
5.程序框图
6.汇编源程序
7.C 语言源程序
22.电子琴
1.实验任务
2.电路原理图
3.系统板硬件连线
4.相关程序内容
5.程序框图
6.汇编源程序
7.C 语言源程序
23.模拟计算器数字输入及显示
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.相关程序设计内容
5.汇编源程序
6.C 语言源程序
24.8X8 LED 点阵显示技术
1.实验任务
2.电路原理图
3.硬件电路连线
4.程序设计内容
5.汇编源程序
6.C 语言源程序
25.点阵式LED“0-9”数字显示技术
1.实验任务
2.电路原理图
3.硬件系统连线
4.程序设计内容
5.汇编源程序
6.C 语言源程序
26.点阵式LED 简单图形显示技术
1.实验任务
2.电路原理图
3.硬件系统连线
4.程序设计内容
5.汇编源程序
6.C 语言源程序
27.ADC0809A/D 转换器基本应用技术
1.基本知识
(1).ADC0809 的内部逻辑结构
(2).引脚结构
2.ADC0809 应用说明
3.实验任务
4.电路原理图
5.系统板上硬件连线
6.程序设计内容
7.汇编源程序
8.C 语言源程序
28.数字电压表
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计内容
5.汇编源程序
6.C 语言源程序
29.两点间温度控制
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.汇编源程序
5.C 语言源程序
30.四位数数字温度计
1.温度传感器AD590 基本知识
2.实验任务
3.电路原理图
4.系统板上硬件连线
5.程序设计内容
6.汇编源程序
7.C 语言源程序
31.6 位数显频率计数器
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计内容
5.C 语言源程序
32.电子密码锁设计
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计内容
5.C 语言源程序
33.4×4 键盘及8 位数码管显示构成的电子密码锁
1.实验任务
2.电路原理图
3.系统板上硬件连线
4.程序设计内容
5.C 语言源程序
34.带有存储器功能的数字温度计-DS1624 技术应用
1.DS1624 基本原理
(1).DS1624 基本特性
(2).引脚描述及功能方框图
(3).DS1624 工作原理
2.实验任务
3.电路原理图
4.系统板上硬件连线
5.程序设计内容
6.C 语言源程序
35.DS18B20 数字温度计使用
1.DS18B20 基本知识
1、DS18B20 产品的特点
2、DS18B20 的引脚介绍
3.DS18B20 的使用方法
4.实验任务
5.电路原理图
6.系统板上硬件连线
7.C 语言源程序
44440000 个经典单片机实验帮你成功 个经典单片机实验帮你成功 个经典单片机实验帮你成功 个经典单片机实验帮你成功 1. 闪烁灯 1. 实验任务 如图 4.1.1 所示:在 P1.0 端口上接一个发光二极管 L1,使 L1 在不停地一亮一 灭,一亮一灭的时间间隔为 0.2 秒。 2. 电路原理图 3. 系统板上硬件连线 图 4.1.1 把“单片机系统”区域中的 P1.0 端口用导线连接到“八路发光二极管指示模 块”区域中的 L1 端口上。 4. 程序设计内容 (1). 延时程序的设计方法 作为单片机的指令的执行的时间是很短,数量大微秒级,因此,我们要 求的闪烁时间间隔为 0.2 秒,相对于微秒来说,相差太大,所以我们在 tyw藏书
执行某一指令时,插入延时程序,来达到我们的要求,但这样的延时程 序是如何设计呢?下面具体介绍其原理: 如图 4.1.1 所示的石英晶体为 12MHz,因此,1 个机器周期为 1 微秒 机器周期 微秒 MOV R6,#20 2 个机器周期 2 D1: MOV R7,#248 2 个机器周期 2 2+2×248=498 20× DJNZ R7,$ 2 个机器周期 2×248 498 DJNZ R6,D1 2 个机器周期 2×20=40 10002 因此,上面的延时程序时间为 10.002ms。 由以上可知,当 R6=10、R7=248 时,延时 5ms,R6=20、R7=248 时, 延时 10ms,以此为基本的计时单位。如本实验要求 0.2 秒=200ms, 10ms×R5=200ms,则 R5=20,延时子程序如下: DELAY: MOV R5,#20 D1: MOV R6,#20 D2: MOV R7,#248 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET (2). 输出控制 如图 1 所示,当 P1.0 端口输出高电平,即 P1.0=1 时,根据发光二极管 的单向导电性可知,这时发光二极管 L1 熄灭;当 P1.0 端口输出低电平, 即 P1.0=0 时,发光二极管 L1 亮;我们可以使用 SETB P1.0 指令使 P1.0 高电平,使用 CLR P1.0 指 端口输出 令使 P1.0 端口输出低电平。 5. 程序框图 如图 4.1.2 所 示 tyw藏书
图 4.1.2 6. 汇编源程序 ORG 0 START: CLR P1.0 LCALL DELAY SETB P1.0 LCALL DELAY LJMP START DELAY: MOV R5,#20 ;延时子程序,延时 0.2 秒 D1: MOV R6,#20 D2: MOV R7,#248 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET END 7. C 语言源程序 #include sbit L1=P1^0; void delay02s(void) //延时 0.2 秒子程序 { unsigned char i,j,k; for(i=20;i>0;i--) for(j=20;j>0;j--) for(k=248;k>0;k--); } void main(void) { tyw藏书
while(1) { L1=0; delay02s(); L1=1; delay02s(); } } 1. 实验任务 2. 模拟开关灯 如图 4.2.1 所示,监视开关 K1(接在 P3.0 端口上),用发光二极管 L1(接 在单片机 P1.0 端口上)显示开关状态,如果开关合上,L1 亮,开关打开, L1 熄灭。 2. 电路原理图 3. 系统板上硬件连线 图 4.2.1 (1). 把“单片机系统”区域中的 P1.0 端口用导线连接到“八路发光二极管指示模 块”区域中的 L1 端口上; tyw藏书
(2). 把“单片机系统”区域中的 P3.0 端口用导线连接到“四路拨动开关”区域中的 K1 端口上; 4. 程序设计内容 (1). 开关状态的检测过程 单片机对开关状态的检测相对于单片机来说,是从单片机的 P3.0 端口输入信号, 而输入的信号只有高电平和低电平两种,当拨开开关 K1 拨上去,即输入高电平, 相当开关断开,当拨动开关 K1 拨下去,即输入低电平,相当开关闭合。单片机 可以采用 JB BIT,REL 或者是 JNB BIT,REL 指令来完成对开关状态的检测即 可。 (2). 输出控制 如图 3 所示,当 P1.0 端口输出高电平,即 P1.0=1 时,根据发光二极管的单向 导电性可知,这时发光二极管 L1 熄灭;当 P1.0 端口输出低电平,即 P1.0=0 时,发光二极管 L1 亮;我们可以使用 SETB P1.0 指令使 P1.0 端口输出高电平, 使用 CLR P1.0 指令使 P1.0 端口输出低电平。 5. 程序框图 图 4.2.2 6. 汇编源程序 ORG 00H START: JB P3.0,LIG CLR P1.0 SJMP START LIG: SETB P1.0 SJMP START END tyw藏书
7. C 语言源程序 #include sbit K1=P3^0; sbit L1=P1^0; void main(void) { while(1) { if(K1==0) { L1=0; //灯亮 } else { L1=1; //灯灭 } } } 3. 多路开关状态指示 1. 实验任务 如图 4.3.1 所示,AT89S51 单片机的 P1.0-P1.3 接四个发光二极管 L1-L4, P1.4-P1.7 接了四个开关 K1-K4,编程将开关的状态反映到发光二极管上。 (开关闭合,对应的灯亮,开关断开,对应的灯灭)。 2. 电路原理图 tyw藏书
3. 系统板上硬件连线 图 4.3.1 (1. 把“单片机系统”区域中的 P1.0-P1.3 用导线连接到“八路发光二 极管指示模块”区域中的 L1-L4 端口上; (2. 把“单片机系统”区域中的 P1.4-P1.7 用导线连接到“四路拨动开 关”区域中的 K1-K4 端口上; 4. 程序设计内容 (1. 开关状态检测 对于开关状态检测,相对单片机来说,是输入关系,我们可轮流检测每个开关状 态,根据每个开关的状态让相应的发光二极管指示,可以采用 JB P1.X,REL 或 JNB P1.X,REL 指令来完成;也可以一次性检测四路开关状态,然后让其指 示,可以采用 MOV A,P1 指令一次把 P1 端口的状态全部读入,然后取高 4 位的 状态来指示。 tyw藏书
(2. 输出控制 根据开关的状态,由发光二极管 L1-L4 来指示,我们可以用 SETB P1.X 和 CLR P1.X 指令来完成,也可以采用 MOV P1,#1111XXXXB 方法一次指示。 5. 程序框图 读 P1 口数据到 ACC 中 ACC 内容右移 4 次 ACC 内容与 F0H 相或 ACC 内容送入 P1 口 图 4.3.2 6. 方法一(汇编源程序) ORG 00H START: MOV A,P1 ANL A,#0F0H RR A RR A RR A RR A ORl A,#0F0H MOV P1,A SJMP START END 7. 方法一(C 语言源程序) tyw藏书
分享到:
收藏