找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1621|回复: 6
打印 上一主题 下一主题
收起左侧

我的数字电压表的程序还有一些错误,求大神帮我改一改

[复制链接]
回帖奖励 40 黑币 回复本帖可获得 40 黑币奖励! 每人限 1 次(中奖概率 80%)
跳转到指定楼层
楼主
#include"reg51.h"
#define uint unsigned int;
#define uchar unsigned char
sbit ST=P3^0;
sbit  OE=P3^1;
sbit EOC= p3^2;
sbit CLK=P3^3;
sbit s1=P2^0;
sbit s2= P2^1;
unsigned char code dispcode[]=
{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char disp[2]=(0, 0);
unsigned char getdata;
unsigned int temp;
unsigned char out;
unsigned char wei;
void delay(int);
void display();
void main()
{
s1=1;
s2=1;
//wei=0;
TMOD=0x12;
THO=(256-250);
TL0O=(256-250);
TH1=(65536-6000)/256;
TL1=(65536-6000)%256;
ET0=1;
ET1=1;
EA= 1;
TR1=1;
TRO = 1;
delay(2);
while(1)
{
OE=0;
ST=0;
ST=1;
ST=0;
// delay(2);
while( EOC==0);
OE=1;
getdata=P0;
delay(1);
OE=0;
temp= getdata*2;
disp[0]= temp/100;
disp[1]=temp/10%10;
  }
}
void display()
{
wei=0;
s1=0;
Pl=dispcode[ disp[ wei ]]|0x80;
delay(1);
s2=1;
wei=1;
s2=0;
Pl=dispcode[disp[wei]];
delay(1);
s2=1;
}
void tl(void) interrupt 3 using 0
{
display();
TH1=(65536-6000)/256;
TL1=(65536-6000)%256;
}
void t0( void) interrupt 1 using 0
{
CLK=~CLK;
}
void delay(int x)
{
int i,j;
for(i=0;i<x;i++)
for(j=0;j<120;j++);
}



QQ图片20180614110317.png (99.9 KB, 下载次数: 74)

QQ图片20180614110317.png

QQ图片20180614110106.png (55.35 KB, 下载次数: 67)

QQ图片20180614110106.png
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:320306 发表于 2018-6-14 11:29 | 只看该作者
能够提供原文件吗 还有就是描述下具体的问题!!!!!
回复

使用道具 举报

板凳
ID:234075 发表于 2018-6-14 11:34 | 只看该作者
先纠正你编译的错误吧:
1、6行P应该大写;
2、25行TH后面是0不是O;
3、26行TL0后面不带O;
4、33行TR后面是0不是O;
5、42行错误是在第6行P3^2中P大写;
6、7,应该是P1不是Pl;
回复

使用道具 举报

地板
ID:330198 发表于 2018-6-14 12:36 | 只看该作者
涉及端口操作要大写,还有“O”,“0”要分清楚TH0,不是THO,P1不是Pl。注意细节。
回复

使用道具 举报

5#
ID:350754 发表于 2018-6-14 18:35 | 只看该作者
zsyzdx 发表于 2018-6-14 11:29
能够提供原文件吗 还有就是描述下具体的问题!!!!!

谢谢你,我自己已经调试成功了
回复

使用道具 举报

6#
ID:350754 发表于 2018-6-14 18:36 | 只看该作者
zhb2004xp 发表于 2018-6-14 11:34
先纠正你编译的错误吧:
1、6行P应该大写;
2、25行TH后面是0不是O;

嗯嗯,我同学已经帮我调试成功了
回复

使用道具 举报

7#
ID:350754 发表于 2018-6-14 18:38 | 只看该作者
zhanghyg 发表于 2018-6-14 12:36
涉及端口操作要大写,还有“O”,“0”要分清楚TH0,不是THO,P1不是Pl。注意细节。

可能是我用的传图识字导致的问题,已经解决了,调试好了之后发现根本仿真不出来,我重新又换了一个程序和仿真图才做出来
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表