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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2197|回復(fù): 2
收起左側(cè)

幫幫唄 怎么寫實(shí)現(xiàn)一鍵切換功能;我寫的主函數(shù)沒效果,其他函數(shù)正常

[復(fù)制鏈接]
ID:81211 發(fā)表于 2015-9-4 09:18 | 顯示全部樓層 |閱讀模式
#include<reg51.h>
#include"LCD.h"
#include"ds1302.h"
#include"temp.h"
sbit check=P1^0;


void timeLcdDisplay();
void tempLcdDisplay(int temp);
void time_transfer();
void temp_transfer();
void main()
{check=1;
        while(1)  //想在溫度和時(shí)間之間一鍵切換
        {
if(check==0)
{
Delay1ms(10);
        while(check==0)
        {temp_transfer();}

}
else{
time_transfer();

}
}}
       
void time_transfer()
{  uint a;
LcdInit();
        Ds1302Init();
        for(a=0;a<60;a++)
        {
       
        Ds1302ReadTime();
                timeLcdDisplay();       
}}
void temp_transfer()
{uint a,b;
       

       
LcdInit();                         //3êˉLCD1602
        LcdWriteCom(0x88);        //D′μ· 80±íê3êμ·
        LcdWriteData('C');
        for(a=0;a<200;a++)
        {
               
        tempLcdDisplay(Ds18b20ReadTemp());
                        Delay1ms(200);
        }}
void timeLcdDisplay()
{
        LcdWriteCom(0x80+0X40);
        LcdWriteData('0'+TIME[2]/16);                                //ê±
        LcdWriteData('0'+(TIME[2]&0x0f));                                 
        LcdWriteData('-');
        LcdWriteData('0'+TIME[1]/16);                                //·
        LcdWriteData('0'+(TIME[1]&0x0f));       
        LcdWriteData('-');
        LcdWriteData('0'+TIME[0]/16);                                //
        LcdWriteData('0'+(TIME[0]&0x0f));

        LcdWriteCom(0x80);
        LcdWriteData('2');
        LcdWriteData('0');
        LcdWriteData('0'+TIME[6]/16);                        //ê
        LcdWriteData('0'+(TIME[6]&0x0f));
        LcdWriteData('-');
        LcdWriteData('0'+TIME[4]/16);                        //
        LcdWriteData('0'+(TIME[4]&0x0f));
        LcdWriteData('-');
        LcdWriteData('0'+TIME[3]/16);                        //è
        LcdWriteData('0'+(TIME[3]&0x0f));
        LcdWriteCom(0x8D);
        LcdWriteData('0'+(TIME[5]&0x07));        //Dú                         
}
void tempLcdDisplay(int temp)
{
unsigned char datas[] = {0, 0, 0, 0, 0}; //¨òêy×é
        float tp;  
        if(temp< 0)                                //μ±èμaoêy
          {
                  LcdWriteCom(0x80);                //D′μ· 80±íê3êμ·
            LcdWriteData('-');                  //êo
                //òòaáèμèêêμêèμ21£ùò1£ùè·′ó3-
                temp=temp-1;
                temp=~temp;
                tp=temp;
                temp=tp*0.0625*100+0.5;       
                //ááDêyμí*100£+0.5êéáè£òòaCóμêy×aaDíμê±oò°Dêyμ
                //oóμêy×ˉè¥μ£21üê·′óóú0.5£+0.5oó′óóú0.5μíê1á£Dóú0.5μí
                //óé0.5£1êúDêyμoó£

          }
        else
          {                       
                  LcdWriteCom(0x80);                //D′μ· 80±íê3êμ·
            LcdWriteData('+');                 //êy
                tp=temp;//òòaêyY′|àíóDDêyμùòè3òμDí±á
                //è1èêyμ′£′yêyμ-íê21ü±éí
                temp=tp*0.0625*100+0.5;       
                //ááDêyμí*100£+0.5êéáè£òòaCóμêy×aaDíμê±oò°Dêyμ
                //oóμêy×ˉè¥μ£21üê·′óóú0.5£+0.5oó′óóú0.5μíê1á£Dóú0.5μí
                //óé0.5£1êúDêyμoó£
        }
        datas[0] = temp / 10000;
        datas[1] = temp % 10000 / 1000;
        datas[2] = temp % 1000 / 100;
        datas[3] = temp % 100 / 10;
        datas[4] = temp % 10;

        LcdWriteCom(0x82);                  //D′μ· 80±íê3êμ·
        LcdWriteData('0'+datas[0]); //°ù

       
        LcdWriteCom(0x83);                 //D′μ· 80±íê3êμ·
        LcdWriteData('0'+datas[1]); //ê

        LcdWriteCom(0x84);                //D′μ· 80±íê3êμ·
        LcdWriteData('0'+datas[2]); //

        LcdWriteCom(0x85);                //D′μ· 80±íê3êμ·
        LcdWriteData('.');                 //ê .ˉ

        LcdWriteCom(0x86);                 //D′μ· 80±íê3êμ·
        LcdWriteData('0'+datas[3]); //êDêyμ  

        LcdWriteCom(0x87);                 //D′μ· 80±íê3êμ·
        LcdWriteData('0'+datas[4]); //êDêyμ  
}




回復(fù)

使用道具 舉報(bào)

ID:74784 發(fā)表于 2015-9-4 10:50 | 顯示全部樓層
你想別人怎么幫你???
回復(fù)

使用道具 舉報(bào)

ID:81211 發(fā)表于 2015-9-4 10:59 | 顯示全部樓層
怎么寫實(shí)現(xiàn)一鍵切換功能;我寫的主函數(shù)沒效果,其他函數(shù)正常


void main()
{
        uchar System_Mode;
       
       
        while(1)
        {
                if(key0==0)
                        System_Mode=1;
                if(key0==1)
                        System_Mode=2;
               
   switch(System_Mode)
                { case 1:
                        temp_transfer();
      break;
      case 2:
      time_transfer();
                        break;
                        default:
                        break;}
}
}
       
void time_transfer()
{
LcdInit();
        Ds1302Init();
        while(1)
        {
        Ds1302ReadTime();
                timeLcdDisplay();       
                if(key0==0) break;
        }}
void temp_transfer()
{LcdInit();                         
        LcdWriteCom(0x88);       
        LcdWriteData('C');
        while(1)
        {
        tempLcdDisplay(Ds18b20ReadTemp());
                        Delay1ms(100);
                if(key0==1) break;
        }}
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 国产91久久久久 | 日韩在线中文字幕 | 国产一区二区精品自拍 | 黑人精品欧美一区二区蜜桃 | 91高清免费观看 | 老司机久久 | 99免费| 国产一区二区不卡 | 免费视频一区二区 | 亚洲狠狠爱 | 欧美黑人又粗大 | 日本三级电影免费观看 | 国产真实精品久久二三区 | 亚洲色图第一页 | 99综合在线| 亚洲最大av| 色婷婷亚洲国产女人的天堂 | 欧美亚洲国产精品 | 日韩三级一区 | 午夜三级视频 | 国产精品欧美一区二区 | 欧美视频网 | 国产一卡二卡三卡 | 伊人伊成久久人综合网站 | 国产不卡在线播放 | 国产精品自拍视频 | 在线亚洲欧美 | 国内精品伊人久久久久网站 | h小视频| 国产午夜精品视频 | av在线一区二区三区 | 欧美激情欧美激情在线五月 | 日韩久久久久久久久久久 | 大乳boobs巨大吃奶挤奶 | 国产aⅴ | 99九九视频| 91av视频在线免费观看 | 精品国产一区二区三区成人影院 | 亚洲人成人一区二区在线观看 | 国产视频久久 | 日本精品视频 |