標題: 我的數(shù)字電壓表的程序還有一些錯誤,求大神幫我改一改 [打印本頁]

作者: huida1999    時間: 2018-6-14 11:06
標題: 我的數(shù)字電壓表的程序還有一些錯誤,求大神幫我改一改
#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, 下載次數(shù): 74)

QQ圖片20180614110317.png

QQ圖片20180614110106.png (55.35 KB, 下載次數(shù): 68)

QQ圖片20180614110106.png

作者: zsyzdx    時間: 2018-6-14 11:29
能夠提供原文件嗎 還有就是描述下具體的問題。。。!
作者: zhb2004xp    時間: 2018-6-14 11:34
先糾正你編譯的錯誤吧:
1、6行P應(yīng)該大寫;
2、25行TH后面是0不是O;
3、26行TL0后面不帶O;
4、33行TR后面是0不是O;
5、42行錯誤是在第6行P3^2中P大寫;
6、7,應(yīng)該是P1不是Pl;
作者: zhanghyg    時間: 2018-6-14 12:36
涉及端口操作要大寫,還有“O”,“0”要分清楚TH0,不是THO,P1不是Pl。注意細節(jié)。
作者: huida1999    時間: 2018-6-14 18:35
zsyzdx 發(fā)表于 2018-6-14 11:29
能夠提供原文件嗎 還有就是描述下具體的問題!。。!

謝謝你,我自己已經(jīng)調(diào)試成功了

作者: huida1999    時間: 2018-6-14 18:36
zhb2004xp 發(fā)表于 2018-6-14 11:34
先糾正你編譯的錯誤吧:
1、6行P應(yīng)該大寫;
2、25行TH后面是0不是O;

嗯嗯,我同學已經(jīng)幫我調(diào)試成功了
作者: huida1999    時間: 2018-6-14 18:38
zhanghyg 發(fā)表于 2018-6-14 12:36
涉及端口操作要大寫,還有“O”,“0”要分清楚TH0,不是THO,P1不是Pl。注意細節(jié)。

可能是我用的傳圖識字導(dǎo)致的問題,已經(jīng)解決了,調(diào)試好了之后發(fā)現(xiàn)根本仿真不出來,我重新又換了一個程序和仿真圖才做出來




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1