久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計實例 >> 瀏覽文章

pic標(biāo)準(zhǔn)串口和模擬串口4位74hc595動態(tài)數(shù)碼管顯示程序

作者:佚名   來源:本站原創(chuàng)   點擊數(shù):  更新時間:2008年10月03日   【字體:

 /*--------------------------------------------------------------------------------
  ★★ 標(biāo)準(zhǔn)串口和模擬串口4位74hc595動態(tài)數(shù)碼管顯示程序 ★★
  1.CPU :16F873單片機(jī)  晶振4MHz
  2.在proteus上仿真通過,4位數(shù)碼管動態(tài)掃描計數(shù),非常的實用。
  3. 測試時將部分語句屏蔽
  4. 74hc595與164的差別在于有數(shù)據(jù)存儲器,控制端為1時數(shù)據(jù)才能被傳出    
  5.日期:2007-11-11
  6.所有代碼以及仿真文件請點此出下載http://m.zg4o1577.cn/ziliao/file/16f87_595.rar
---------------------------------------------------------------------------------*/
#include <pic.h>
#include <pic1687x.h>
__CONFIG(WDTDIS & HS & UNPROTECT);
unsigned char  dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};  //共陰極字型碼
unsigned char distab[4]={ 0xf7, 0xfb, 0xfd, 0xfe}; //要顯示的位
unsigned char disbuf[4];

bit DAT @ (unsigned)&PORTC*8+5;   //絕對尋址位操作指令:對應(yīng)bit0~7共8位
bit CLK @ (unsigned)&PORTC*8+3;
bit ST_CP @ (unsigned)&PORTC*8+2; //bit2

//#define  DAT  RC5;
//#define  CLK  RC3;
//#define  ST_CP  RC2;

unsigned char data;
//1ms延時子程序//
void delay(unsigned char ms_delay)
 {
  unsigned int count=100*ms_delay;
  while(--count)
    {;}
   }

//模擬串口//
/*
 void send(unsigned char da)
  {
  unsigned char k;
   for(k=0;k<8;k++)
       {
         DAT=da&0x01;//從低位開始逐一移出(與線路有關(guān),這是段A對應(yīng)QG),595的時序是從D0逐步到D7.移完8次后整體再向下(bit)
         da>>=1;
         CLK=0;
         CLK=1;
          }
     } */
   
  //顯示函數(shù),先分離再顯示//
 void display(unsigned int tmp)
 { 
 unsigned char i; 
 disbuf[0]=tmp%10;  
    tmp/=10;
    disbuf[1]=tmp%10;
    tmp/=10;
    disbuf[2]=tmp%10;
    disbuf[3]=tmp/10;
    for(i=0;i<4;i++)
 {
        if(SSPIF)SSPIF=0;  //等待發(fā)送完畢
  ST_CP=0;
    // send(dispcode[disbuf[i]]);  //模擬串口
   SSPBUF=dispcode[disbuf[i]];  //標(biāo)準(zhǔn)串口
      delay(1);  //不加延時標(biāo)準(zhǔn)串口千位變個位 
  ST_CP=1;  //最后給鎖存信號,代表顯示任務(wù)完成
    PORTB=distab[i];
    delay(1);  //決定刷新頻率
       PORTB=PORTB|0xff;  //傳完后關(guān)閉當(dāng)前顯示位(不然顯示不全),同時不影響沒有用到的端口
   } 
 }


   //主函數(shù)51hei.com提供//
 void main()
 { 
   unsigned int k;
   
   TRISC=0;    //兩種定義方式
  // TRISC3=0;     //SCK時鐘輸出引腳。
   //TRISC5=0;     //串行數(shù)據(jù)輸出引腳。

   TRISB=0;

  //SSPIE=1;  //這些是中斷有關(guān)的
  //GIE=1;
 //PEIE=1;

 PIR1=0;   //清SPI標(biāo)志
 //INTCON=0x00;   //*關(guān)閉所有中斷*/
 SSPSTAT=0xc0;  //SCK上跳沿數(shù)據(jù)傳送。
 SSPCON=0x20;  //主控方式,空閑時時鐘為低電平,時鐘為:Fosc/4,模擬、標(biāo)準(zhǔn)分開
 
   for(k=0;k<9999;k++)
   {
      delay(40);
    display(k);
  }
 }

//串口中斷//
/*
void interrupt recceive_sth (void)
{
 SSPIF=0;
 
}*/
 

關(guān)閉窗口
主站蜘蛛池模板: 99reav| 日本成人午夜影院 | 免费三级黄 | 国产成人免费视频网站高清观看视频 | 国产精品日韩欧美一区二区三区 | 欧美一区二区三区久久精品 | 午夜极品 | 久久中文字幕电影 | 精品蜜桃一区二区三区 | 天天草视频 | 毛片在线免费 | 久久精品久久久 | 嫩草视频网 | 日本粉嫩一区二区三区视频 | 亚洲视频一区在线 | 精品一级 | 久久狠狠 | 色888www视频在线观看 | 国产欧美日韩一区二区三区在线观看 | 国产欧美日韩综合精品一区二区 | 黄色毛片一级 | 久久青视频 | 欧美精品一区二区三区蜜臀 | 91精品国产欧美一区二区成人 | 玖玖色在线视频 | 韩国av一区二区 | 91亚洲精品在线 | 亚洲精品中文在线 | 亚洲色图图片 | 久久国产精品免费一区二区三区 | 天天射天天干 | 国产欧美一区二区三区久久 | 亚洲国产一区在线 | 欧美精品久久 | 欧美aaaaa| 久久精品亚洲精品国产欧美 | 国产九九精品 | 欧美一区二区三区四区在线 | 日韩av美女电影 | 亚洲免费视频网站 | 亚洲国产精品久久久 |