欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 入門第一個(gè)74HC595驅(qū)動(dòng) C語(yǔ)言 [打印本頁(yè)]

作者: 465410185    時(shí)間: 2018-7-19 08:42
標(biāo)題: 入門第一個(gè)74HC595驅(qū)動(dòng) C語(yǔ)言
/********   實(shí)驗(yàn)驅(qū)動(dòng)74HC595 芯片********
     單片機(jī)型號(hào):ATMEGA48PA

   /********** 74HC595電平邏輯*********************
   SI   SCK   SCLR   RCK     OE   輸出管腳
   X     X      X     X      H    QA--QH 輸出高阻
   X     X      X     X      L    QA--QH 輸出有效值
   X     X      L     X      X    稱位寄存器清零
   L   上沿     H     X      X    稱位寄存器存儲(chǔ) L
   H   上沿     H     X      X    稱位寄存器存儲(chǔ) H
   x   下沿     H     X      X    稱位寄存器壯態(tài)保持
   X     X      X    上沿    X    輸出存儲(chǔ)器鎖存(移位寄存器中的壯態(tài)值)
   X     X      X    下沿    X    輸出存儲(chǔ)器壯態(tài) 保持
   **************分析******************
   實(shí)計(jì)使用:
    SI   數(shù)據(jù)       (14腳)
        RCK  鎖存       (12腳)
        SCK  時(shí)鐘       (11腳)
       OE 與 RCK 相連  (13腳)
           SCLR 接高電平   (10腳)
   ***************************************/
//ICC-AVR application builder : 2017-12-5 17:22:41
// Target : m48
// Crystal: 1.0000Mh
/***************************************************/
#include <iom48v.h>
#include <macros.h>
#define uchar unsigned char
#define uint  unsigned int
extern unsigned int a  =  10;    //延時(shí)基數(shù)
extern unsigned int b  =  1;      //并行數(shù)據(jù) 初使參數(shù)
extern unsigned int c  =  0;
// int temp=0b00000001;   //  移位數(shù)據(jù) 初使參數(shù)
/**************分析******************
    實(shí)計(jì)使用:
    SI   數(shù)據(jù)   (14腳)
        RCK  鎖存   (12腳)
        SCK  時(shí)鐘   (11時(shí)鐘)
   注意:第調(diào)用一次 腳位電平反轉(zhuǎn) ^=
***************************************/
#define   SI_1    PORTB  |=  (1<<0)  
#define   SI_0    PORTB  &= ~(1<<0)

#define   SCK_1   PORTB  |= (1<<1)  
#define   SCK_0   PORTB  &=~(1<<1)  

#define   RCK_1   PORTB  |= (1<<2)
#define   RCK_0   PORTB  &=~(1<<2)


/************端口初使化******************************/
void port_init(void)
{
  PORTB = 0x00;
  DDRB  = 0xFF;
  PORTC = 0x00;
  DDRC  = 0xFF;
  PORTD = 0B00000011;
  DDRD  = 0xFF;

}
/***************mS延時(shí)***********************/
void Delay_ms(unsigned int Time)
{
  unsigned char n=0;
    while(Time>0)
    {   
        for (n=1;n<187;n++)
        {
            NOP();
        }
        Time--;
    }
}
/***********顯示/字**************************/
const unsigned char DisTab[]=  
{ 0b00000000,  // 0
  0b00000001,  // 1
  0b00000011,  // 2
  0b00000111,  // 3
  0b00001111,  // 4
  0b00011111,  // 5
  0b00111111,  // 6
  0b01111111,  // 7
  0b11111111,  // 8
// 0b00000000,  // 9
};
/********將顯示數(shù)據(jù)裝入74HC595內(nèi)部移位奇存器*****/
void WR_595(char c)
{
     char  unm,j,i,x; //定義3個(gè)(16位)常量
         unm=DisTab[c];        // 顯示數(shù)據(jù)存入 unm 中
         for (j=0;j<7;j++)
         {  
                SCK_1;             //上沿 移位寄存器(存儲(chǔ))
          //  x = unm&0x80;      //數(shù)據(jù) (unm 與 0X80)與運(yùn)算后存入X
                 x = unm&0b1000000;
                if(x==0)           // 數(shù)據(jù)寫(xiě)到 SI 端口
                  {
                   SI_0;  //如果X==0,SI_1 數(shù)據(jù)寫(xiě)1,
                  }
                  else             //如果X==0,SI_1 數(shù)據(jù)寫(xiě)0,
                     {
                       SI_1;
                     }
             SCK_0;             //下沿 移位寄存器(壯態(tài)保持)
                 unm = unm<<1;      //數(shù)據(jù)移位
      }
  }                       
/**********鎖存并顯示**************/
void OUT_595(void)
    {
             RCK_1;             //上沿,壯態(tài)鎖存
                 RCK_0;             //下沿,保持74HC595輸出壯態(tài)
                 Delay_ms(500);    //延時(shí) 74HC顯示一段時(shí)間
    }
/**********************************/



/***************開(kāi)始***********************/
void main(void)
{  
    port_init();            //端口初使化
  while(1)                  //超極循環(huán)
   {
        char i;
                for(i=0;i<8;i++)
                    {   
                            WR_595(2);   //顯示數(shù)據(jù)裝入并顯示
                                OUT_595();
                    }               
                 
   }  

}



作者: admin    時(shí)間: 2018-7-19 15:58
樓主能分享下原理圖嗎?
作者: 465410185    時(shí)間: 2018-7-20 20:32
不好意思,還不會(huì)傳圖片




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1