基于单片机的数字电压表制作——ADC0832模数转换应用程序(C语言)(2)

2018-12-27 19:01

****************************************************************************/ void convdata(unsigned char i)

{

dis[0] = i/51; //个位

dis[1] = (iQ)*10/51; //小数点后第一位

dis[2] = ((iQ)*10Q)*10/51; //小数点后第二位 }

/**************************************************************************** 函数功能:数码管显示子程序 入口参数: 出口参数:

****************************************************************************/ void display(void)

{

P2=0xff;

P0=tab[dis[0]] & 0x7f; //显示个位和小数点 P2=0xfe; delay(); P2=0xff;

P0=tab[dis[1]]; //显示小数点后第一位 P2=0xfd; delay(); P2=0xff;

P0=tab[dis[2]]; //显示小数点后第二位 P2=0xfb; delay(); }

/****************************************************************************

函数功能:定时器中断延时程序 这一段的作用时隔一段时间抽样一次 否侧显示的最后一位会不稳定 入口参数:

出口参数:

****************************************************************************/ void timer0(void) interrupt 1 {

TMOD = 0x01; TH0 = 0x00; TL0 = 0x00; IE = 0x82; TR0 = 01; count++;

if (count == 0x0A) {

count = 0x00;

dat = adc0832(CH); } }

/**************************************************************************** 函数功能:主程序 入口参数: 出口参数:

****************************************************************************/ void main(void)

{

P2=0xff; //端口初始化 P0=0xff;

CH = 0x00; //在这里选择通道 0x00或0x01 TMOD = 0x01; //设置中断 TH0 = 0x00; TL0 = 0x00;

IE = 0x82; TR0 = 01;

while(1) //主循环 {

convdata(dat); //数据转换 display(); //显示数值 } }


基于单片机的数字电压表制作——ADC0832模数转换应用程序(C语言)(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:电压测量练习题

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

马上注册会员

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