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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5102|回復: 9
打印 上一主題 下一主題
收起左側

拋磚之三”或許只是一個傳說“

[復制鏈接]
跳轉到指定樓層
樓主
     妻深諳“要管住丈夫的心,先要管住丈夫的胃”的道理,做的一手好菜,可謂廚藝高手。一日,妻看著夫品著自己做的美味時,嘆曰:“烹飪的最高境界是掌握火候”。夫思忖:“掌握火候不就是控制烹調時間么。這個容易只要把此前拋出的‘兩塊磚’信手拈來即可。”于是夫找來了C51單片機、數碼管、蜂鳴器等元器件,搭建了一個電路簡潔,計時精準,聲音響亮、調時方便的100-0分鐘遞減的計時報警器。給妻烹飪時掌握火候。    妻愛不釋手,喜曰:“烹小鮮,如治大國矣。”
    夫心曰:“治小家,一定要學單片機。”

#include< reg52.h >              //包含頭文件
#define INT8 unsigned char       //預定義關鍵詞
#define INT16 unsigned int  

sbit Key1 = P1 ^ 6;              //十位按鍵加
sbit Key2 = P1 ^ 7;              //個位按鍵加
sbit BUZZER = P1 ^ 0;

/*
INT8 code table[] =                      //共陰碼表。
{                  
        0x3F, 0x06, 0x5B, 0x4F, 0x66,
        0x6D, 0x7D, 0x07, 0x7F, 0x6F
};
*/

INT8 code table[] =                      //共陽碼表。
{                   
        0xC0, 0xF9, 0xA4, 0xB0, 0x99,
        0x92, 0x82, 0xF8, 0x80, 0x90
};
       
INT8 T_count = 0, Second = 0;
INT8 Minute_1 = 1, Minute_2 = 5; //初始設定為15分鐘,可以選擇最常用的時間為初始值。

void Delay( INT16 xms )          //延時函數,有參函數
{  
        INT16 x, y;   
        for( x = xms; x > 0; x -- )   
                for( y = 110; y > 0; y -- );  
}

void Keyscan()                   //按鍵掃描函數
{            
        if( Key1 == 0 )              //十位加
        {
                Delay( 10 );
                if( Key1 == 0 )
                {
                        while( !Key1 )
                        P1 = 0xC0;
                        {
                                Minute_1 ++;
                                if( Minute_1 == 10 )               
                                Minute_1 =0;
                        }
                }
        }
        if( Key2 == 0 )                     //個位加
        {
                Delay( 10 );
                if( Key2 == 0 )
                {
                        while( !Key2 )
                        P1 = 0xC0;
                        {
                                Minute_2 ++;
                                if( Minute_2 == 10 )  
                                Minute_2 = 0;
                        }
                }
        }
}

void main()  
{      
        TMOD |= 0x10;
        TMOD &= 0xDF;  
        TR1 = 1;      
        ET1 = 1;      
        EA = 1;         
        while( 1 )
        {            
                P2 = table[ Minute_1 ];        
                P3 = table[ Minute_2 ];        
                Keyscan();
        }
}

void Buzzer( INT16 Number, INT8 Time )          //可以選擇鳴響次數和時間
{
        INT8 h,j;
        INT16 i ;
        for ( h = 0; h < Number; h ++ )
        {
                for ( i = 0; i < Time; i ++ )
                {
                        BUZZER =~ BUZZER;              //BEEP取反
                        for ( j = 0; j < 75; j ++ );   //需要產生方波,調節音頻
                }
                Delay( 100 );                               //間隔時間
        }
        BUZZER = 0;                            //PNP-0;NPN-1關閉蜂鳴器
}

void interrupt_timer1()        interrupt 3
{
        TH1 = ( 65536 - 50000 ) / 256;      
        TL1 = ( 65536 - 50000 ) % 256;      
        T_count ++;                           //定時器中斷計數器加一   
        if( T_count == 20 )                   //計數20次  
        {   
                T_count = 0;                      //清零定時器中斷計數器   
                Second ++;                        //秒計數器加一   
                if( Second >= 60 )                //秒計數器等于100   
                {     
                        Second = 0;                                    //秒計數器清零
                        Minute_2 --;
                        if( Minute_2 == -1 && Minute_1 >> 0 )
                        {
                                Minute_2 = 9;
                                Minute_1 --;
                        }  
                }  
        }
        if( Minute_1 == 0 && Minute_2 == -1 )
        {
                Minute_1 = 0;
                Minute_2 = 0;
                Buzzer( 200,100 );
                while( 1 );
                {
                ;
                }
        }
}




100-0分鐘報警器.png (27.43 KB, 下載次數: 209)

100-0分鐘報警器.png

DSC01636.JPG (2.37 MB, 下載次數: 176)

DSC01636.JPG

評分

參與人數 1威望 +50 黑幣 +50 收起 理由
admin + 50 + 50 共享資料的積分獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:67370 發表于 2014-10-27 20:04 | 只看該作者
不好意思,電路有點錯誤,現更正。

100-0分鐘報警器.png (25.29 KB, 下載次數: 188)

100-0分鐘報警器.png
回復

使用道具 舉報

板凳
ID:133 發表于 2014-10-27 21:07 | 只看該作者
樓主一出手 基本都是精品貼啊  我先看看  
回復

使用道具 舉報

地板
ID:133 發表于 2014-10-27 21:08 | 只看該作者
樓主這技術 這工藝  簡直是可以出產品了
回復

使用道具 舉報

5#
ID:67370 發表于 2014-10-27 21:15 | 只看該作者
愿意為初學者提供一點幫助,也為本論壇做點貢獻。
回復

使用道具 舉報

6#
ID:61875 發表于 2014-10-28 09:59 | 只看該作者
謝謝樓主的奉獻
回復

使用道具 舉報

7#
ID:67844 發表于 2014-10-30 15:06 | 只看該作者
學習啊
回復

使用道具 舉報

8#
ID:67370 發表于 2014-10-31 19:46 | 只看該作者
只是普通的塑料盒。
回復

使用道具 舉報

9#
ID:56563 發表于 2014-11-1 18:50 | 只看該作者
樓主手藝不錯。。
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 中文字幕在线观看一区 | 看亚洲a级一级毛片 | 国产区在线观看 | 久热精品在线播放 | 久久精品免费 | 亚洲一av| 国产一级视频在线 | 国产日韩精品视频 | 国产三级在线观看播放 | 中文字幕视频在线看5 | 亚洲欧美日韩精品久久亚洲区 | 成年人在线播放 | 亚洲一级毛片 | 国产精品99久久久久久久vr | 超碰免费在线观看 | 区一区二区三在线观看 | 国产精品毛片一区二区三区 | 久久精品久久精品久久精品 | 日本免费视频在线观看 | 欧美激情啪啪 | 97精品超碰一区二区三区 | 国产欧美日韩在线 | 日韩欧美在线观看 | 九九亚洲 | 国产女人与拘做视频免费 | 成人一级黄色毛片 | 精品国产一区二区在线 | 久久久久国产一区二区三区不卡 | 日本精品久久久久久久 | 自拍偷拍中文字幕 | av一二三区| 免费在线视频一区二区 | 免费精品久久久久久中文字幕 | 日韩在线小视频 | 中文字幕精品一区二区三区精品 | 国产成人一区二区 | 欧美日韩看片 | 九九九视频 | 久久www免费视频 | 亚洲激情一级片 | 国产精品久久久久久久久久久久久久 |