找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1970|回復: 3
收起左側(cè)

求助,求助,本來想做個自動換量程電壓表的。然后仿真遇到了問題

[復制鏈接]
ID:1060427 發(fā)表于 2023-1-5 18:12 | 顯示全部樓層 |閱讀模式
本來想做一個基于stc15單片機0-20v自動換量程電壓表的,程序?qū)懞昧嗽趉eil5里能正常編譯。一仿真就出感嘆號,Proteus卡死。
程序如下:
#include <stc15f2k60s2.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar code71[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
uchar code72[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef};
uchar wei[4]={0xfe,0xfd,0xfb,0xf7};//weixuan
unsigned char flag;
int f=0;
uint l=0;
void delay(uint ms)
{
        uint i,j;
        for(i=ms;i>0;i--)
        for(j=110;j>0;j--);
}
void initial()
{
        P1M1=0x10;
        P1M0=0x10;
        P2M1=0x00;
        P2M0=0x00;
        P3M1=0x00;
        P3M0=0x00;
        P4M1=0x00;
        P4M0=0x00;
        P5M1=0x00;
        P5M0=0x00;
        P0=0x00;
}
void AD()
{
        int f=0;
        uchar status;
          P1ASF=0x10;
    ADC_CONTR=0x84;
          delay(100);
          ADC_CONTR=0x8c;
                _nop_();
                _nop_();
                _nop_();
                _nop_();
          status=0;
                while(status==0)
                {
                        status=ADC_CONTR&0x10;
                }
                ADC_CONTR=0x84;
                f=ADC_RES*4+ADC_RESL;
}
void panduan()
{
        l=f*49*5;
        if(l>200000)
        {P0=0x80;}
        else
        {
        if(l>50000)
        {
                P0=0x01;
        flag=1;
        }
        else
        {
                P0=0x00;
        flag=0;
        }
}
        }
void display()
{
        uchar i;
        int a=0,b=0,c=0,d=0;
        int number[4]={0,0,0,0};
        if(flag==0)
        {
                l=f*49;
                a=(int)l/10000;
                b=(int)(l*10-a*100000)/10000;
                c=(int)(l*100-a*1000000-b*100000)/10000;
                d=(int)(l*1000-a*10000000-b*1000000-c*100000)/10000;
                for(i=0;i<4;i++)
                {
                        if(i==3)
                {
                P3=wei[i];
                P2=code72[number[i]];
                delay(10);
                }
                else
                {
                P3=wei[i];
                P2=code71[number[i]];
                        delay(10);
                }
        }
}
        if(flag==1)
        {
                if(l<100000)
                {
                        l=f*49*5;
                a=(int)l/10000;
                b=(int)(l*10-a*100000)/10000;
                c=(int)(l*100-a*1000000-b*100000)/10000;
                d=(int)(l*1000-a*10000000-b*1000000-c*100000)/10000;
                for(i=0;i<4;i++)
                {
                        if(i==3)
                {
                P3=wei[i];
                P2=code72[number[i]];
                delay(10);
                }
                else
                {
                P3=wei[i];
                P2=code71[number[i]];
                        delay(10);
                }
        }
                }
                if(l>=100000)
                {
                        l=f*49*5;
                        a=(int)l/100000;
                b=(int)(l-a*100000)/100000%10;
                c=(int)(l*10-a*1000000-b*100000)/100000%10;
                d=(int)(l*100-a*10000000-b*100000-c*10000)/100000%10;
                number[3]=a;
                number[2]=b;
                number[1]=c;
                number[0]=d;
                        for(i=0;i<4;i++)
                {
                        if(i==2)
                {
                P3=wei[i];
                P2=code72[number[i]];
                delay(10);
    }
                else
                {
                P3=wei[i];
                P2=code71[number[i]];
                        delay(10);
                }
                }
                }
        }
        }
void main()
{
initial();
        while(1)
        {
        AD();
        panduan();
        AD();
        display();
        }
}

仿真圖

仿真圖

仿真后的問題

仿真后的問題

新建文件夾 (2).zip

31.68 KB, 下載次數(shù): 7

回復

使用道具 舉報

ID:883242 發(fā)表于 2023-1-5 19:22 | 顯示全部樓層
不支持這種單片機。
回復

使用道具 舉報

ID:1060427 發(fā)表于 2023-1-12 14:17 | 顯示全部樓層
Hephaestus 發(fā)表于 2023-1-5 19:22
不支持這種單片機。

不會啊做過別的可以用
回復

使用道具 舉報

ID:680980 發(fā)表于 2023-1-24 16:49 | 顯示全部樓層
我用作者文件夾的文件仿真沒有報錯,8.1版本
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表