标题: 1602液晶 为什么蜂鸣器一直响,麻烦大家看看吧,谢谢了 [打印本页]

作者: aaa123    时间: 2013-8-7 22:40
标题: 1602液晶 为什么蜂鸣器一直响,麻烦大家看看吧,谢谢了
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit RS=P1^0;
sbit RW=P1^1;
sbit EN=P2^5;
sbit du=P2^6;
sbit we=P2^7;
void delay(uint n)           //n为1 延时1ms
{
        uint i,j;
        for(i=0;i<n;i++)
                for(j=0;j<121;j++);
}
void write_com_Data(uchar n,uchar com_Data)                //n为0写指令,n为1写数据
{  
        RW=0;
        if(n==0)
                RS=0;
        else
                RS=1;
        P0=com_Data;
        delay(5);
        EN=1;
        delay(5);
        EN=0;
}
void init_1602()   //1602初始化函数
{
        du=0;           //关闭数码管
        we=0;
        EN=0;
        delay(5);
        write_com_Data(0,0x38);//7x5点阵
        write_com_Data(0,0x0f);//开显示,光标闪烁
        write_com_Data(0,0x06);//地址自动加一,不移动
        write_com_Data(0,1);   //清屏
}
void main()
{
//        while(1)
                 init_1602();
}
为什么注释掉while(1) 蜂鸣器一直响,加上了就不响了,蜂鸣器接P2^3,低电平响,我没操作P2^3啊,麻烦帮看看吧



作者: livingliving    时间: 2015-4-10 09:05
IO口共用啦。。。。。。。。。。。。。。。。。。。。。。。。
作者: liuzhaoxin1020    时间: 2017-1-8 16:46
IO口共用了
作者: chinaboy    时间: 2017-1-10 13:56
共用了一个i/o口啦




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1