8通道的数字电压表设计报告

合集下载

单片机课程设计报告报告——数字电压表

单片机课程设计报告报告——数字电压表

数字电压表单片机课程设计报告班级:姓名:学号:指导教师:2011 年3 月29 日数字电压表电路设计报告一、题目及设计要求采用51系列单片机和ADC 设计一个数字电压表,输入为0~5V 线性模拟信号,输出通过LED 显示,要求显示两位小数。

二、主要技术指标1、数字芯片A/D 转换技术2、单片机控制的数码管显示技术3、单片机的数据处理技术三、方案论证及选择主要设计方框图如下:1、主控芯片方案1:选用专用转化芯片INC7107实现电压的测量和实现,用四位数码管显示出最后的转换电压结果。

缺点是京都比拟低,内部电压转换和控制局部不可控制。

优点是价格低廉。

方案2:选用单片机AT89C51和A/D 转换芯片ADC0809实现电压的转换和控制,用四位数码管显示出最后的转换电压结果。

缺点是价格稍贵;优点是转换京都高,且转换的过程和控制、显示局部可以控制。

基于课程设计的要求和实验室能提供的芯片,我选用了:方案2。

2、显示局部方案1:选用4个单体的共阴极数码管。

优点是价格比拟廉价;缺点是焊接时比拟麻烦,容易出错。

方案2:选用一个四联的共阴极数码管,外加四个三极管驱动。

这个电路几乎没有缺点;优点是便于控制,价格低廉,焊接简单。

基于课程设计的要求和实验室所能提供的仪器,我选用了:方案2。

四、电路设计原理模拟电压经过档位切换到不同的分压电路筛减后,经隔离干扰送到A/D转换器进展A/D转换。

然后送到单片机中进展数据处理。

处理后的数据送到LED 中显示。

同时通过串行通讯与上位通信。

硬件电路及软件程序。

而硬件电路又大体可分为A/D转换电路、LED显示电路,各局部电路的设计及原理将会在硬件电路设计局部详细介绍;程序的设计使用汇编语言编程,利用Keil和PROTEUS 软件对其编译和仿真。

一般I/O接口芯片的驱动能力是很有限的,在LED显示器接口电路中,输出口所能提供的驱动电流一般是不够的尤其是设计中需要用到多位LED,此时就需要增加LED驱动电路。

单片机应用技术课程报告——数字电压表的设计

单片机应用技术课程报告——数字电压表的设计

单片机应用技术课程报告
5、软件程序设计
(1)、程序设计思路
2)性能指标测试及结果分析
本设计以8051单片机为控制核心,通过集成摸数转换芯片ADC0809将被测信号转换成数字信号,经单片机内部程序处理后,由LED八段数码管显示测量结果。

仿真测试表明,系统性能良好,测量读数稳定易读、更新速度合理,直流电压测量范围为0~5V,最小分辨率为0.02V,满足任务书指标要求。

但是,该系统也存在定程度的不足,例如:
1、若能将测量的电压值实时保存,使用时将更方便。

2、ADC0809可实现对8个通道的输入信号轮流转换,本设计仅仅使用了其中一个通道,造成了较大的资源浪费。

若能对电路稍加改进,实现对多路信号的轮流测量并自动保存相应结果,其应用价值将会更大。

数字电压表实验报告

数字电压表实验报告

简易数字电压表设计报告姓名:***班级:自动化1202学号:****************:***2014年11月26日一.设计题目采用C8051F360单片机最小系统设计一个简易数字电压表,实现对0~3.3V 直流电压的测量。

二.设计原理模拟输入电压通过实验板PR3电位器产生,A/D转换器将模拟电压转换成数字量,并用十进制的形式在LCD上显示。

用一根杜邦实验线将J8口的0~3.3V输出插针与J7口的P2.0插针相连。

注意A/D转换器模拟输入电压的范围取决于其所选择的参考电压,如果A/D 转换器选择内部参考电压源,其模拟电压的范围0~2.4V,如果选择外部电源作为参考电压,则其模拟输入电压范围为0~3.3V。

原理框图如图1所示。

图1 简易数字电压表实验原理框图三.设计方案1.设计流程图如图2所示。

图2 简易数字电压表设计A/D转换和计时流程图2.实验板连接图如图3所示。

图3 简易数字电压表设计实验板接线图3.设计步骤(1)编写C8051F360和LCD初始化程序。

(2)AD转换方式选用逐次逼近型,A/D转换完成后得到10位数据的高低字节分别存放在寄存器ADCOH和ADC0L中,此处选择右对齐,转换时针为2MH Z。

(3)选择内部参考电压2.4V为基准电压(在实际单片机调试中改为3.311V),正端接P2.0,负端接地。

四、测试结果在0V~3.3V中取10组测试数据,每组间隔约为0.3V左右,实验数据如表1所示:显示电压(V)0.206 0.504 0.805 1.054 1.406实际电压(v)0.210 0.510 0.812 1.061 1.414相对误差(%) 1.905 1.176 0.862 0.659 0.565显示电压(V) 2.050 2.383 2.652 2.935 3.246实际电压(v) 2.061 2.391 2.660 2.943 3.253相对误差(%)0.421 0.334 0.301 0.272 0.215表1 简易数字电压表设计实验数据(注:其中显示电压指LCD显示值,实际电压指高精度电压表测量值)五.设计结论1.LCD显示模块的CPLD部分由FPGA充当,芯片本身自带程序,所以这个部分不用再通过quartus软件进行编程。

简易数字电压表设计内容

简易数字电压表设计内容

简易数字电压表设计一、设计要求1、利用ADC0809设计一简易数字电压表,要求可以测量0—5V之间8路输入电压值、电压值由四位LED数码管显示,并在数码管上轮流显示或单路选择显示;2、测量最小分辨率为0.019V,测量误差为±0.02V。

二、设计作用与目的利用AT89S51与ADC0809设计制作一个数字表,能够测量直流电压值。

三、所用设备及软件单片机AT89S51、ADC0809芯片、PC设计台四、系统设计方案本设计采用AT89S51单片机芯片配合ADC0809模/数转换芯片构成一个简易的数字电压表,原理框图如图1所示。

该电路通过ADC0809芯片采样输入口IN0输入的0~5 V的模拟量电压,经过模/数转换后,产生相应的数字量经过其输出通道D0~D7传送给AT89S51芯片的P0口。

AT89S51负责把接收到的数字量经过数据处理,产生正确的7段数码管的显示段码,并通过其P1口经三极管驱动,再传送给数码管。

同时它还通过其三位I/O口P3.0、P3.1、P3.2产生位选信号,控制数码管的亮灭。

另外,AT89S51还控制着ADC0809的工作。

其ALE管脚为ADC0809提供了1MHz工作的时钟脉冲;P2.3控制ADC0809的地址锁存端(ALE);P2.4控制ADC0809的启动端(START);P2.5控制ADC0809的输出允许端(OE);P3.7控制ADC0809的转换结束信号(EOC)。

图1 系统原理框图本设计与其它方法实现主要区别在于元器件上例如:AT89C51与AT89C51、AT89S51在AT89C51的基础上,又增加了许多功能,性能有了较大提升。

1.ISP在线编程功能,这个功能的优势在于改写单片机存储器内的程序不需要把芯片从工作环境中剥离。

是一个强大易用的功能。

2.工作频率为33MHz,大家都知道89C51的极限工作频率只有24M,就是说S51具有更高工作频率,从而具有了更快的计算速度。

单片机课程设计报告数字电压表

单片机课程设计报告数字电压表

单片机课程设课题名称:数字电压表课程原理:1、模数转换原理:试验中,我们选用ADC0809作为模数转换的芯片,其为逐次逼近式AD转换式芯片,其工作时需要一个稳定的时钟输入,根据查找资料,得到ADC0809的时钟频率在10KHZ~1200KHZ,我们选择典型值640KHZ。

课题要求测量电压范围是0到5V,又ADC0809的要求:V ref+<=Vcc,V ref->=GND,故我们取V ref+=+5V,V ref-=0V。

由于ADC0809有8个输入通道可供选择,我们选择IN0通道,直接使ADC0809的A、B、C接地便可以了,在当ADC0809启动时ALE引脚电平正跳变时变可以锁存A、B、C 上的地址信息。

ADC0809可以将从IN0得到的模拟数据转换为相应的二进制数,由于ADC0809输出为8位的二进制数,转换时将0到5V分为255等分,所以我们可以得到转换公式为x/255*5化简为:x/51,x为得到的模拟数据量,也就是直接得到的电压量。

在AD转换完成后,ADC0809将在EOC引脚上产生一个8倍于自身时钟周期的正脉冲,以此来作为转换结束的标志。

然后当OE引脚上产生高电平时,ADC0809将允许转换完的二进制数据输出。

2、数据处理原理:由ADC0809的转换原理可以知道我们从其得到数据还只是二进制数据,我们还需要进一步处理来的到x的十进制数,并且对其进行精度处理,也就是课题要求的的精确到小数点后两位,在这里我们用51单片机对数据进行处理。

我们处理数据的思路是:首先将得到的二进制数直接除以十进制数51,然后取整为x的整数部分,然后就是将得到的余数乘以10,然后再除以51,再取整为x的十分位,最后将得到的余数除以5得到x的百分位。

3、数据显示原理:试验中我们用到四位一体的七段数码管,所以我们只能考扫描显示来完成数码管对x的显示,我们用的是四位数码显示管,但是x只是三位的,故我们将将第四位显示为单位U,通过程序的延时,实现四位数码管的稳定显示。

8路数字电压表的设计

8路数字电压表的设计

一、实验题目:8路数字电压表的设计二、实验内容:利用单片机AT89C52与ADC0809设计一个8路数字电压表,能够测量0-5V之间的8路输入电压值,并能在四位数码管上显示。

三、要求:基本要求:1、有一路正常工作2、制作PCB板发挥部分:1、显示各路电压数及其电压值2、可通过按键进行通道选择3、当超过某一设定值时报警四、设计方案通过一个A/D(ADC0809模拟数字转换)芯片采集后将外测电压信号转换为数字信号,再由单片机(AT89C52)处理信号,输出信号,由数码管显示各路电压。

更改程序使能用按键进行复位、通道选择、单路循环选择;并在超过设定报警电压(4.7V)时以LED灯发光报警。

五、芯片、电路图1、使用芯片有ADC0809、AT89C52。

2、电路图:六、焊接根据原理图将原件焊接到PCB板上。

七、编程序、调试1、程序设计内容<1>由于ADC0809在进行A/D转换时需要有CLK信号,而此时的ADC0809的CLK 是接在AT89S51单片机的P3.3端口上,也就是要求从P3.3输出CLK信号供ADC0809使用。

因此产生CLK信号的方法就得用软件来产生了。

<2>由于ADC0809的参考电压VREF=VCC,所以转换之后的数据要经过数据处理,在数码管上显示出电压值。

实际显示的电压值(D/256*VREF)2、调试过程<1>在实验过程中,发现了数码管显示的电压在测试的那一路电压正常显示,而其他路为不定的电压值(电压为悬浮电压),加一个排阻接地后使它和低电平相连,在未加电压的情况下为低电平,数码管显示值为0值。

<2>用原程序进行调试时,不执行报警和通道选择、单路循环选择(原程序少了通道选择函数和报警函数)。

多次修改和添加原程序后能够达到要求。

3、C语言源程序#include <reg52.h>#include <intrins.h> //延时函数用#define ad_con P2 //A/D控制口#define addata P0 //A/D数据记入读入口#define Disdata P1 //显示数据段码输出口#define uchar unsigned char#define uint unsigned intsbit ALE=P2^3; //锁存地址控制位sbit START=P2^4; //启动一次转换位sbit OE=P2^5; //0809输出数据控制位sbit EOC=P3^7; //转换结束标志位sbit DISX=Disdata^7; //LED小数点sbit A=P2^7;sbit BO=P3^5;sbit CO=P3^6;////uchar code dis_7[11]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xff};/*共阳7段LED段码表0.1.2.3.4.5.6.7.8.9.不亮*/uchar code scan_con[4]={0xfe,0xfd,0xfb,0xf7}; //4位列扫描控制字//11111110//11111101//11111011//11110111uchar data ad_data[8]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; //定义8个数据内存单元uint data dis[5]={0x00,0x00,0x00,0x00,0x00}; //定义4个显示数据单元和1个数据存储单元/////**********1ms延时子函数***********/delaylms(uint t) //t=1{uint i,j;for(i=0;i<t;i++)for(j=0;j<120;j++);}/////************显示扫描子函数***************/scan(){uchar k,n;int h;dis[3]=0x01; //通道初值为1for(n=0;n<8;n++) //每次显示8个数据{dis[2]=ad_data[n]/51; //测得值转换为3位BCD码,最大为5.00Vdis[4]=ad_data[n]%51; //余数暂存dis[4]=dis[4]*10; //计算小数第一位dis[1]=dis[4]/51;dis[4]=dis[4]%51;dis[4]=dis[4]*10; //计算小数第二位dis[0]=dis[4]/51;if(dis[2]>=4&&dis[1]>6&&dis[0]>=0)A=1;elseA=0;for(h=0;h<500;h++) //每个通道显示时间控制约为一秒{for(k=0;k<4;k++) //4位LED扫描控制{Disdata=dis_7[dis[k]];if(k==2){DISX=0;}P3=scan_con[k]; //P3.O-P3.3控制四个数码管的输出即控制输出电平的高低delaylms(1);P3=0xff;}}dis[3]++; //通道值加1}}/////*************通道选择函数*********************/tongdao(uint n){uint m,i;dis[3]=n+1;dis[2]=ad_data[n]/51; //测得值转换为3位BCD码,最大为5.00Vdis[4]=ad_data[n]%51; //余数暂存dis[4]=dis[4]*10; //计算小数第一位dis[1]=dis[4]/51;dis[4]=dis[4]%51;dis[4]=dis[4]*10; //计算小数第二位dis[0]=dis[4]/51;if(dis[2]>=4&&dis[1]>6&&dis[0]>=0)A=1;elseA=0;for(m=0;m<500;m++) //每个通道显示时间控制约为一秒{for(i=0;i<4;i++) //4位LED扫描控制{Disdata=dis_7[dis[i]];if(i==2){DISX=0;}P3=scan_con[i]; //P3.O-P3.3控制四个数码管的输出即控制输出电平的高低delaylms(1);P3=0xff;}}}/*************0809转换子函数*******************/test(){uchar m;uchar s=0x00;ad_con=s;for(m=0;m<8;m++){ALE=1;_nop_();_nop_();ALE=0; //转换通道地址锁存START=1;_nop_();_nop_();START=0; //开始转换命令_nop_();_nop_();_nop_();_nop_(); //延时4USwhile(EOC==0); //等待转换结束OE=1;ad_data[m]=addata;OE=0;s++;ad_con=s; //取A/D值,地址加1}ad_con=0x00;//控制复位}////main(){uint n,i,j;n=0;P0=0xff; //初始化窗口P1=0x00;P2=0xff;P3=0xff;i=BO;while(){test(); //测量转换一次if(i==0)for(;;){ j=CO;if(j==0){n++;}if(n>7)n=0;tongdao(n);if(i==0) break;}else{scan(); //显示八个通道值一次}}}//。

数字电压表设计实验报告

数字电压表设计实验报告
MOV R7,#6
MOV DPTR,#CS8279D
MOV R0,#30H
DISPL1:
PUSH DPL
PUSH DPH
MOV A,@R0MOV 源自PTR,#TABMOVC A,@A+DPTR
POP DPH
POP DPL
MOVX @DPTR,A
INC R0
DJNZ R7,DISPL1
DSPEXIT:
SJMP CONB3
CONB2:
MOV R7,#4
SJMP CONB3
CONB1:
MOV R7,#3
CONB3:
MOV R0,#35H
MOV A,#0BH
CONBLP:
MOV @R0,A
DEC R0
DJNZ R7,CONBLP
RET
END ; program end
二、实验结果
通过调节可变电阻VR4的电阻大小,使得输入到ADC0809的第5引脚的电压从0V变到5V,转换相应的结果并通过数码显示器显示出来。实验结果与预测结果一置。
; function: initial 8279 as 8 digtal left in ALE/10
; input parameter : none
; output parameter: none
; others 8279 command port address 0FFE9H;8279 data port address 0FFE8H
ORG 0000H
MAIN:
MOV SP, #60H
ACALL INI8279
MOV ADRESULT, #00H
MOV ADBAK, #0FFH
MAINLP:

通道的数字电压表方案设计书报告

通道的数字电压表方案设计书报告

8通道的数字电压表设计方案目录第一章设计分析1第二章硬件电路分析32.1单片机A T89C51的分析32.2 ADC0808的分析42.3显示译码器和LED分析5第三章程序设计分析63.1主函数63.2A/D转换函数63.4中断服务函数6第四章调试过程分析及仿真6第五章总结7第六章附录7第一章设计分析设计一个8通道的电压表,基于AT89X51单片机(在professional中使用的AT89C51)和ADC0809(在professional中使用的ADC0808)芯片实现模数转换,由74247显示译码器和4位LED数码管连接并显示,具有通道自选和量程(0-5v的电压)变换的功能。

设计方案如下:采用定时器/计数器T0、T1定时,T0定时溢出中断时对P3.7取反,输出频率为10KHZ的方波信号,作为ADC0808的转换时钟信号,T1定时1MS,定时溢出中断后,在中断服务程序中完成在数码管显示A/D转换结果的任务。

采用主程序、子程序结构。

主程序中完成定时器的初始化设置,产生A/D转换的启动,在转换过程中判别转换是否结束。

当转换结束时,让输入允许OE 有效,将转换结果通过P0口读到单片机内部RAM单元格储存。

将二进制数转换为十进制数的程序设计成子程序,在主程序中调用。

将LED数码管的动态显示设计成子程序,在T1的中断服务程序中调用。

第二章硬件电路分析2.1单片机AT89C51的分析AT89C51 的引脚(1)工作电源端Vcc:接+5V电源Vss:接地(2)晶振引脚(时钟电路)XTAL1:芯片内部振荡电路输入端。

XTAL2:芯片内部振荡电路输出端(3)并行I/O口引脚(4)控制引脚ALE:地址锁存使能。

当ALE为高电平时,P0口上的信息为低8位地址,在ALE信号的下降沿时将P0口上的低8位地址送地址锁存器锁存起来;在ALE为低电平期间,P0口上的信息为指令或数据信息,这样就能实现低位地址的数据分离。

RST: 复位信号。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

8通道的数字电压表
设计方案
目录
第一章设计分析 (1)
第二章硬件电路分析 (3)
2.1单片机AT89C51的分析 (3)
2.2 ADC0808的分析 (4)
2.3显示译码器和LED分析 (5)
第三章程序设计分析 (6)
3.1主函数 (6)
3.2A/D转换函数 (6)
3.4中断服务函数 (6)
第四章调试过程分析及仿真 (7)
第五章总结 (8)
第六章附录 (9)
第一章设计分析
设计一个8通道的电压表,基于AT89X51单片机(在professional中使用的AT89C51)和ADC0809(在professional中使用的ADC0808)芯片实现模数转换,由74247显示译码器和4位LED数码管连接并显示,具有通道自选和量程(0-5v 的电压)变换的功能。

设计方案如下:
采用定时器/计数器T0、T1定时,T0定时溢出中断时对P3.7取反,输出频率为10KHZ的方波信号,作为ADC0808的转换时钟信号,T1定时1MS,定时溢出中断后,在中断服务程序中完成在数码管显示A/D转换结果的任务。

采用主程序、子程序结构。

主程序中完成定时器的初始化设置,产生A/D 转换的启动,在转换过程中判别转换是否结束。

当转换结束时,让输入允许OE 有效,将转换结果通过P0口读到单片机内部RAM单元格储存。

将二进制数转换为十进制数的程序设计成子程序,在主程序中调用。

将LED数码管的动态显示设计成子程序,在T1的中断服务程序中调用。

第二章硬件电路分析
2.1单片机AT89C51的分析
AT89C51 的引脚
(1)工作电源端
Vcc:接+5V电源
Vss:接地
(2)晶振引脚(时钟电路)
XTAL1:芯片内部振荡电路输入端。

XTAL2:芯片内部振荡电路输出端(3)并行I/O口引脚
(4)控制引脚
ALE:地址锁存使能。

当ALE为高电平时,P0口上的信息为低8位地
址,在ALE信号的下降沿时将P0口上的低8位地址送地址锁存器锁
存起来;在ALE为低电平期间,P0口上的信息为指令或数据信息,
这样就能实现低位地址的数据分离。

RST: 复位信号。

复位信号是高电平有效,高电平有效的持续时间为2个机器周期以上。

单片机的复位方式可由手动复位方式完成。

2.2 ADC0808的分析
ADC0808是一种较为常用的8路模拟输入量,芯片的主要部分是一个8位的逐次比较式A/D转换器。

为了能实现8路模拟信号的分时采集,在芯片内部设置了多路模拟开关及通道地址锁存和译码电路,因此能够对多路模拟信号进行分时采集和转换。

转换后的数据送入三态输出数据锁存器。

ADC0808的引脚排布
IN0~IN7:8路模拟量输入端
DB0~DB7:数字量输入端
START:启动脉冲信号输入端,脉冲上升沿复位0808,下降沿启动A/D 转换
ALE:地址锁存信号,高电平有效时把三个地址信号送入地址所存器,并经地址译码得到地址输出,用以选择相应的模拟输入通道。

EOC:转换结束信号。

转换开始时变低,转换结束时变高,变高时降转换结果打入三态输出锁存器。

OE:输出允许信号输入端
CLOCK:时钟输入信号,最高允许值为640KHZ
VREF(+):正基准电压输入端
VREF(-):负基准电压输入端
GND:接地
Vcc:电源电压
2.3显示译码器和LED分析
共阳极的七段译码器是将十进制的数转化成字形码在与P1口的高四位位控码共同作用下显示出当前电压。

第三章程序设计分析
3.1主函数
主程序内容首先是程序初始化,初始化的内容有定时器初始化,外部中断初始化,然后一个无限循环,循环内容为P2赋值,控制所选通道,调用A/D转换程序和调用BCD显示程序。

3.2A/D转换函数
START赋值启动转换,进行转换,然后在判断是否转换结束,如果结束之后就允许输出信号,读入转化二进制,然后在通过译码器把二进制转换为十进制输出显示。

3.3BCD显示函数
输出所选通道,进行延时,然后输出整数和小数显示代码,点亮小数点,进行延时,
3.4中断服务函数
定时器中断向CLOCK输入方波信号,部中断控制所选通道。

第四章调试过程分析及仿真
写出程序后,进行目标构造,修改错误产生hex文件。

作出图,并对其进行仿真。

仿真效果如下:
第五章总结
这份作业其实做了很久,我觉得关键还是编程,一直没有编好程序,所以其他的所有东西都不能做。

即使老师分析过一通道和八通道的程序,还是不会啊。

然后后来写出来的程序有又很多的错误。

最后请教同学,帮助我改错,最后终于对了。

所以,以后要好好学习。

不然写个程序都不会。

还要多一点的实际操作,对程序的输入还要更加仔细点。

不然每次都把时间花费在找错误上面。

细心,细心,在细心啊。

第六章附录
#include <reg51.h>
unsigned char code dispcode[4]={0x10,0x20,0x40,0x80}; unsigned char dispbuf[3];
unsigned char M[8]={0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07}; unsigned char N[8]={0,1,2,3,4,5,6,7};
unsigned char i,g;
unsigned char t=0;
sbit DP=P3^5;
sbit CLK=P3^7;
sbit ST=P3^0;
sbit OE=P3^1;
sbit EOC=P3^2;
void bcd();
void main()
{
TMOD=0x02;
IE=0x86;
TCON=0x04; IP=0;
TH0=206;
TL0=206;
TR0=1;
while(1)
{
P2=M[t];
bcd();
ST=0;
ST=1;
ST=0;
while(EOC==0) {;}
OE=1;
g=P0;
OE=0;
dispbuf[0]=g/51;
dispbuf[1]=((g%51)*10)/51; }
}
void bcd()
{
P1=N[t]|dispcode[0];
for(i=0;i<100;i++);
P1=dispcode[2]|dispbuf[0]; DP=0;
for(i=0;i<100;i++);
P1=dispcode[3]|dispbuf[1]; DP=1;
for(i=0;i<100;i++);
}
void EXT1()interrupt 3 {
if(t<7)t++;
else t=0;
}
void t0()interrupt 1 {
CLK=~CLK;
}。

相关文档
最新文档