新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 發光二極管閃爍程序(位操作)

        發光二極管閃爍程序(位操作)

        作者: 時間:2016-11-17 來源:網絡 收藏
        //位操作點亮發光二極管

        #include
        #include
        sbit D2=P1^3;
        void OSCILLATOR_Init(void)
        {
        U8 SFRPAGE_save = SFRPAGE;
        SFRPAGE = CONFIG_PAGE;
        OSCICN = 0x87; // Set internal osc. divider to 1

        本文引用地址:http://www.104case.com/article/201611/315563.htm

        SFRPAGE = SFRPAGE_save;
        }
        void PORT_Init(void)
        {
        U8 SFRPAGE_save = SFRPAGE;
        SFRPAGE = CONFIG_PAGE;
        P1MDIN |= 0x08; // P1.3 is digital
        P1MDOUT = 0x08;
        XBR2 = 0x40; // Enable crossbar and GLOBAL enable weak pull-ups
        SFRPAGE = SFRPAGE_save;
        }
        /*void Delay(unsigned m)
        {
        char i=0;
        while(--m)
        {
        for(i=0;i<120;i++);//修改i的最大值來調整延時時間,延時時間計算:
        }

        }*/
        //延時可以使用上面的或下面的雙層for循環,單層時間太短
        void delay()
        {
        unsigned int i;
        unsigned char j;
        for(i=1;i<3000;i++)
        {
        for(j=1;j<120;j++);
        }

        }
        void main()
        {
        OSCILLATOR_Init();//時鐘初始化
        PORT_Init();//端口初始化
        PCA0MD &= ~0x40; //禁止看門狗
        D2=1;
        //Delay(1200);
        delay();
        D2=0;
        delay();
        //Delay(1200);
        }



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 青河县| 太仓市| 东台市| 古浪县| 伊川县| 淮安市| 巴中市| 南平市| 华宁县| 临夏县| 瓦房店市| 边坝县| 湟源县| 府谷县| 东宁县| 二连浩特市| 深泽县| 宕昌县| 彭阳县| 乌苏市| 军事| 准格尔旗| 虹口区| 股票| 株洲县| 襄垣县| 罗城| 武宁县| 密山市| 金阳县| 衢州市| 渝北区| 萝北县| 阳春市| 泾川县| 桐乡市| 无棣县| 凤庆县| 沧源| 绥德县| 中西区|