日韩一区二区三区精品,欧美疯狂xxxxbbbb牲交,热99re久久免费视精品频,人妻互换 综合,欧美激情肉欲高潮视频

歷史上的今天

今天是:2025年07月13日(星期日)

2021年07月13日 | 【ARM】s3c2440裸機(jī)之RTC數(shù)字時鐘

發(fā)布者:創(chuàng)意夢者 來源: eefocus關(guān)鍵字:ARM  s3c2440  裸機(jī)  RTC  數(shù)字時鐘 手機(jī)看文章 掃描二維碼
隨時隨地手機(jī)看文章

功能


裸機(jī)程序,實(shí)現(xiàn)LCD顯示數(shù)字時鐘


主要代碼


1)背景繪制


void Brush_ U32  c)

{

    int x,y ;

    for ( y = 0 ; y < LCD_HEIGHT ; y++ )

    {

        for ( x = 0 ; x < LCD_WIDTH ; x++ )

        {

            LCD_BUFFER[y][x] = c ;

        }

    }

}


2)文字繪制


void Draw_Text16(U32 x,U32 y,U32 color,U32 backColor,const unsigned char ch[])

{

    unsigned short int i,j;

    unsigned char mask,buffer;

    /*一個漢字16行*/

    for (i=0;i<16;i++)

    {

        /*漢字左半部分*/

        mask=0x80;                        //從bit7開始判斷

        buffer=ch[i*2];                   //提取一行的第一個字節(jié)

        /*一個字節(jié)有8個位,每一位代表字模數(shù)據(jù)對應(yīng)的點(diǎn)是否描顏色*/

        for (j=0;j<8;j++)

        {

            if (buffer&mask)

            {

                PutPixel(x+j,y+i,color);  //為筆畫上色

            }

            else

            {

                PutPixel(x+j,y+i,backColor); //背景色

            }

            mask=mask>>1;                 //移位,為判斷下一位作準(zhǔn)備

        }

        /*漢字右半部分*/

        mask=0x80;                        //從bit7開始判斷

        buffer=ch[i*2+1];                 //提取一行的第二個字節(jié)

        /*一個字節(jié)有8個位,每一位代表字模數(shù)據(jù)對應(yīng)的點(diǎn)是否描顏色*/

        for (j=0;j<8;j++)

        {

            if (buffer&mask)

            {

                PutPixel(x+j+8,y+i,color); //為筆畫上色

            }

            else

            {

                PutPixel(x+j+8,y+i,backColor);//背景色

            }

            mask=mask>>1;                 //移位,為判斷下一位作準(zhǔn)備

        }

    }

}


3)時鐘設(shè)置


void RTC_Time_Set( void )

{

    /*RTC讀寫使能,選擇BCD時鐘、計(jì)數(shù)器,無復(fù)位,1/32768*/

    rRTCCON = 1 ;   

    rBCDYEAR = 0x13;        /*年*/

    rBCDMON  = 0x05;        /*月*/

    rBCDDATE = 0x09;        /*日*/

    rBCDDAY  = 0x04;        /*星*/

    rBCDHOUR = 0x10;        /*小時*/

    rBCDMIN  = 0x57;        /*分*/

    rBCDSEC  = 0x20;        /*秒*/

    /*關(guān)讀寫使能*/

    rRTCCON &= ~1 ;

}


4)數(shù)字繪制


void Draw_Text_8_16(U32 x,U32 y,U32 color,U32 backColor,const unsigned char *chs)

{

    U32 i=0;

    while (*chs != '