您当前的位置:五五电子网电子知识单片机-工控设备PIC单片机用PIC16F877的c语言写的一个时闹钟程序(转贴) 正文
用PIC16F877的c语言写的一个时闹钟程序(转贴)

用PIC16F877的c语言写的一个时闹钟程序(转贴)

点击数:7643 次   录入时间:03-04 11:39:06   整理:http://www.55dianzi.com   PIC单片机
        {
            AlarmTime1.minuteh = KeyNew;
            lcd_write_data(AlarmTime1.minuteh + '0');
            //lcd_write_inst(0x10);    //    move cursor back
            adjust_item ++;
        }
        else if(KeyNew == key_left)
        {
            adjust_item --;
            lcd_write_inst(time_hourl_addr);
        }
        else if(KeyNew == key_right)
        {
            adjust_item ++;
            lcd_write_inst(time_minutel_addr);
        }
    }
    else if (adjust_item == 3)    //    set minutel
    {
        if ((KeyNew >=0) & (KeyNew <=9))
        {
            AlarmTime1.minutel = KeyNew;
            lcd_write_data(AlarmTime1.minutel + '0');
            //lcd_write_inst(0x10);    //    move cursor back
            adjust_item ++;
            lcd_write_inst(time_secondh_addr);
        }
        else if(KeyNew == key_left)
        {
            adjust_item --;
            lcd_write_inst(time_minuteh_addr);
        }
        else if(KeyNew == key_right)
        {
            adjust_item ++;
            lcd_write_inst(time_secondh_addr);
        }
    }
    else if (adjust_item == 4)    //    set secondh
    {
        if (KeyNew <6)
        {
            AlarmTime1.secondh = KeyNew;
            lcd_write_data(AlarmTime1.secondh + '0');
            //lcd_write_inst(0x10);    //    move cursor back
            adjust_item ++;
        }
        else if(KeyNew == key_left)
        {
            adjust_item --;
            lcd_write_inst(time_minutel_addr);
        }
        else if(KeyNew == key_right)
        {
            adjust_item ++;
            lcd_write_inst(time_secondl_addr);
        }
    }
    else if (adjust_item == 5)    //    set secondl
    {
        if ((KeyNew >=0) & (KeyNew <=9))
        {
            AlarmTime1.secondl = KeyNew;
            lcd_write_data(AlarmTime1.secondl + '0');
            //lcd_write_inst(0x10);    //    move cursor back
            adjust_item ++;
            lcd_write_inst(time_secondl_addr+3);
        }
        else if(KeyNew == key_left)
        {
            adjust_item --;
            lcd_write_inst(time_secondh_addr);
        }
        else if(KeyNew == key_right)
        {
            adjust_item ++;
            lcd_write_inst(time_secondl_addr+3);
        }
    }
    else if (adjust_item == 6)    //    set on/off
    {
        if ((KeyNew == key_up) | (KeyNew == key_down))
        {
            if (Alarm1Enable)
            {
                Alarm1Enable =false;    //    disable alarm1
                lcd_write_data('f');
                lcd_write_data('f');
            }
            else
            {
                Alarm1Enable =true;        //    enable alarm1
                lcd_write_data('n');
                lcd_write_data(' ');
            }
            //lcd_write_inst(time_secondl_addr+3);
            adjust_item = 0;
            lcd_write_inst(time_hourh_addr);
            Alarm1Cnt = 0;
        }
        else if(KeyNew == key_left)
        {
            adjust_item --;
            lcd_write_inst(time_secondl_addr);
        }
        else if(KeyNew == key_right)
        {
            adjust_item = 0;
            lcd_write_inst(time_hourh_addr);
        }
    }

}

//    -------------------------------------------------------
void set_alarm2(void)
{
    if (adjust_item == 0)    //    set hourh
    {
        if (((AlarmTime2.hourl <4) & (KeyNew < 3)) | ((AlarmTime2.hourl >3) & (KeyNew <2)))
        {

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12]  下一页


本文关键字:程序  C语言  PIC单片机单片机-工控设备 - PIC单片机