当前位置:文档之家› 基于51单片机的LCR测量仪(含程序、电路)

基于51单片机的LCR测量仪(含程序、电路)

基于51单片机的LCR测量仪(含程序、电路)
基于51单片机的LCR测量仪(含程序、电路)

R、L、C测量仪

R、L、C测量仪

摘要:把R、L、C转换成频率信号f,转换的原理分别是RC振荡电路和LC电容三点式振荡电路。单片机计数得出被测频率,由该频率计算出各个参数值,数据处理后,送显示。

关键词:RC振荡电路LC电容三点式

R、L、C measure instrument

Liu zaile Zhou qunwei Lv xiaojuan

(Nanhua University HengYang Hunan 421001)

Teacher:Wang Yan

Abstract:The resistance、the inductance and the capacitance are translated into frequency on account of RC surging circuit and LC surging circuit。Single chip was measured frequency and computed each parameter value from this frequency,showing the parameter。

Key words:RC surging circuit LC surging circuit.

目录

- 1 -

R 、L 、C 测量仪

- 2 -

第一章 系统设计 (3)

1.1 设计要求 (3)

1.1.1 设计任务 .............................................................................. 3 1.1.2 技术要求 .............................................................................. 3 1.2 方案比较 ........................................................................................ 3 1.3 方案论证 . (4)

1.3.1 总体思路 .............................................................................. 4 1.3.2 设计方案 (4)

第二章 主要电路设计与说明 (5)

2.1 TS556芯片简介 (5)

2.1.1 芯片的顶视图及各引脚的功能 ................................................... 5 2.1.2 芯片的等效功能方框图及工作原理 ............................................. 5 2.2 CD4066芯片的简介 ........................................................................... 7 2.3测X R 的RC 振荡电路 . (7)

2.3.1 用556时基电路构成多谐振荡器 (7)

2.3.2 测量电阻的电路模块 ............................................................... 9 2.4 测X C 的RC 振荡电路 ...................................................................... 10 2.5 测X L 的电容三点式振荡电路 ............................................................. 11 第三章 软件设计 ........................................................................................ 11 第四章 系统测试 . (12)

4.1 测试仪器 ...................................................................................... 12 4.2 指标测试及误差分析 .. (12)

4.2.1 电阻的测量 ......................................................................... 12 4.2.2 电容的测量 ......................................................................... 13 4.2.3 电感的测量 . (13)

第五章 总结 .............................................................................................. 13 参考文献 .................................................................................................... 13 附 录 ........................................................................................................ 14 附录1 元器件清单 ...................................................................................... 14 附录2 程序清单 ......................................................................................... 15 附录3 总体电路图 ...................................................................................... 17 附录4 印制板图 ......................................................................................... 18 附录5 系统使用说明 .. (19)

第一章 系统设计

R 、L 、C 测量仪

- 3 -

1.1设计要求

1.1.1 设计任务

设计并制作一台数字显示的电阻、电容和电感参数测试仪,示意框图如下:

1.1.2 技术要求

基本要求

(1)测量范围

电阻 100Ω~1M Ω

电容 100 pF ~10000 pF 电感 100 μH~10 mH (2)测量精度+5%

(3)制作4位数码管显示器,显示测量数值,并用发光二极管分别指示所测元件的类

别和单位 发挥部分

(1)扩大测量范围 (2)提高测量精度 (3)测量量程自动转换

1.2方案比较

目前,测量电子元件集中参数R 、L 、C 的仪表种类较多,方法也各不相同,这些方法都有其优缺点。

电阻R 的测试方法最多。最基本的就是根据R 的定义式来测量。在如图1.2.1中,分别用电流表和电压表测出通过电阻的电流和通过电阻的电压,根据公式/R U I =求得电阻。这种方法要测出两个模拟量,不易实现自动化。而指针式万用表欧姆档是把被测电阻与电流一一对应,由此就可以读出被测电阻的阻值,如图1.2.2所示。这种测量方法的精度变化大,若需要较高的精度,必须要较多的量程,电路复杂。

能同时测量电器元件R 、L 、C 的最典型的方法是电桥法(如图1.2.3 )。电阻R 可用直流电桥测量,电感L 、电容C 可用交流电桥测量。电桥的平衡条件为

12()()12n x j j n x Z Z e Z Z e ?????+?+??=??

通过调节阻抗1Z 、2Z 使电桥平衡,这时电表读数为零。根据平衡条件以及一些已知的

R 、L 、C 测量仪

- 4 -

电路参数就可以求出被测参数。用这种测量方法,参数的值还可以通过联立方程求解,调节电阻值一般只能手动,电桥的平衡判别亦难用简单电路实现。这样,电桥法不易实现自动测量。

Q 表是用谐振法来测量L 、C 值(如图1.2.4)。它可以在工作频率上进行测量,使测量的条件更接近使用情况。但是,这种测量方法要求频率连续可调,直至谐振。因此它对振荡器的要求较高,另外,和电桥法一样,调节和平衡判别很难实现智能化。

图 1.2.4

用阻抗法测R 、L 、C 有两种实现方法:用恒流源供电,然后测元件电压;用恒压源供电,然后测元件电流。由于很难实现理想的恒流源和恒压源,所以它们适用的测量范围很窄。

很多仪表都是把较难测量的物理量转变成精度较高且较容易测量的物理量。基于此思想,我们把电子元件的集中参数R 、L 、C 转换成频率信号f,然后用单片机计数后在运算求出R 、L 、C 的值,并送显示,转换的原理分别是RC 振荡和LC 三点式振荡。其实,这种转换就是把模拟量进拟地转化为数字量,频率f 是单片机很容易处理的数字量,这种数字化处理一方面便于使仪表实现智能化,另一方面也避免了由指针读数引起的误差。

1.3方案论证

1.3.1 总体思路

本设计中把R 、L 、C 转换成频率信号f ,转换的原理分别是RC 振荡电路和LC 电容三点式振荡电路,单片机根据所选通道,向模拟开关送两路地址信号,取得振荡频率,作为单片机的时钟源,通过计数则可以计算出被测频率,再通过该频率计算出各个参数。然后根据所测频率判断是否转换量程,或者是把数据处理后,把R 、L 、C 的值送数码管显示相应的参数值,利用编程实现量程自动转换。

1.3.2 设计方案

该设计方案的总体方框图如图1.3.1所示。

图1.3.1 设计的总体方框图

R 、L 、C 测量仪

- 5 -

第二章 主要电路设计与说明

2.1 TS556芯片简介

方案选择中,利用555时基电路构成多谐振荡器来测量电阻R 、电容C ,为了测量两个物理量需要两块555时基电路,为节省一部分硬件空间,以一片556时基电路来代替。

2.1.1 芯片的顶视图及各引脚的功能

556双时基集成是COMS 型的,内含两个相同的555时基电路,它的顶视图如下图2.1.1所示,双列直插14脚封装。

图2.1.1 555时基电路顶视图

顶视图各引脚的功能分别为:1、13脚:放电;2、12脚:阈值;3、11脚:控制;4、10脚:复位;5、9脚:输出;6、8脚:置位触发;7脚:GND ;14脚:+电源Vcc 。

2.1.2 芯片的等效功能方框图及工作原理

芯片的等效功能方框图如下图2.1.2所示,由于556双时基集成块内含两个相同的555时基电路,它的等效功能方框图与一个555时基电路的等效功能方框图相同,在下面的分析中,可就

1

2

个556芯片单独分析。

图2.1.2 555时基电路等效功能方框图

芯片的工作原理

R 、L 、C 测量仪

- 6 -

1

2

TS556的等效功能框图中包含两个COMS 电压比较器A 和B ,一个RS 触发器,一个反相器,一个P 沟道MOS 场效应管构成的放电开关SW ,三个阻值相等的分压电阻网络,以及输出缓冲级。三个电阻组成的分压网络为上比较器A 和下比较器B 分别提供

2

3

Vcc 和13Vcc 的偏置电压。当上比较器A 的同相输入端R 高于反相输入端电位2

3

Vcc 时,A 输出为高电平,RS 触发器翻转,输出端V o 为逻辑“0”电平。即当V TH >2

3

Vcc 时,V o 为 “0”

电平,处于复位状态;而当置位触发端S 的电位,即V S ≤1

3Vcc 时,下比较器B 的输出为

“1”,RS 触发器置位,输出端V o 为“1”电平。即当V S ≤1

3

Vcc 时,V o 为 “1”电平,处

于置位状态。可见,该1

2

TS556的等效功能框图相当一个置位—复位触发器。在RS 触发器

内,还设置了一个强制复位端MR ,即不管阈值端R 和置位触发端S 处于何种电平,只要使MR =“0”,则RS 触发器的输出必为“1”,从而使输出V o 为“0”电平。从芯片的等效

功能方框图得出各功能端的真值表,如表2.1.1所示。

注:“0”→ 电平≤3

Vcc

“1”→ 电平 >23

Vcc

“×”→表示任意电平

2.2 CD4066芯片的简介

在电路中采用CD4066四路模拟开关来实现不同量程的相互转换。

CD4066芯片(全称:四路模拟开关集成电路)内部含有A 、B 、C 、D 四路模拟开关,A 路模拟开关由引脚13控制、B 路模拟开关由引脚5控制、C 路模拟开关由引脚6控制、D 路模拟开关由引脚12控制。所有的控制引脚由软件编程控制,当控制线由软件置“1”时,该模拟开关闭合,当控制线由软件置“0”时,该模拟开关断开,且四路模拟开关可独立使用。CD4066的内部结构图如图2.2.1所示:

R 、L 、C 测量仪

- 7 -

图2.2.1 CD4066的内部结构图

2.3测X R 的RC 振荡电路

2.3.1 用556时基电路构成多谐振荡器

在电路中采用RC 振荡电路来测量电阻R 、电容C 的值,用556时基电路构成RC 振荡器。如图2.3.1(a )所示,将1

2

556与三个阻、容元件如图连接,便构成无稳态多谐振荡模式。

图2.3.1(a ) 电路图

R 、L 、C 测量仪 - 8 -

图2.3.1(b ) 波形图

当加上CC V 电压时,由于C 上端电压不能突变,故

1

2

556处于置位状态,输出端(5/9)呈高电平“1”,而内部的放电COMS 管截止,C 通过A R 和B R 对其充电,6/8脚电位随C 上端电压的升高呈指数上升,波形如图2.3.1(b )所示。

当C 上的电压随时间增加,达到

2

3

Vcc 阈值电平(2/12脚)时,上比较器A 翻转,使RS 触发器置位,经缓冲级倒相,输出O V 呈低电平“0”。此时,放电管饱和导通,C 上的电

荷经B R 至放电管放电。当C 放电使其电压降至1

3

Vcc 触发电平(6/8脚)时,下比较器B

翻转,使RS 触发器复位,经缓冲级倒相,输出O V 呈高电平“1”。以上过程重复出现,形

成无稳态多谐振荡。

由上面对多谐振荡过程的分析不难看出,输出脉冲的持续时间1t 就是C 上的电压从

13Vcc 充电到2

3

Vcc 所需的时间,故C 两端电压的变化规律为 /()/()1

()(1)3

A B A B t R R C t R R C C CC CC U t V e V e -+-+=-+

设1()A B R R C τ=+,则上式简化为

1/2

()(1)3

t C CC U t V e τ-=-

从上式中求得

1111

ln

0.69322

t ττ=-= 一般简写为

10.6932()A B t R R C =+ 电路间歇期2t 就是C 两端电压从23Vcc 充电到1

3

Vcc 所需的时间,即

/2

()3

B t R

C C CC U t V e -=

从上式中求得2t ,并设2B R C τ=,则

2221

ln 0.6932

t ττ=-=

一般简写为

20.693B t R C =

那么电路的振荡周期T 为

12120.693()0.693(2)A B T t t R R C ττ=+=+=+

振荡频率1/f T =,即

1.443/(2)()A B f R R C Hz =+

输出振荡波形的占空比为

1/()/(2)A B A B D t T R R R R ==++

从上面的公式推导,可以得出(1)振荡周期与电源电压无关,而取决于充电和放电的总时间常数,即仅C 、A R 、B R 的值有关。(2)振荡波的占空比与C 的大小无关,而仅与A R 、

R 、L 、C 测量仪

- 9 -

B R 的大小比值有关。

2.3.2 测量电阻的电路模块

图2.3.2是一个由1

2

556时基电路构成的多谐振荡电路,由该电路可以测出量程在100Ω~

1M Ω的电阻。该电路的振荡周期为

12(2)()(2)(2)(2)x x x T t t In R R C In R C In R R C =+=++=+

其中1t 为输出高电平的时间,2t 为输出低电平的时间。则:

1

2(2)x R R In Cf

+=

为了使振荡频率保持在10100kHz 这一段单片机计数的高精度范围内,需选择合适的C 和R 的值。第一个量程选择200,0.22R C uF =Ω=,第二个量程选择

20,1000R k C p F

=Ω=。这样,第一个量程中,100X R =Ω时 61

(2)(2)

1.443

0.2210(200200)16.4X f In C R R kHZ -=

+=

??+≈ 第二个量程中,1X R M =Ω时

9361

(2)(2)

1.443

110(2010210)714X f In C R R kHZ -=

+=

???+?≈

因为RC 振荡的稳定度可达10-3,单片机测频率最多误差一个脉冲,所以用单片机测频率引起的误差在百分之一以下。

在电路中之所以选用可调电位器是因为CD4066的内阻并不清楚,在进行测量之前需要进行校准。把标准电阻插在JP2插接口上,调节电位器,使数码管显示标称阻值。在以后的测量过程中,便可直接测量电阻。利用P1.0(TR1)、P1.1(TR2)口通过软件编程的方法来控制CD4066的改变,实现量程的转换

R 、L 、C 测量仪

- 10 -

图2.3.2 测量电阻的电路

2.4 测X C 的RC 振荡电路

测量电容的振荡电路与测量电阻的振荡电路完全一样。其电路图如图2.4.1所示。 若24R =28R 或者25 R =29 R ,则1

3(ln 2)X

f RC =

两个量程的取值分别为 第一量程:2428R R ==510K Ω 第一量程:2529R R ==10K Ω

其分析过程如测量电阻的方法一样,这里就不在赘述了。

图2.4.1 测量电容的电路

R 、L 、C 测量仪

- 11 -

2.5 测X L 的电容三点式振荡电路

电感的测量是采用电容三点式振荡电路来实现的,如图2.5.1所示。三点式电路是指:LC 回路中与发射极相连的两个电抗元件必须是同性质的,另外一个电抗元件必须为异性质的,而与发射极相连的两个电抗元件同为电容时的三点式电路,成为电容三点式电路。 在这个电容三点式振荡电路中,C 4 C 5分别采用1000pF 、2200pF 的独石电容,其电容值远大于晶体管极间电容,可以把极间电容忽略。 振荡公式:

f =

4545C C C C C =+ 则电感的感抗为

221

4L f C

π=

在测量电感的时候,发现电感起振频率非常的高,大致到达3MHz 左右,而单片机的最大计数频率大约为500KHz ,在频率方面达不到测量电感频率,于是我们把测电感的电容三点式电路得出的频率经过由两片74LS160组成八位计数器作为分频电路对该频率进行分频,有8

3000000211719≈,满足单片机计数要求。

图2.5.1 测量电感的电路

第三章 软件设计

在开始工作的时候,初始化系统,LED 显示0000。

本系统软件设计的主流程图如图3.1所示。对系统初始化之后,判断是否有按键按下。以测电阻为例,测量的电阻经RC 振荡电路转换为频率f ,根据测电阻的换算公式,利用单片机软件编程,测量出其阻值并送显示。如果量程不够大,按下量程转换键转换为大量程,进行测量。

R 、L 、C 测量仪

- 12 -

图3.1 软件设计的主流程图

第四章 系统测试

4.1测试仪器

测试仪器如下表4.1.1。

表4.1.1

4.2指标测试及误差分析

4.2.1 电阻的测量

电阻的一组测量数据如下表4.2.1所示:

表4.2.1

相对误差计算公式

100%R R R -?万仪

从上面的一组数据上来看,在测量低于1 K Ω阻值和接近1M Ω阻值的电阻时,相对误差会大一些。造成这个现象的主要原因是在设计中采用的CD4066(四路模拟开关)的内阻较大,经测量其内阻达到了180Ω左右,这样在测量电阻值小的电阻时,它的内阻就不能忽略,造成测量误差的增大。

R 、L 、C 测量仪

- 13 -

4.2.2 电容的测量

电容的一组测量数据如下表4.2.2所示:

表4.2.2

相对误差计算公式

100%R R R -?万仪

从上面的数据可以看出,电容的标称值与用万用表测出的容值有较大的误差,其可能性原因:一是万用表本身存在着一定误差,二是元件本身也存在一定误差。受所用仪器,元期间的限制,测量精度并没有做的很高。

注意:由于建立RC 稳定振荡的时间较长,在测量电阻和电容时,应在显示稳定后再读出数值。

4.2.3 电感的测量

电感的一组测量数据如下表4.2.3所示:

表4.2.3

第五章 总结

本设计完成题目所给的设计任务,制作了一台数字显示的电阻器、电容器和电感器参数测试仪,满足题目的基本要求和一部分发挥要求。运用单片机作为中央控制器和计算核心,使仪表有性能可靠、体积小、电路简单的特点。但是这种把元件参数转换成频率后测量的方法也有不足之处,主要是必须保证电路起振,并且振荡要稳定,否则会增加误差。总体来说,本次设计是成功的。

参考文献

1 高吉祥.模拟电子技术. 北京:电子工业出版社,2004年

2 高吉祥,黄智伟,丁文霞.数字电子技术. 北京:电子工业出版社,2003年

3 全国大学生电子设计竞赛组委会.第一届(1994年)~第六届(2003年)全国大学生电子设计竞赛题目https://www.doczj.com/doc/781250503.html,.2003.12

4 全国大学生电子设计竞赛组委会. 全国大学生电子设计竞赛获奖作品选编(1999).北京:北京理工大学出版社,2000年

R 、L 、C 测量仪

- 14 -

附 录

附录1 元器件清单

附录2 程序清单

------------------------------------------------------------------------------- 本设计程序由C 语言编写 主程序名: RLCTest.h

程序实现的主要功能:把R 、L 、C 转换的频率,通过编程求出其值,送LED 显示

------------------------------------------------------------------------------- #include #include"RLCTest.h" union count { struct clockTwo { unsigned char clockH; unsigned char clockL; }clockTwo; unsigned int clock; }count; //定义频率字 unsigned char code disdata[16]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e}; unsigned char data dismem[8]; //定义LED 显示频段 -----------------------------------------系统初始化 ------------------------------------- void init(void) { stateR=0;testR=1; stateC=1;testC=0; stateL=1;testL=0; largeR=1;smallR=0; largeC=1;smallC=0; } void delay4us(unsigned int time) { while(--time); } void delay2us(unsigned char time) {

R 、L 、C 测量仪

- 15 -

while(--time); }

void inittime(void) {

TMOD=0x15;//C/T 0 为计数器,用于频率

计数。C/T 1 为定时器。用于动态显示 TH1=0xF8;//timer1=2ms TL1=0x2f; ET1=1; EA=1; TR1=1; TR0=1; ET0=1; ///timer 2 T2CON=0x04; T2MOD=0x00; TH2=0x3C; TL2=0xB0; RCAP2H=0x3C; RCAP2L=0xB0; TR2=1; ET2=1; }

------------------------------------ 按键处理

------------------------------------ void keyprocess(void) {

if (keyR==0) {

delay2us(20); if (keyR==0) { stateR=0;testR=1; stateL=1;testL=0; stateC=1;testC=0; Tstate=1; } while(keyR==0); } else if (keyC==0) { delay2us(20); if (keyC==0)

{ stateR=1;testR=0; stateL=1;testL=0; stateC=0;testC=1; Tstate=1; } while(keyC==0); } else if (keyL==0) { delay2us(20); if (keyL==0) { stateR=1;testR=0; stateL=0;testL=1; stateC=1;testC=0; Tstate=1; } while(keyL==0); } else if (keyT==0) { delay2us(20); if (keyT==0) Tstate=~Tstate; while(keyT==0); } }

------------------------------------- 主函数

------------------------------------- void main() {

unsigned int freq; inittime(); init(); do {

keyprocess(); delay4us(65535); freq=count.clock; //(clockH*256)+clockL; if (stateC==0)

R 、L 、C 测量仪

- 16 -

{ freq=48000/freq; } dismem[0]=freq/10000; freq=freq%10000; dismem[1]=freq/1000; freq=freq%1000; dismem[2]=freq/100; freq=freq%100; dismem[3]=freq/10; freq=freq%10; dismem[4]=freq; }while(1); }

//动态显示

void tim1timer(void) interrupt 3 //占用定时器1 {

static unsigned char inittime=1; //中段次数计数 ET1=0; TH1=0xF8; TL1=0x2f;

switch (inittime) { case

1:ledbitA=0;ledbitB=0;ledbitC=0;ledbitCS=0;ledseg=disdata[dismem [0]];break; case

2:ledbitA=1;ledbitB=0;ledbitC=0;ledbitCS=0;ledseg=disdata[dismem [1]];break; case

3:ledbitA=0;ledbitB=1;ledbitC=0;ledbitCS=0;ledseg=disdata[dismem [2]];break; case

4:ledbitA=1;ledbitB=1;ledbitC=0;ledbitCS=0;ledseg=disdata[dismem [3]];break; case

5:ledbitA=0;ledbitB=0;ledbitC=1;

ledbitCS=0;ledseg=disdata[dismem [4]];break; case

6:ledbitA=1;ledbitB=0;ledbitC=1;ledbitCS=0;ledseg=disdata[dismem [5]];break; case

7:ledbitA=0;ledbitB=1;ledbitC=1;ledbi tCS=0;ledseg=disdata[dismem//timer=2m s [6]];break; default :ledbitA=1;ledbitB=1;led

bitC=1;ledbitCS=0;ledseg=disdata [dismem[7]];inittime =0;break; } ET1=1; TR1=1; inittime++; }

void timer2timer(void) interrupt 5 { EA=0;

TF2=0;//定时器2须由软件清中断标

志位 TR0=0; TR2=0; count.clockTwo.clockH=TH0; count.clockTwo.clockL=TL0; TH0=0; TL0=0; TR2=1; TR0=1; P1_7=~P1_7; EA=1; }

R、L、C测量仪附录3 总体电路图

- 17 -

R、L、C测量仪

附录4 印制板图

- 18 -

R、L、C测量仪

附录5 系统使用说明

- 19 -

简单51单片机开发板的电路设计

一、摘要 本文给出了一个简单51单片机开发板的电路设计,完成了其原理图的绘制和PCB图的制作。着重介绍使用protel99SE画出的电路设计原理图,接着是对电路各个模块功能的分析,然后是电路所用主要芯片和其他重要元件的功能介绍以及内部封装和引脚分布,最后介绍用protel99SE画出的PCB板。此开发板具有串口通信、液晶显示、流水灯、扩展、RTC 时钟、复位、外部中断、外部存储、A/D D/A转换、报警、继电器控制等开发功能。 关键字:51单片机开发板 protel99 PCB 二、实验所用元器件及其介绍 、清单

SW-SPDT1自制封装1KΩ电阻150805 2KΩ电阻50805 三极管90152TO-18 HRS4-S-DC5V继电器1自制封装跳线6 LED110805 9针串口1DB9/M 极性电容10uF1.6 104电容40805 30pF电容50805 电池Battery1自制封装响铃1 n口排针4SIP n 晶振12MHZ1XTAL1 外接晶振1XTAL1 主要芯片引脚图和实物图 STC89C52

图(1) STC89C52引脚图 图(2) STC89C52实物图 8255

图 8255引脚图 DS1302 图(1) DS1302引脚图 表 DS1302引脚描述 引脚号符号描述引脚号符号描述 1VCC2备用电源5复位 2X1晶振引脚6 I/O数据输入/输

24C08 图(1) 24C08引脚图 表 24C08功能表

图(2) 24C08 实物图 MAX232 图(1)MAX232引脚图 表各引脚功能及推荐工作条件

C51单片机和电脑串口通信电路图

C51单片机和电脑串口通信电路图与源码 51单片机有一个全双工的串行通讯口,所以单片机和电脑之间可以方便地进行串口通讯。进行串行通讯时要满足一定的条件,比如电脑的串口是RS232电平的,而单片机的串口是TTL电平的,两者之间必须有一个电平转换电路,我们采用了专用芯片MAX232进行转换,虽然也可以用几个三极管进行模拟转换,但是还是用专用芯片更简单可靠。我们采用了三线制连接串口,也就是说和电脑的9针串口只连接其中的3根线:第5脚的GND、第2脚的RXD、第3脚的TXD。这是最简单的连接方法,但是对我们来说已经足够使用了,电路如下图所示,MAX232的第10脚和单片机的11脚连接,第9脚和单片机的10脚连接,第15脚和单片机的20脚连接。 串口通讯的硬件电路如上图所示 在制作电路前我们先来看看要用的MAX232,这里我们不去具体讨论它,只要知道它是TTL和RS232电平相互转换的芯片和基本的引脚接线功能就行了。通常我会用两个小功率晶体管加少量的电路去替换MAX232,可以省一点,效果也不错,下图就是MAX232的基本接线图。

按图7-3加上MAX232就可以了。这大热天的拿烙铁焊焊,还真的是热气迫人来呀:P串口座用DB9的母头,这样就可以用买来的PC串口延长线进行和电脑相连接,也可以直接接到电脑com口上。

为了能够在电脑端看到单片机发出的数据,我们必须借助一个WINDOWS软件进行观察,这里我们利用一个免费的电脑串口调试软件。本串口软件在本网站https://www.doczj.com/doc/781250503.html,可以找到 软件界面如上图,我们先要设置一下串口通讯的参数,将波特率调整为4800,勾选十六进制显示。串口选择为COM1,当然将网站提供的51单片机实验板的串口也要和电脑的COM1连接,将烧写有以下程序的单片机插入单片机实验板的万能插座中,并接通51单片机实验板的电源。

STC89C51单片机学习电路板设计

设计题目:STC89C51单片机学习电路板设计 题目性质:一般设计 指导教师:[04054]吕青 毕业设计(论文)要求及原始数据(资料) 1.课题简介: STC89C51系列单片机具有功能强、价格低的特点,是51系列单片机最好的替代机型。本题目就是为入门该系列单片机设计一个学习电路板,满足学习该型号单片机的需求。 该学习电路板用于C8051F330单片机的学习。该板具有RS232接口、数码管、发光二极管显示、键盘、模拟量输入、蜂鸣器和具有扩展实验接口。设计原则是简单实用。 2.技术参数 1)使用美国Silabs公司STC89C51单片机 2)具有1个RS232接口 3)具有8个数码管(HC595驱动) 4)具有4个按钮 5)具有1路模拟量电压输入 6)ISP下载接口与下载电缆电路 7)具有蜂鸣器与驱动电路 8)供电:AC220V 9)具有8个LED 10)具有功率接口(具有AC220V,1A驱动能力) 11)具有D/A输出 毕业设计(论文)主要工作内容 主要内容 1)了解市场上的各种单片机学习板,制定设计方案。 2)学习STC89C51单片机的数据手册 3)学习STC89C51 单片机的相关参考书 4)学习PROTEL软件 5)学习板原理图设计 6)电路板(PCB)设计 7)调试电路板 8)熟悉STC89C51 单片机的C编译器与编程软件 9)编写C语言的电路板测试程序 10)编写学习使用说明 学生应交出的设计文件(论文) 1论文。要求内容准确,叙述清晰流畅,图文详尽,正文不少于60页,不得有错别字,并符合学校对论文的各项要求。主要内容包括: 1)学习板总体设计概述; 2)学习板结构设计说明(包括总体结构总框图); 3)学习板原理图设计说明(包括硬件电路原理图,用Protel98se画); 4)学习板硬件电路板设计说明(包括PCB板图); 5)学习板软件程序设计说明(包括程序流程图和源程序清单及注释); 6)学习板主要示例子程序设计说明(包括程序流程图和源程序清单及注释); 7)设计难点和遗留问题(包括设计中遇到的难题和解决方法,以及尚未解决的问题和解决的思路);

单片机电路图详解

单片机:交通灯课程设计(一) 目录 摘要--------------------------------------------------------- 1 1.概述 -------------------------------------------------------- 2 2.硬件设计----------------------------------------------------- 3 2.1单片机及其外围--------------------------------------------3 2.1.1单片机的选择-----------------------------------------3 2.1.2单片机的特点及其应用范围----------------------------- 3 2.1.3存储器的扩展----------------------------------------- 4 2.1.4内存的扩展------------------------------------------- 6 2.1.5MCS-52的I/O接口扩展--------------------------------- 8 2.2电路部分--------------------------------------------------11 2.2.1元器件选用-------------------------------------------11 2.2.2电路完成功能-----------------------------------------13 3.软件设计------------------------------------------------------15 3.1软件概述-------------------------------------------------15 3.2汇编语言指令说明-----------------------------------------16 3.3定时/计数器的原理----------------------------------------16 3.3.1定时/计数器的概述-----------------------------------16 3.3.2 8255A片选及各端口地址-------------------------------18 3.3.3信号控制码------------------------------------------18 3.3.4工作方式寄存器--------------------------------------19 3.3.5定时/计数器初值及定时器T0的工作方式----------------20

51单片机最小系统电路介绍

51单片机最小系统电路介绍 单片机最小系统复位电路的极性电容C1的大小直接影响单片机的复位时间,一般采用10~30uF,51单片机最小系统容值越大需要的复位时间越短。 单片机最小系统晶振Y1也可以采用6MHz或者,在正常工作的情况下可以采用更高频率的晶振,51单片机最小系统晶振的振荡频率直接影响单片机的处理速度,频率越大处理速度越快。 单片机最小系统起振电容C2、C3一般采用15~33pF,并且电容离晶振越近越好,晶振离单片机越近越好 口为开漏输出,作为输出口时需加上拉电阻,阻值一般为10k。其他接口内部有上拉电阻,作为输出口时不需外加上拉电阻。 设置为定时器模式时,加1计数器是对内部机器周期计数(1个机器周期等于12个振荡周期,即计数频率为晶振频率的1/12)。计数值N乘以机器周期Tcy就是定时时间t。 " 设置为计数器模式时,外部事件计数脉冲由T0或T1引脚输入到计数器。在每个机器周期的S5P2期间采样T0、T1引脚电平。当某周期采样到一高电平输入,而下一周期又采样到一低电平时,则计数器加1,更新的计数值在下一个机器周期的S3P1期间装入计数器。由于检测一个从1到0的下降沿需要2个机器周期,因此要求被采样的电平至少要维持一个机器周期。当晶振频率为12MHz时,最高计数频率不超过1/2MHz,即计数脉冲的周期要大于2 ms。 标识符号地址寄存器名称 P3 0B0H I/O口3寄存器 PCON 87H 电源控制及波特率选择寄存器 SCON 98H 串行口控制寄存器 SBUF 99H 串行数据缓冲寄存器 TCON 88H 定时控制寄存器 TMOD 89H 定时器方式选择寄存器 TL0 8AH 定时器0低8位 - TH0 8CH 定时器0高8位 TL1 8BH 定时器1低8位 TH1 8DH 定时器1高8位

51单片机AD89电路设计程序+原理图

AD0809在51单片机中的应用 我们在做一个单片机系统时,常常会遇到这样那样的数据采集,在这些被采集的数据中,大部分可以通过我们的I/O口扩展接口电路直接得到,由于51单片机大部分不带AD转换器,所以模拟量的采集就必须靠A/D或V/F实现。下现我们就来了解一下AD0809与51单片机的接口及其程序设计。 1、AD0809的逻辑结构 ADC0809是8位逐次逼近型A/D转换器。它由一个8路模拟开关、一个地址锁存译码器、一个A/D转换器和一个三态输出锁存器组成(见图1)。多路开关可选通8个模拟通道,允许8路模拟量分时输入,共用A/D转换器进行转换。三态输出锁器用于锁存A/D转换完的数字量,当OE端为高电平时,才可以从三态输出锁存器取走转换完的数据。

2、AD0809的工作原理 IN0-IN7:8条模拟量输入通道 ADC0809对输入模拟量要求:信号单极性,电压围是0-5V,若信号太小,必须进行放大;输入的模拟量在转换过程中应该保持不变,如若模拟量变化太快,则需在输入前增加采样保持电路。 地址输入和控制线:4条 ALE为地址锁存允许输入线,高电平有效。当ALE线为高电平时,地址锁存与译码器将A,B,C三条地址线的地址信号进行锁存,经译码后被选中的通道

的模拟量进转换器进行转换。A,B和C为地址输入线,用于选通IN0-IN7上的一路模拟量输入。通道选择表如下表所示。 C B A 选择的通道 0 0 0 IN0 0 0 1 IN1 0 1 0 IN2 0 1 1 IN3 1 0 0 IN4 1 0 1 IN5 1 1 0 IN6 1 1 1 IN7 数字量输出及控制线:11条 ST为转换启动信号。当ST上跳沿时,所有部寄存器清零;下跳沿时,开始进行A/D转换;在转换期间,ST应保持低电平。EOC为转换结束信号。当EOC为高电平时,表明转换结束;否则,表明正在进行A/D转换。OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。OE=1,输出转换得到的数据;OE=0,输出数据线呈高阻状态。D7-D0为数字量输出线。 CLK为时钟输入信号线。因ADC0809的部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500KHZ, VREF(+),VREF(-)为参考电压输入。

单片机最小系统制作方案(适合初学者)

教学】单片机最小系统制作方案(适合初学者) 在写本单片机教程前,先自我介绍一下,我今年刚28岁,从事单片机教学二年。教学经验不足,写的不好,还请谅解,但是,我一定会尽力的。同时也希望大家能把我当朋友,共同进退。 本人喜欢上网,不喜欢运动,所以比较胖。我很喜欢在房间里做自己想做的事,如做网站,并建有自己的网站:〖教师吧〗:https://www.doczj.com/doc/781250503.html,保证长期有效。QQ是569 43772,E-MAIL:99xsw@https://www.doczj.com/doc/781250503.html, 单片机最小系统制作 一、确定任务 开发单片机最小系统 二、任务分析: 该系统具有的功能: (1)具有2位LED数码管显示功能。 (2)具有八路发光二极管显示各种流水灯。 (3)可以完成各种奏乐,报警等发声音类实验。 (4)具有复位功能。 三、功能分析 (1)两位LED数码管显示功能,我们可以利用单片机的P0口接两个数码管来现这个功能;(2)八路发光二极管显示可以利用P1口接八个发光二极管实现这个功能; (3)各种奏乐、报警等发声功能可以采用P2.0这个引脚接一蜂鸣器来实现。 (4)利用单片机的第9脚可以设计成复位系统,我们采用按键复位;利用单片机的18、19脚可以设计成时钟电路,我们利用单片机的内部振荡方式设计的。 四、设计框图

五、硬件电路设计 根据本系统的功能,和单片机的工作条件,我们设计出下面的电路图。

六、元件清单的确定: 数码管:共阴极2只(分立) 电解电容:10UF的一只 30PF的电容2只 220欧的电阻9只 4.7K的电阻一只 1.2K的电阻一只 4.7K的排阻一只, 12MHZ的晶振一只 有源5V蜂名器一只 AT89S51单片机一片 常开按钮开关1只 紧锁座一只(方便芯取下来的,绿色的) 发光二极管(5MM红色)8只 万能板电路版15*17CM S8550三极管一只 4.5V电池盒一只,导线若干。 七、硬件电路的焊接 按照原理图把上面的元件焊接好,详细步骤省略。 八、相关程序编写 针对上面的电路原理图,设计出本系统的详细功能: (1)、第一个发光二极管点亮,同时数码管显示“1”。 (2)、第二个发光二极管点亮,同时数码管显示“2”。 (3)、依次类推到第八个发光二极管点亮,同时数码管显示“8”。以上出现的是流水灯的效果

51单片机_最小系统免费下载

单片机是一门实践性较强的技术,很多初学者在学习单片机技术开发的时候往往一头雾水,不知何从下手。为此,笔者结合自己使用单片机多年的经验,特意设计了单片机开发所需的Study-c 整机和硬件套件,并结合套件精心编写了单片机从入门到精通系列教程。通过讲述单片机原理、电路设计、应用开发软件工具、编写实验实例让读者全面接触单片机技术。教程编排上由浅入深,循序渐进,内容力求完整、实用、趣味并存,使读者在轻松愉快的学习过程中逐步提高单片机软硬件综合设计水平。 一、内容提要 本讲主要向大家介绍51 系列单片机的最小系统的实现并通过编写程序来实现对单片机IO 口的输出控制。以点亮外部连接的LED(发光二极管)为例,简要的介绍单片机的原理、最小系统的组成,并通过简单的C51 程序设计来讲述编译软件Keil的使用并下载Hex 文件烧写单片机。 二、原理简介 在了解原理之前,首先让我们思考一个问题,什么是单片机,单片机有什么用?这是一个有意思的问题,因为任何人都不能给出一个被大家都认可的概念,那到底什么是单片机呢?普遍来说,单片机又称单片微控制器,是在一块芯片中集成了CPU(中央处理器)、RAM(数据存储器)、ROM(程序存储器)、定时器/ 计数器和多种功能的I/O(输入/ 输出)接口等一台计算机所需要的基本功能部件,从而可以完成复杂的运算、逻辑控制、通信等功能。在这里,我们没必要去找到明确的概念来解析什么是单片机,特别在使用C 语言编写程序的时,不用太多的去了解单片机的内部结构以及运行原理等。从应用的角度来说,通过从简单的程序入手,慢慢的熟悉然后逐步深入精通单片机。 在简单了解了什么是单片机之后,然后我们来构建单片机的最小系统,单片机的最小系统就是让单片机能正常工作并发挥其功能时所必须的组成部分,也可理解为是用最少的元件组成的单片机可以工作的系统。对51 系列单片机来说,最小系统一般应该包括:单片机、时钟电路、复位电路、输入/ 输出设备等(见图1)。 图1 单片机最小系统框图 三、电路详解 依据上文的内容,设计51 系列单片机最小系统见图2。

51单片机的若干电路原理图

51单片机的若干电路原理图 单片机 2007-10-23 20:36:31 阅读198 评论0 字号:大中小订阅 利用下面这些原理图,就可以自己动手做个简单的实验板啦~~~~ 1 外接电源供电电路及电源指示灯 在单片机实训板上为系统设计了一个外接电源供电电路,这个电源电路具备两种电源供电方式:一种是直接采用PC的USB接口5V直流电源给实训板供电,然后在电源电路中加入一个500mA电流限制的自恢复保险丝给PC的USB电源提供了保护的作用;另一种是采用小型直流稳压电源供电,输出的9V直流电源加入到电源电路中,通过LM7805稳压芯片的降压作用,给实训板提供工作所需的5V电源。 如图2.4所示为采用LM7805稳压芯片进行降压供电的电源电路。 图2.4 外接电源供电电路 同时,为了显示外接电源给实训板提供了电源,在系统中增加了电源指示灯电路,如图2.5。 发光二极管工作在正常工作状态时,流过LED的电流只需要5~10mA左右就行,在电路中采用白发红高亮LED,所以可以取5mA左右

的电流值,通过计算,可知:连接LED的限流电阻的阻值可以采用680Ω。 图2.5 电源指示灯电路 2 系统复位电路 复位是单片机的初始化操作,只要给RESET引脚加上2个机器周期以上的高电平信号,即可使单片机复位。除了进入系统的正常初始化之外,当程序运行出错或是操作错误使系统处于死锁状态时,为了摆脱死锁状态,也需要按复位键重新复位。 在系统中,为了实现上述的两项功能,采用常用的按键电平复位电路,如图2.6所示。 2.6 按键电平复位电路 从途中可以看出,当系统得到工作电压的时候,复位电路工作在上电自动复位状态,通过外部复位电路的电容充电来实现,只要Vcc

基于51单片机的液晶显示器控制电路设计_本科论文

XXXXXXX 毕业设计 题目GPRS无限通讯数据系统的设计与应用姓名xxx 学号xxx 专业班级xxx 分院xxx

指导教师xxx xxxx年xxx月xxx日

目录 摘要............................................... 错误!未定义书签。ABSTRACT........................................................... I I 第一章概述 (1) §1.1系统背景 (1) §1.2 系统概述 (2) 第二章方案论证 (3) §2.1字模数据的存储 (3) §2.2 通信电路 (3) 第三章液晶显示模块简介 (4) §3.1 显示控制器 (5) §3.2 列驱动方式 (10) §3.3 行驱动方式 (11) 第四章硬件设计 (13) §4.1硬件电路设计要求 (13) §4.2 总体电路设计构架 (13) §4.3 单片机与液晶显示模块接口 (13) §4.4 单片机与计算机的通信接口 (14) §4.5 电源电路 (15) 第五章系统软件设计 (15) §5.1 内置T6963C控制器软件特性 (15) §5.2初始化子程序设计 (19) §5.3 串行通信子程序设计 (20) §5.4 显示控制子程序设计 (21) 第六章系统调试 (22) §6.1 分步调试 (22) §6.2 系统统一调试 (23) 结束语 (24) 附录 (25)

参考文献 (30) 致谢............................................. 错误!未定义书签。

单片机-最小系统原理解析

单片机-最小系统原理解析

单 片 机 最 小 系 统原 理

一、题目:单片机最小系统 二、引言: 由于单片机技术在各个领域正得到越来越广泛的应用,世界上许多集成电路生产厂家相继推出了各种类型的单片机,在单片机家族的众多成员中,MCS-51系列单片机以其优越的性能、成熟的技术及高可靠性和高性能价格比,迅速占领了工业测控和自动化工程应用的主要市场,成为国内单片机应用领域中的主流。目前,可用于MCS-51系列单片机开发的硬件越来越多,与其配套的各类开发系统、各种软件也日趋完善,因此,可以极方便地利用现有资源,开发出用于不同目的的各类应用系统。 单片机最小系统是在以MCS-51单片机为

基础上扩展,使其能更方便地运用于测试系统中,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被测试的技术指标,从而能够大大提高产品的质量和数量。单片机以其功能强、体积小、可靠性高、造价低和开发周期短等优点,称为在实时检测和自动控制领域中广泛应用的器件,在工业生产中称为必不可少的器件,尤其是在日常生活中发挥的作用也越来越大。本课题设计主要在MCS-51单片机上扩展I/O口,扩展定时器定时范围,扩展键盘显示接口。适合于我们学生用于单片机的学习掌握和一些各种科研立项等的需求。因此,研究单片机最小系统有很大的实用意义。 三、关键字: DevKit MCS51 Lite 、AT89S51、AD/DA、RS232串口、串行EEPROM存储器、蜂鸣 器、独立按键、LED、8段数码管。 四、目的要求 4.1 目的: 通过对单片机最小系统的研究,掌握单片机各引脚功能,理解单片机工作过程及原理,以及与各种外部扩展器件的连接,能够自己运

电子时钟基于AT89c51单片机设计电路图及程序

电子时钟基于AT89c51单片机的设计 电子时钟原理图 开机显示仿真图: 当按下仿真键时电子时钟开机页面显示第一行显示JD12102Class--16,第二行显示动态TINE:12:00:04。 电子时钟调时间仿真图:当按下K1为1次时,光标直接跳到电子时钟的秒,可以按下K2进行调节。 当按下K1为2次时,光标直接跳到电子时钟的分,可以按下K2进行调节。 当按下K1为3次时,光标直接跳到电子时钟的时,可以按下K2进行调节。 当按下K1为4次时,光标直接跳完,电子时钟可以进行正常计时。 电子时钟闹钟调节仿真:当按下K3为1次时,直接跳到闹钟显示界面00:00:00,按下K2可以对闹钟的秒进行调节。 当按下K3为2次时,可以调到分,按下K2可以对闹钟的分进行调节。 当按下K3为3次时,可以调到时,按下K2可以对闹钟的时进行调节。 当按下K3为4次时,直接跳到计时界面,对闹钟进行到计时,时间到可以发出滴滴声。

#include<> #define uchar unsigned char //预定义一下 #define uint unsigned int uchar table[]="JD12102Class--21"; //显示内容 sbit lcden=P3^4; //寄存器EN片选引脚 sbit lcdrs=P3^5; //寄存器RS选择引脚 sbit beep=P3^6; //接蜂鸣器 extern void key1(); extern void key2(); extern void key3(); uchar num,hour=12,minite,second,ahour,aminite,asecond,a,F_k1,F_k2,F_k3; //定义变量 void delay(uint z) //延时 { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } void write_com(uchar com) { lcdrs=0; P0=com; //送出指令,写指令时序 delay(5); lcden=1; delay(5); lcden=0; } void write_data(uchar date) { lcdrs=1; P0=date; //送出数据,写指令程序 delay(5); lcden=1; delay(5); lcden=0; }

单片机电路图详解

单片机:交通灯课程设计(一)(2007-04-21 13:28:54) 目录 摘要--------------------------------------------------------- 1 1.概述 -------------------------------------------------------- 2 2.硬件设计----------------------------------------------------- 3 2.1单片机及其外围--------------------------------------------3 2.1.1单片机的选择-----------------------------------------3 2.1.2单片机的特点及其应用范围----------------------------- 3 2.1.3存储器的扩展----------------------------------------- 4 2.1.4内存的扩展------------------------------------------- 6 2.1.5MCS-52的I/O接口扩展--------------------------------- 8 2.2电路部分--------------------------------------------------11 2.2.1元器件选用-------------------------------------------11 2.2.2电路完成功能-----------------------------------------13 3.软件设计------------------------------------------------------15 3.1软件概述-------------------------------------------------15 3.2汇编语言指令说明-----------------------------------------16 3.3定时/计数器的原理----------------------------------------16 3.3.1定时/计数器的概述-----------------------------------16 3.3.2 8255A片选及各端口地址-------------------------------18 3.3.3信号控制码------------------------------------------18 3.3.4工作方式寄存器--------------------------------------19 3.3.5定时/计数器初值及定时器T0的工作方式----------------20

FPGA和外围51单片机的通信

1 单片机与FPGA的接口方式 单片机与FPGA的接口方式一般有两种,即总线方式与独立方式。MCS-51单片机具有很强的外部总线扩展能力,利用片外三总线结构很容易实现单片机与FPGA的总线接口,而且单片机以总线方式与FPGA进行数据与控制信息通信也有许多优点:速度快;节省PLD芯片的I/O口线;相对于非总线方式,单片机编程简捷,控制可靠;在FPGA中通过逻辑切换,单片机易于与SRAM或ROM接口。 单片机与FPGA以总线方式通信的逻辑设计,重要的是要详细了解单片机的总线读写时序,根据时序图来设计逻辑结构,其通信的时序必须遵循单片机内固定的总线方式读/写时序。FPGA的逻辑设计也相对比较复杂,在程序设计上必须与接口的单片机程序相结合,严格安排单片机能访问的I/O空间。单片机以总线方式与FPGA 进行数据通信与控制时,其通信工作时序是纯硬件行为,速度要比前一种方式快得多,另外若在FPGA内部设置足够的译码输出,单片机就可以仅通过19根I/O线在FPGA与单片机之间进行通信和控制信息交换,这样可以节省FPGA芯片的I/O线。其原理图如图1所示。 2 总线接口逻辑设计 2.1 接口设计思想 单片机与CPLD/FPC,A以总线方式通信的逻辑设计,重要的是要详细了解单片机的总线读写时序,根据时序图来设计逻辑结构。MCS-51系列单片机的时序图如图2所示。

ALE为地址锁存使能信号,可利用其下降沿将低8位地址锁存于FPGA中的地址锁存器(LATCH_ADDRES)中;当ALE将低8位地址通过P0锁存的同时,高8位地址已稳定建立于P2口,单片机利用读指令允许信号PSEN的低电平从外部ROM中将指令从P0口读入,由时序图可见,其指令读入的时机是在PSEN的上升沿之前。接下来,由P2口和P0口分别输出高8位和低8位数据地址,并由ALE的下降沿将P0口的低8位地址锁存于地址锁存器。若需从FPGA中读出数据,单片机则通过指令“MOVXA,@DPTR”使RD信号为低电平,由P0口将锁存器中的数据读入累加器A;但若欲将累加器A的数据写进FPGA,则需通过指令“MOVx DPTR,A”和写允许信号WR。这时,DPTR中的高8位和低8位数据作为高、低8位地址分别向P2和P0口输出,然后由WR的低电平并结合译码,将累加器A的数据写入图中相关的锁存器。 通过对MCS-51单片机总线读/写时序的分析,设计了图3所示的接口电路。在FPGA中,设计了两个模块:一个是总线接口模块,负责单片机与FPGA的总线接口逻辑;另一个是寄存器单元及外部接口模块,运用总线接口模块来操作此模块。 在总线应用时,MCS-51单片机的P0口是作为地址/数据总线分时复用的,因此应在总线接口模块中设计一个三态缓冲器,实现P0口的三态接口;又因MCS-51单片机在访问外部空间时,它的地址为16位,因此借助地址锁存使能信号ALE在FPGA中实现高8位与低8位地址的编码,组合成16位地址,然后再根据MCS-51单片机的读/写信号,实现对FPGA的读写操作。 在接口设计中,采用了VHDL语言实现其接口逻辑。用VHDL语言编写,往往比较方便和严谨,注意整个过程的逻辑思路,并且尽量避免语言的冗余,造成比较长的延时。-MCS-51单片机与FPGA的通信读写电路的部分程序

51单片机数码管时钟电路的设计-AT89C51

广东石油化工学院 《51单片机原理与实践》课程设计报告 学院计算机与电子信息学院 专业 班级 学号 姓名 指导教师 课程成绩 完成日期 2010年12月27日

数码管时钟电路的设计 一、设计目的: 通过这次课程设计掌握单片机系统的基本设计步骤及设计思路,掌握汇编语言的用法及各种指令的含义,比较熟练的运用指令进行单片机系统的设计的,熟悉用KEIL软件进行汇编语言的汇编,以及把代码写入实验板中,观测代码结合实际的运行结果后进行调整,体会到编程的分析问题、确定算法、画程序流程图、编写程序、程序功能模块化的优点的各各步骤。 二、设计要求: LED数码管时钟电路采用24h计时方式,时、分、秒用六位数码管显示。该电路采用AT89C2051单片机,使用3V电池供电,只使用一个按键开关即可进入调时、省电(不显示LED数码管)和正常显示三种状态。 三、设计实验内容: 1. 硬件的设计 其采用AT89C51单片机应用设计,LED显示采用动态扫描方式实现,P0口输出段码数据,P2口输出位码数据,P1.1、P1.2接按钮开关。为了提供LED数码管的驱动电流,采用6MHz晶振。 2. 系统总体分析 系统主要包含四大模块:显示模块、时间计时模块、模式切换模块和模式设置模块。

●显示模块:主要由主循环负责。内存中开辟了一段8字节的内存空间, 用作数据显示的字符缓冲区。主循环不断将缓冲区中的字符呈现至数码管。 ●时间计时模块:电子钟的核心模块,记录了时间的时、分、秒信息。 ●模式切换模块(MODE):切换电子钟的设置模式,包括时设置、分设置、 秒设置、闹铃开关设置、闹铃时设置和闹铃分设置。相关数据被设置时将闪烁显示。 ●模式设置模块(CONFIG):通过判断设置模式(MODE),执行相应的设置。 如时、分、秒的增1以及闹铃开关的变换。 另外,主循环还负责扫描键盘,检测相应键是否被按下,若MODE键被按下则在特定单元中登记该功能,并启动定时器1,然后返回继续执行显示功能。在定时器1中断时,被登记的功能正式执行。期间用时约10ms,用以消除机械抖动。 主循环流程图大致如下: 图(一)主循环流程图 定时器1中断服务程序流程图如下:

51单片机最小系统板

51单片机最小系统1.设计框图 2.硬件电路设计

3.元件清单 共阴极数码管2只(分立) 10UF电解电容2只(限压16V)30PF瓷片电容2只 220欧的电阻9只 4.7K的电阻1只 1.2K的电阻1只 4.7K的排阻1只 12MHZ的晶振1只 S8550三极管1只 单排针2排 自锁小按键1只 蜂名器1只(长音) STC89C51单片机1片 常开按钮开关1只(轻触开关)40引脚紧锁座或40引脚芯片插槽1只(前者方便单片机取下来的,但价格较贵;后者便宜,不便于拔插) 发光二极管(5MM红色)10只 电路板1张(单孔锡板,带九针串口座的焊盘) USB转串口线1根(笔记本电脑必买、台式电脑选买) USB头一个(如下一页实物图所示)双头USB线1根(两头都能插入USB 头里面) 细导线2米(单芯、铁线) 2CM铜柱8根(一头凸起,一头凹下)

104瓷片电容5片 MAX232芯片1片 串口头1个(母头、9孔式) 串口线1根(一端9孔、一端9针)****蓝色器件为台式电脑用**** 注意:有的元器件(如电阻、瓷片电容等)非常便宜,一般按10个为单位买,否则别人不卖。必备工具:万用表、电烙铁、焊锡丝、松香、吸锡器、斜口钳、镊子 相关软件:Protel 99 SE、Keil 3、单片机烧录软件 4.下载电路 STC89C52 1、电源:这当然是必不可少的了。单片机使用的是5V电源,其中正极接40引脚,负极(地)接20引脚。 2、振荡电路:单片机是一种时序电路,必须提供脉冲信号才能正常工作,在单片机内部已集成了振荡器,使用晶体振荡器,接18、19脚。只要买来晶振,电容,连上就可以了。 3、复位(RST,第9引脚):至于复位是何含义及为何需要复位,在单片机功能中介绍。 4、EA(31引脚):EA引脚接到正电源端。至此,一个单片机就接好,通上电,单片机就开始工作了。 5、P1口发光管电路:P1.0-P1.7(第1-8引脚)连接到8个470欧电阻驱动8个发光管。 6、单片机引脚控制连接:两排单排插连接单片机40个引脚,方便以后扩展或测试各引脚。 7、在线编程下载接口:用一个5X2(长为5的双排插)连接电源VCC、GND、P1.5(第6脚)、P1.6(第7脚)、P1.7(第8脚)和RST(第9脚),然后通过在线编程下载模块连接到电脑的并口,运行Keil编程软件可以实现在线编程和仿真,边改程序边调试电路(观看发光管的表演,当然导演就是大家自己!)

#51单片机数码管时钟电路的设计_AT89C51

广东石油化工学院 《51单片机原理和实践》课程设计报告学院计算机和电子信息学院 专业 班级 学号 姓名 指导教师 课程成绩 完成日期 2010年12月27日 数码管时钟电路的设计 一、设计目的: 通过这次课程设计掌握单片机系统的基本设计步骤及设计思路,掌握汇编语言的用法及各种指令的含义,比较熟练的运用指令进行单片机系统的设计的,熟悉用KEIL软件进行汇编语言的汇编,以及把代码写入实验板中,观测代码结合实际的运行结果后进行调整,体会到编程的分析问题、确定算法、画程序流程图、编写程序、程序功能模块化的优点的各各步骤。 二、设计要求: LED数码管时钟电路采用24h计时方式,时、分、秒用六位数码管显示。该电路采用AT89C2051单片机,使用3V电池供电,只使用一个按键开关即可进入调时、省电(不显示LED数码管)和正常显示三种状态。

三、设计实验内容: 1. 硬件的设计 其采用AT89C51单片机使用设计,LED显示采用动态扫描方式实现,P0口输出段码数据,P2口输出位码数据,P1.1、P1.2接按钮开关。为了提供LED数码管的驱动电流,采用6MHz晶振。 2. 系统总体分析 系统主要包含四大模块:显示模块、时间计时模块、模式切换模块和模式设置模块。 ●显示模块:主要由主循环负责。内存中开辟了一段8字节的内存空间, 用作数据显示的字符缓冲区。主循环不断将缓冲区中的字符呈现至数码管。 ●时间计时模块:电子钟的核心模块,记录了时间的时、分、秒信息。 ●模式切换模块(MODE):切换电子钟的设置模式,包括时设置、分设 置、秒设置、闹铃开关设置、闹铃时设置和闹铃分设置。相关数据被设置时将闪烁显示。 ●模式设置模块(CONFIG):通过判断设置模式(MODE),执行相应的 设置。如时、分、秒的增1以及闹铃开关的变换。 另外,主循环还负责扫描键盘,检测相应键是否被按下,若MODE键被按下则在特定单元中登记该功能,并启动定时器1,然后返回继续执行显示功能。在定时器1中断时,被登记的功能正式执行。期间用时约10ms,用以消除机械抖动。 主循环流程图大致如下:

51单片机最小设计系统与电源电路

单片机最小系统介绍 单片机最小系统主要由电源、复位、振荡电路以及扩展部分等部分组成。最小系统原理图如图4.1所示。 图4.1最小系统电路图 电源供电模块 图4.1.1 电源模块电路图 对于一个完整的电子设计来讲,首要问题就是为整个系统提供电源供电模块,电源模块的稳定可靠是系统平稳运行的前提和基础。51单片机虽然使用时间最早、应用范围最广,但是在实际使用过程中,一个和典型的问题就是相比其他系列的单片机,51单片机更容易受到干扰而出现程序跑飞的现象,克服这种现象出现的一个重要手段就是为单片机系统配置一个稳定可靠的电源供电模块。 复位电路

图4.1.2 复位电路图 单片机的置位和复位,都是为了把电路初始化到一个确定的状态,一般来说,单片机复位电路作用是把一个例如状态机初始化到空状态,而在单片机内部,复位的时候单片机是把一些寄存器以及存储设备装入厂商预设的一个值。 单片机复位电路原理是在单片机的复位引脚RST上外接电阻和电容,实现上电复位。当复位电平持续两个机器周期以上时复位有效。复位电平的持续时间必须大于单片机的两个机器周期。具体数值可以由RC电路计算出时间常数。 复位电路由按键复位和上电复位两部分组成。 (1)上电复位:STC89系列单片及为高电平复位,通常在复位引脚RST上连接一个电容到VCC,再连接一个电阻到GND,由此形成一个RC充放电回路保证单片机在上电时RST脚上有足够时间的高电平进行复位,随后回归到低电平进入正常工作状态,这个电阻和电容的典型值为10K和10uF。 (2)按键复位:按键复位就是在复位电容上并联一个开关,当开关按下时电容被放电、RST也被拉到高电平,而且由于电容的充电,会保持一段时间的高电平来使单片机复位。 单片机系统里都有晶振,在单片机系统里晶振作用非常大,全程叫晶体振荡器,他结合单片机内部电路产生单片机所需的时钟频率,单片机晶振提供的时钟频率越高,那么单片机运行速度就越快,单片接的一切指令的执行都是建立在单片机晶振提供的时钟频率。 在通常工作条件下,普通的晶振频率绝对精度可达百万分之五十。高级的精度更高。有些晶振还可以由外加电压在一定范围内调整频率,称为压控振荡器(VCO)。晶振用一种能把电能和机械能相互转化的晶体在共振的状态下工作,以提供稳定,精确的单频振荡。 单片机晶振的作用是为系统提供基本的时钟信号。通常一个系统共用一个晶振,便于各部分保持同步。有些通讯系统的基频和射频使用不同的晶振,而通过电子调整频率的方法保持同步。 晶振通常与锁相环电路配合使用,以提供系统所需的时钟频率。如果不同子系统需要不同频率的时钟信号,可以用与同一个晶振相连的不同锁相环来提供。 STC89C51使用11.0592MHz的晶体振荡器作为振荡源,由于单片机内部带有振荡电路,所以外部只要连接一个晶振和两个电容即可,电容容量一般在15pF至50pF之间。

基于51单片机的信号发生器 完整电路程序

基于51单片机的低频信号发生器设计 曹晖 0945531215 电子信息工程二班 摘要 本文以STC89C51单片机为核心设计了一个低频函数信号发生器。信号发生器采用数字波形合成技术,通过硬件电路和软件程序相 结合,可输出自定义波形,如正弦波、方波、三角波、三角波、梯 形波及其他任意波形,波形的频率和幅度在一定范围内可任意改变。波形和频率的改变通过软件控制,幅度的改变通过硬件实现。本文介绍了波形的生成原理、硬件电路和软件部分的设计原理。本系统可以产生最高频率798.6HZ的波形。该信号发生器具有体积小、价格低、性能稳定、功能齐全的优点。 关键词:低频信号发生器;单片机;D /A转换;

1 1.设计任务 1.设计题目:基于51单片机的信号发生器的设计与实现 2.任务与要求: 设计一个由单片机控制的信号发生器。运用单片机系统控制产生多种波形,这些波形包括方波、三角波、锯齿波、正弦波等。信号发生器所产生的波形的频率、幅度均可调节。并可通过软件任意改变信号的波形。 3.基本要求: 1).产生三种以上波形。如正弦波、三角波、矩形波等。 2).最大频率不低于500Hz。并且频率可按一定规律调节,如周期按1T,2T,3T,4T 或1T,2T,4T,8T变化。 3).幅度可调,峰峰值在0——5V之间变化。 2.系统概述 2.1设计方案 2.1.1总体方案: 采用AT89C51单片机和DAC0832数模转换器生成波形,加上一个低通滤波器,生成的波形比较纯净。它的特点是可产生任意波形,频率容易调节,频率能达到设计的500HZ以上。性能高,在低频范围内稳定性好、操作方便、体积小、耗电少。既可满足基本要求又能充分发挥其优势,电路简单,易控制,性价比高,所以采用该方案. 2.1.2改变幅度方案: 将输出电压通过一个运算放大器的放大。这样还有个优点是幅度连续可调。既可满足基本要求,并且电路也挺简单。 2.2工作原理 数字信号可以通过数/模转换器转换成模拟信号,因此可通过产生数字信号再转换成模拟信号的方法来获得所需要的波形。89C51单片机本身就是一个完整的微型计算机,具有组成微型计算机的各部分部件:中央处理器CPU、随机存取存储器RAM、只读存储器ROM、I/O接口电路、定时器/计数器以及串行通讯接口等,只要将89C51再配置键盘及、数模转换及波形输出、放大电路等部分,即可构成所需的波形发生器,其信号发生器构成如下图所示。系统框图

相关主题
文本预览
相关文档 最新文档