找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5711|回复: 2
收起左侧

proteus8.9仿真找不到ADC0832芯片external model ADC083X.DLL not found

[复制链接]
ID:761757 发表于 2021-4-26 19:22 | 显示全部楼层 |阅读模式
错误信息:external model ADC083X.DLL not found
51hei图片20210426192033.png 51hei图片20210426192014.png
#include <reg51.h>
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char


sbit ADC_CLK = P1^6;
sbit ADC_DI = P1^5;
sbit ADC_DO = P1^5;
sbit ADC_CS  = P1^7;

sbit Light = P3^2;        //路灯控制位
sbit Voice = P1^0;        //声控信号输入
sbit IR = P1^1;        //红外人体热释电信号输入

unsigned char SunLux=0;
unsigned char fRun=0;
unsigned char SetSunLux=150;


void delayms(uint ms)                 //延时xx毫秒
{
         uchar i;
        while(ms--)
        {
                 for(i=0;i<120;i++);
        }
}
           
//*******************************************MQ2程序********************************//
uchar Get_AD_Result(void)
{
         uchar i;
        uchar DOUT=0;           //只需255,故使用uchar 0~255
        
    ADC_CS=0;
    ADC_DI=1;//第一个上升沿前为高,确认开始
    ADC_CLK=0;
            ADC_CLK=1;
    _nop_(); //启动信号

    ADC_DI=1; //第二个上升沿前为1
    ADC_CLK=0;
        ADC_CLK=1;
    _nop_(); //

    ADC_DI=0; //第三个上升沿前为0
    ADC_CLK=0;
        ADC_CLK=1;
    _nop_(); //

    ADC_CLK=1;
            ADC_CLK=0; //开始采样

    _nop_();
    _nop_();
    ADC_DO=1;//写全一,保证下面的读引脚正常
        for(i=8;i>0;i--)
        {
          ADC_CLK=1;
              ADC_CLK=0; //下降沿采样
          _nop_();
          DOUT=DOUT<<1;
          DOUT=DOUT|ADC_DO; //按位或,ADC_DO是转换后的输出,其实就是把ADC_DO传送到dig的低位
                            //因为ADC_DO是一位,这样左移位后获得的空位放置的就是ADC_DO
                            //第二个时钟下降沿获得就是最高位
        }
        ADC_CS=1;                          //转换结束
        return(DOUT);
}






void main()
{
        P1   = 0xff;
        Light = 1;
        while(1)
        {
                SunLux=Get_AD_Result();                 //读取当前阳光的勒克司值,日光的传感器在6通道
                if(SunLux>SetSunLux)        fRun=0;                 //当日光的勒克司对应的分压值比设定值大时,不允许路灯工作(路灯熄灭)
                else fRun=1;                         //当日光的勒克司对应的分压值比设定值小时,允许声音控制路灯点亮
               
                if(fRun==1)
                {
                        if((Voice==1)||(IR==0))
                        {
                                delayms(10);
                                if((Voice==1)||(IR==0))
                                {
                                        Light = 0;
                                        delayms(6000);
                                        Light = 1;
                                }
                        }
                }
                else  Light = 1;
               
        }
}


回复

使用道具 举报

ID:366877 发表于 2021-6-14 12:59 | 显示全部楼层
这是PROTEUS8.9解问题,在MODEL文件夹下有ADC083X.DLL文件,但不能用,需要另外找ADC083X.DLL文件覆盖。

评分

参与人数 1黑币 +20 收起 理由
admin + 20 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

ID:938840 发表于 2021-6-16 18:46 | 显示全部楼层
并不是程序问题,本站有这个文件缺失的帖子
http://www.51hei.com/bbs/forum.p ... 3D1&page=1&
回复

使用道具 举报

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

本版积分规则

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

Powered by 单片机教程网

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