<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > PIC單片機C語言程序設計(6)

          PIC單片機C語言程序設計(6)

          作者: 時間:2013-02-05 來源:網絡 收藏

          while(1)   // while 循環(huán)語句開始

            {

            while(x>0)

            {

            display(x); // 調顯示函數

            key_server(); // 調鍵值服務函數

            x--; // 分自減量(倒計時)

            }

            if (x==0) // 如果X=0

            RA0=1; // RA0 賦值1(報警信號)

            display_set(x); // 調鍵值顯示函數

            key_server(); // 調鍵值服務函數

            }

            }

            void key_server()// 鍵值服務程序開始

            {

            unsigned int value=0; // 給存儲顯示值賦0

            display_set(x); // 調鍵值顯示函數

            if( PORTA_4==0 ) // 如果RA4 為0

            {

            while(1)

            {

            x++; // 鍵值X 自增

            if(x>99) // 如果鍵值X>99

            x=0;   // 給X 賦值0

            display_set(x); // 調鍵值顯示函數

            delay_1m(); // 按鍵延時,以便觀察

            if(PORTA_4==1) // 如果RA4 為高電平

            {

            sign_a=0; // 清零設定時間標志位

            RA0=0; // 給RA0 賦值0

            break; // 跳出循環(huán)返回

            }

            }

            }

            }

            void display_set(unsigned int x)

            // 鍵值顯示函數開始

            {

            unsigned int d=20,unit_bit,ten_bit,unsigned char SEG7[10]={0xc0,0xf9,0xa4,

            0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

            unit_bit=x%10;

            // 這里的注釋與display 的函數相似

            ten_bit=x/10%10;

            while(d>0)

            {

            PORTA=0x1e;

            PORTB=SEG7[unit_bit];

            RA3=0; // 顯示個位

            delay(200);

            RA3=1;

            delay(2);

            PORTB=SEG7[ten_bit];

            RA2=0; // 顯示十位

            delay(200);

            RA2=1;

            delay(2);

            d--;

            }

            }

            void delay_1m()

            // 按鍵(圖6 的K1)延時函數開始

            {

            unsigned long int k; // 說明語句

            for(k=0;k4;k++) // for 語句

            {

            display_set(x); // 調用鍵值顯示函數

            }

            }

            說明: 上述C 程序經picc 編譯后生成。hex,即可用PIC 單片機編程器將。hex 燒寫到pic16F84A芯片中,再按圖6 電路制成倒計時器,即可按需要使用。


          上一頁 1 2 3 下一頁

          評論


          相關推薦

          技術專區(qū)

          關閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();