注册 登录
编程论坛 单片机编程

我这个Proteus的图有什么问题???

祝你前程似锦 发布于 2020-11-21 19:16, 5858 次点击
只有本站会员才能查看附件,请 登录

我想实现的是让发光二极管D12由灭到均匀变亮到最亮之后均匀熄灭,且在最亮和最灭的时候蜂鸣器报警一次,但是他不会发亮和警报(以下是我的代码)
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit dula = P2^6;
sbit wela = P2^7;
sbit dawr = P3^6;
sbit dacs = P3^2;
sbit beep = P2^3;
void delay(uint z)
{
    uint i,j;
    for(i = z;i > 0;i--)
    for(j = 110;j > 0;j--);
}
void main()
{
    uchar val,flag;
    dula = 0;
    wela = 0;
    dacs = 0;
    dawr = 0;
    P0 = 0;
    while(1)
    {
        if(flag == 0)
        {
            val += 9;
            P0 = val;
            if(val == 255)
            {
                flag = 1;
                beep = 0;
                delay(100);
                beep = 1;
            }
            delay(322);
        }
        else
        {
            val -= 9;
            P0 = val;
            if(val == 0)
            {
                flag = 0;
                beep = 0;
                delay(100);
                beep = 1;
            }
            delay(322);
        }
    }   
}
10 回复
#2
xianfajushi2020-11-21 20:13
P0口添加上拉电阻
#3
祝你前程似锦2020-11-21 20:35
回复 2楼 xianfajushi
只有本站会员才能查看附件,请 登录

我加了但是他还是不会出现象
#4
r3169994432020-11-21 23:42
val += 9; val -= 9;  先改为1试下
#5
xianfajushi2020-11-22 05:11
P0口指的是0-7不只是0
#6
祝你前程似锦2020-11-22 09:04
回复 5楼 xianfajushi
那得加所有的上拉电阻吗?
#7
祝你前程似锦2020-11-22 09:05
回复 4楼 r316999443
蜂鸣器是可以正常工作的 但是二极管永远是低电平
#8
r3169994432020-11-22 09:38
回复 7楼 祝你前程似锦
...

[此贴子已经被作者于2020-11-22 12:24编辑过]

#9
xianfajushi2020-11-22 11:48
51蛋骗鸡只有P0口是开漏需要上拉电阻的,其它口都不需要上拉电阻,初学者都会犯错有2种,P0不接上拉电阻,其它端口不需要的又接上拉电阻。
#10
祝你前程似锦2020-11-22 12:32
回复 9楼 xianfajushi
那个最右侧排阻按郭天祥的板子来说应该是一个排针但是我在找到proteus里面的排针之后不能进行正常工作的仿真,是不是我的型号出了问题??我找的是con类型的四排排针(单侧)。
#11
祝你前程似锦2020-11-22 12:35
回复 8楼 r316999443
啊这 我知道可能是因为延时过长,但是我改成val+=5 和下面延时delay(90)也就是差不多4.5秒就应该从灭均匀到亮,但是它还是一直是低电平。。
1