新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > MSP430與DS1302之1602顯示

        MSP430與DS1302之1602顯示

        作者: 時間:2016-12-02 來源:網絡 收藏

        /*****************讀出年的十進制數***************************/

        uchar readyear()
        {
        uchar dat;
        dat=read_1302add(0x8d);
        year=((dat&0xf0)>>4)*10+(dat&0x0f);
        return year;
        }

        /************************讀出所有時間**********************/
        void readtime()
        {
        readsecond();
        readminute();
        readhour();
        readday();
        readmonth();
        readweek();
        readyear();
        }
        /*********************向1602寫入時間****************************/
        void write_second()
        {
        uchar shi,ge;
        shi=second/10;
        ge=second%10;
        Write1602(0x80+0x40+9,0x30+shi);
        Write1602(0x80+0x40+10,0x30+ge);
        }
        void write_minute()
        {
        uchar shi,ge;
        shi=minute/10;
        ge=minute%10;
        Write1602(0x80+0x40+6,0x30+shi);
        Write1602(0x80+0x40+7,0x30+ge);
        }
        void write_hour()
        {
        uchar shi,ge;
        shi=hour/10;
        ge=hour%10;
        Write1602(0x80+0x40+3,0x30+shi);
        Write1602(0x80+0x40+4,0x30+ge);
        }

        void write_day()
        {
        uchar shi,ge;
        shi=day/10;
        ge=day%10;
        Write1602(0x80+8,0x30+shi);
        Write1602(0x80+9,0x30+ge);
        }
        void write_month()
        {
        uchar shi,ge;
        shi=month/10;
        ge=month%10;
        Write1602(0x80+5,0x30+shi);
        Write1602(0x80+6,0x30+ge);
        }
        void write_year()
        {
        uchar shi,ge;
        shi=year/10;
        ge=year%10;
        Write1602(0x80+2,0x30+shi);
        Write1602(0x80+3,0x30+ge);
        }
        void write_week()
        {
        Write1602(0x80+12,0x30+week);
        //uchar week;
        switch(week)
        {
        case 1: Write1602(0x80+12,M);
        Write1602(0x80+13,O);
        Write1602(0x80+14,N);
        break;
        case 2:Write1602(0x80+12,T);
        Write1602(0x80+13,U);
        Write1602(0x80+14,E);
        break;
        case 3:Write1602(0x80+12,W);
        Write1602(0x80+13,E);
        Write1602(0x80+14,N);
        break;
        case 4:Write1602(0x80+12,T);
        Write1602(0x80+13,H);
        Write1602(0x80+14,U);
        break;
        case 5:Write1602(0x80+12,F);
        Write1602(0x80+13,R);
        Write1602(0x80+14,I);
        break;
        case 6:Write1602(0x80+12,S);
        Write1602(0x80+13,A);
        Write1602(0x80+14,T);
        break;
        case 7:Write1602(0x80+12,S);
        Write1602(0x80+13,U);
        Write1602(0x80+14,N);
        break;
        }
        }

        /*************************主函數*************************/
        void main( void )
        {
        /*下面六行程序關閉所有的IO口*/
        P1DIR = 0XFF;P1OUT = 0XFF;
        P2DIR = 0XFF;P2OUT = 0XFF;
        P3DIR = 0XFF;P3OUT = 0XFF;
        P4DIR = 0XFF;P4OUT = 0XFF;
        P5DIR = 0XFF;P5OUT = 0XFF;
        P6DIR = 0XFF;P6OUT = 0XFF;

        WDTCTL = WDTPW + WDTHOLD; //關狗
        LcdReset();
        //zifuchuan("The time is:");
        //循環讀數顯示
        init_1302();
        while(1)
        {

        readtime();
        write_second();
        write_minute();
        write_hour();
        write_day();
        write_month();
        write_year();
        write_week();

        }
        }


        上一頁 1 2 3 下一頁

        關鍵詞: MSP430DS13021602顯

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 东兰县| 池州市| 龙海市| 新河县| 大宁县| 田林县| 扬州市| 乐山市| 西贡区| 南平市| 永顺县| 宁津县| 屏山县| 清镇市| 乌什县| 柞水县| 喀喇| 水城县| 自治县| 谢通门县| 会理县| 万安县| 苍南县| 庄浪县| 伽师县| 保康县| 花莲县| 临澧县| 井陉县| 姚安县| 南安市| 广南县| 体育| 郑州市| 安塞县| 宁城县| 泰和县| 资阳市| 眉山市| 庆阳市| 和静县|