久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 我把單片機main函數(shù)標紅的代碼放在KeyPros函數(shù)里再從主函數(shù)調用現(xiàn)象不對 [打印本頁]

作者: 15361932382    時間: 2022-4-1 13:19
標題: 我把單片機main函數(shù)標紅的代碼放在KeyPros函數(shù)里再從主函數(shù)調用現(xiàn)象不對
//問題:我把main函數(shù)標紅的代碼放在KeyPros函數(shù)里再從主函數(shù)調用現(xiàn)象不對,現(xiàn)象為按k1蜂鳴器響,按k2蜂鳴器不響,再按k1時蜂鳴器不響(正確現(xiàn)象是想要響),main函數(shù)標紅的代碼直接放在main現(xiàn)象正確

單片機源程序如下:
/*
實驗說明:
    此程序兼容了有源和無源蜂鳴器
實驗接線:
    獨立按鍵模塊-->單片機管腳
    K1-->P31
    K2-->P30
    蜂鳴器模塊-->單片機管腳
    BEEP-->P15
實驗現(xiàn)象:
    按下K1鍵,蜂鳴器發(fā)出聲音,按下K2鍵,蜂鳴器停止發(fā)聲
*/

#include "reg52.h"             //此文件中定義了單片機的一些特殊功能寄存器

typedef unsigned int u16;      //對數(shù)據類型進行聲明定義
typedef unsigned char u8;

sbit k1=P3^1;
sbit k2=P3^0;

sbit beep=P1^5;

u8 start;


/*******************************************************************************
* 函 數(shù) 名         : delay
* 函數(shù)功能           : 延時函數(shù),i=1時,大約延時10us
*******************************************************************************/
void delay(u16 i)
{
    while(i--);   
}

void KeyJudge()    //判斷k1按下和k2按下
{
    if(k1 == 0)
    {
        delay(10);
        if(k1 == 0)
        {
            while(k1 == 1);
            delay(10);
            while(k1 == 1);
            start = 1;
        }
    }
   
    if(k2 == 0)
    {
        delay(10);
        if(k2 == 0)
        {
            while(k2 == 1);
            delay(10);
            while(k2 == 1);
            start = 0;
        }
    }
}

void KeyPros()
{
    if(start == 1)
    {
        beep = ~beep;
        delay(1000);
    }
    else
    {
        beep = 1;
    }
}


void main()
{
    while(1)
    {
        KeyJudge();
        if(start == 1)
        {
            beep = ~beep;
            delay(1000);
        }
        else
        {
            beep = 1;
        }
//        KeyPros();

    }
}


作者: 15361932382    時間: 2022-4-1 13:19
//問題:我把main函數(shù)標紅的代碼放在KeyPros函數(shù)里再從主函數(shù)調用現(xiàn)象不對,現(xiàn)象為按k1蜂鳴器響,按k2蜂鳴器不響,再按k1時蜂鳴器不響(正確現(xiàn)象是想要響),main函數(shù)標紅的代碼直接放在main現(xiàn)象正確
作者: 15361932382    時間: 2022-4-1 13:20
把main函數(shù)標紅的代碼放在KeyPros函數(shù)里再從主函數(shù)調用KeyPros函數(shù)為什么現(xiàn)象回不一樣
作者: 略略略來啦    時間: 2022-4-1 15:39
你試一下將K1=1;K2=1;beep =1;放在main函數(shù)里,while(1)函數(shù)之前
作者: glinfei    時間: 2022-4-1 16:19
   while(k1 == 1);   //應該是0才對,后邊的也要改成0
        
作者: 15361932382    時間: 2022-4-1 16:24
glinfei 發(fā)表于 2022-4-1 16:19
while(k1 == 1);   //應該是0才對,后邊的也要改成0

可以了,謝謝大佬,估計是抖動的問題




歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 亚洲一区免费 | 国产一区欧美 | 国产一区二区三区久久久久久久久 | 日本a网站 | 日韩一区二区在线视频 | 欧美日韩久久精品 | 国产精品一区二区免费看 | 午夜视频一区二区 | www.色.com| 成人在线视频一区 | 午夜影院| www午夜视频 | 久久久影院 | 国产精品精品视频一区二区三区 | 久久久久久久一区 | 中文字幕精品一区 | 国产精品久久久久久久午夜 | 日韩视频三区 | 中文字幕av一区 | 国产免费观看视频 | 亚洲欧美在线观看 | 精品一区二区久久 | 成人免费视频网 | 日韩免费中文字幕 | 懂色中文一区二区三区在线视频 | 久久久久国产精品 | 精品伊人久久 | 黄色在线播放视频 | 欧美亚洲成人网 | 日韩精品无码一区二区三区 | 盗摄精品av一区二区三区 | 99视频免费在线观看 | 欧美日韩久久 | 精品av久久久久电影 | 亚洲视频免费在线播放 | 国产精品国产三级国产a | 欧美在线观看黄色 | 97av视频| 国产高清一区二区 | 一级做a| 嫩草一区二区三区 |