数字电压表毕业设计(6)

2019-06-17 12:41

else if(!flag_1) dat_v=(2*dq)/4096*100;//一档,量程2V

return dat_v;

}

void read_key()//键盘扫描函数 { static uchar key_state=0; switch(key_state) { case key_state0: if(key==0)

key_state=key_state1;

break;

case key_state1: if(key==0) { TR0=1;

display_zifu(1,0,tab3);

key_state=key_state2;

} else

key_state=key_state0;

break;

case key_state2:

26

}

}

if(key)

key_state=key_state0;

break;

void main() {

long float dat;

long float dat_aver,dat1,dat2,dat3,dat4,dat5;//定义5个随机电压值

变量

uchar flag;//后五秒取随机电压的标志 init_timer0(); init_1602(); delay(10);

while(1) {

dat=read_value();

if(dat>=100)//当电压值大于1V时,用V显示,否则用mV显示 { }

display_zifu(0,1,tab2); display(0,7,dat); display_zifu(0,13,tab0);

27

else { display_zifu(0,1,tab2); display(0,7,dat*1000); display_zifu(0,13,tab1);

}

read_key(); //当键盘按下时,计算后五秒的平均电压值if(t==20) { t=0; flag++;

}

if(flag==1)

dat1=dat;

if(flag==2)

dat2=dat;

if(flag==3)

dat3=dat;

if(flag==4)

dat4=dat;

if(flag==5) { dat5=dat;

dat_aver=(dat1+dat2+dat3+dat4+dat5)/5;

display(1,7,dat_aver);

display_zifu(1,13,tab0); 28

}

dat_aver=0;

}

if(flag==8) {

flag=0;

write_com(0x01); TR0=0;

}

}

void timer0() interrupt 1//定时器中断函数 { }

TH0=(65536-50000)/256;//重新放入初始值 TL0=(65536-50000)%6; t++;

九.系统的调试

完成了系统的硬件设计,制作和软件编程之后,要使系统能够按设计意图正常运行,必须进行系统调试。调试分了硬件和软件调试。 1. 硬件调试

硬件调试的主要任务是排除硬件故障,其中包括设计的错误和工艺性故障等。

1)检查所设计的硬件电路板所有的器件和引脚是否正确,尤其是电源的连接是否正确;检查各总线是否有短路的故障。检查开关/按键是否正常,是

29

否连接正确,为了保护芯片,应先对各IC座电位进行检查,确认无误后再插入芯片。

2)将40芯片的仿真插头插入单片机插座进行调试,检查各接口是否满足设计的要求,有正常的程序测试硬件电路的好坏。 2. 软件调试

软件调试的任务是利用开发工具进行在线仿真调试,发现和纠正程序的错误,同时也能发现硬件的故障。软件调试是一个模块一个模块进行的。首先单独调试各子程序是否能够按照预期的功能,接口电路的控制是否正常。最后调试整个程序。尤其注意的是各模块间能否正确的传递参数。

1)

检查液晶显示模块程序。在主程序中调用display()和dislay_zifu()函数,观察在1602液晶上是否能够显示相应的字符。如果不能,则在相关的子程序中设计断点,反复调试直到能够显示。

2)

检查按键模块程序。本设计的按键模块程序是用状态机的方法,可以在key_state1状态下加一个任务,如显示一个字符在液晶上。观察是否正确显示。

3)

检查A/D转换模块程序。可以在硬件电路的输入端输入已知的几个电压,分别观察液晶上是否显示相应的电压值。

4)

检查数据的转换模块程序。可以拨动硬件电路的档位开关,输入相应的电压,观察液晶显示的电压值是否一致。如果一致。则数据转换的算法正确的。

5)

总调试。当相应的各模块环节都正确后,可程序下载到单片机。接上电源运行。再检查所有功能,观察是否能预期的一样。如果一样,说明设计成功完成。

十.总结

由于本设计使用的是高效的51系列单片机作为核心的测量系统,以及高精度,高速度,高抗干扰的A/D转换器。使得本直流电压表具体精度高,灵敏度强,

30


数字电压表毕业设计(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:公园桥施工组织设计(正)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: