我们从2011年坚守至今,只想做纯粹的技术论坛,请不要发布和技术无关的话题。  本站有两万多份高大上的PCB和原理图下载,每日更新中,欢迎常回来看看

 找回密码
 立即注册
搜索
查看: 1918|回复: 8

[资料贡献] 基于单片机的数字电压表程序代码(C代码)

[复制链接]

13

主题

3

回帖

61

积分

一级逆天

积分
61

终身成就奖特殊贡献奖

QQ
发表于 2016-9-19 22:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区

您需要 登录 才可以下载或查看,没有账号?立即注册

×
# include <reg52.h>
# include <intrins.h>
# define uchar unsigned char
# define uint unsigned int
sbit CLOCK=P3^6;
sbit START=P3^7;
sbit EOC=P3^4;
sbit OE=P3^5;
sbit ALE=P3^3;
sbit A=P3^2;
sbit B1=P3^1;
sbit C=P3^0;
long x,y,shu,ge,fen1,fen2,fen3,jia,j;

void delay(int z)
{
    int a ,b;
    for(a=z;a>0;a--)
    for(b=110;b>0;b--);
}

uchar code table[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};
uchar code table1[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

void display(uint ge,fen1,fen2,fen3)
{
    if(jia%2!=0)
    {
    P0=0x40;
    P2=0xfe;
    delay(1);
    P2=0xff;
        
    P0=table1[ge];
    P2=0xfd;
    delay(1);
    P2=0xff;
     
    P0=table[fen1];
    P2=0xfb;
    delay(1);
    P2=0xff;
   
    P0=table1[fen2];   
    P2=0xf7;
    delay(1);
    P2=0xff;
   
//     P0=table1[fen3];
//     P2=0xf7;
//     delay(5);
//     P2=0xff;
}
if(jia%2==0)
{
   
    P0=table1[ge];
      P2=0xef;
    delay(1);
    P2=0xff;     
    P0=table[fen1];
    P2=0xdf;
    delay(1);
    P2=0xff;   
    P0=table1[fen2];   
    P2=0xbf;
    delay(1);
    P2=0xff;   
    P0=table1[fen3];
    P2=0x7f;
    delay(1);
    P2=0xff;
}
}

void main()
{   
    TMOD=0x11;
    TH0=(65536-10)/256;
    TL0=(65536-10)%256;
    TH1=(65536-50000)/256;
    TL1=(65536-50000)%256;
    EA=1;
    ET0=1;
    TR0=1;
    ET1=1;
    TR1=1;   
    ALE=0;
    START=0;
    OE=0;   
    while(1)
    {                    
         ALE=1;
        START=0;
        _nop_();
        START=1;
        ALE=0;
        START=0;
        display(ge,fen1,fen2,fen3);
        while(EOC==0);        
        P1=0xff;
        OE=1;
        x=P1;
        shu=x*196;
        ge=(shu*5)/100000;
        fen1=(shu*5)/10000%10;
        fen2=(shu*5)/1000%10;
        fen3=(shu*5)/100%10;
    }        
}
void time() interrupt 1
{
    TH0=(65536-10)/256;
    TL0=(65536-10)%256;
    CLOCK=~CLOCK;            
}
void time2() interrupt 3
{
    TH1=(65536-50000)/256;
    TL1=(65536-50000)%256;
    j++;
    if(j>59)
    {
        j=0;
        jia++;
        if(jia%2==0)
        A=B1=C=0;
        if(jia%2!=0)
         {
             B1=C=0;   
             A=1;
         }
    }
}
  • 打卡等级:以坛为家III
  • 打卡总天数:691
  • 打卡月天数:11
  • 打卡总奖励:2860
  • 最近打卡:2026-11-13 12:03:10

81

主题

1万

回帖

1万

积分

三级逆天

积分
10138

终身成就奖特殊贡献奖原创先锋奖社区居民灌水天才奖优秀斑竹奖宣传大使奖忠实会员最爱沙发社区劳模

QQ
发表于 2016-9-19 22:40 | 显示全部楼层
回复

使用道具 举报

83

主题

1592

回帖

2389

积分

二级逆天

积分
2389

终身成就奖优秀斑竹奖

QQ
发表于 2016-9-20 08:58 | 显示全部楼层
回复

使用道具 举报

  • 打卡等级:以坛为家II
  • 打卡总天数:209
  • 打卡月天数:1
  • 打卡总奖励:710
  • 最近打卡:2026-11-06 09:00:04

51

主题

2815

回帖

1626

积分

二级逆天

积分
1626

终身成就奖社区居民优秀斑竹奖

QQ
发表于 2016-9-20 13:13 | 显示全部楼层
回复

使用道具 举报

1

主题

182

回帖

157

积分

二级逆天

积分
157

终身成就奖

QQ
发表于 2016-9-20 14:31 | 显示全部楼层
回复

使用道具 举报

  • 打卡等级:以坛为家I
  • 打卡总天数:82
  • 打卡月天数:0
  • 打卡总奖励:252
  • 最近打卡:2024-11-01 10:56:45

1

主题

384

回帖

1625

积分

二级逆天

积分
1625

终身成就奖特殊贡献奖

发表于 2019-11-11 22:32 | 显示全部楼层
回复

使用道具 举报

1

主题

224

回帖

1174

积分

二级逆天

积分
1174

终身成就奖

发表于 2020-7-9 07:26 | 显示全部楼层
回复

使用道具 举报

  • 打卡等级:以坛为家III
  • 打卡总天数:620
  • 打卡月天数:11
  • 打卡总奖励:2319
  • 最近打卡:2026-11-13 09:04:26

4

主题

8362

回帖

8289

积分

二级逆天

积分
8289

终身成就奖特殊贡献奖原创先锋奖优秀斑竹奖

发表于 2023-1-31 01:07 | 显示全部楼层
回复

使用道具 举报

  • 打卡等级:以坛为家III
  • 打卡总天数:411
  • 打卡月天数:0
  • 打卡总奖励:1413
  • 最近打卡:2026-01-05 09:53:12

0

主题

1071

回帖

5088

积分

二级逆天

积分
5088

社区居民终身成就奖特殊贡献奖原创先锋奖

QQ
发表于 2023-2-2 09:15 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请举报投诉

本站所有资料仅限参考学习交流,PCB原理图源码等所有资料不保证准确没问题,请不要用作生产。否则后果自负。

闽公网安备35062302000276号 | 闽ICP备2024076463号-1 | 论坛技术支持QQ群171867948 | 论坛问题,充值问题请联系QQ1308068381

平平安安
TOP
快速回复 返回顶部 返回列表