⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 74hc164驱动单个数码管(共阳)程序.c

📁 74HC164驱动单个数码管(共阳)程序 74HC164 drive a single digital tube (a total of Shenyang) procedures
💻 C
字号:
/*********************************************************/ 
/*        74HC164驱动单个数码管(共阳)程序              */ 
/*         M48  1MHZ                                     */ 
/*********************************************************/ 

#include <iom48v.h> 
#include <macros.h> 

#define setclk (PORTD|0x02) //CLK接PD1 
#define clrclk (PORTD&0xfd)  

#define setsda (PORTD|0x01) //DAT接PD0 
#define clrsda (PORTD&0xfe) 

const unsigned char DisTab[]= 
{ 
            0x11,0xD7,0x32,0x92,0xD4,0x98, 
          0x18,0xD3,0x10,0x90,0xbf,0xff};//0-9,-,全灭 (共阳字段表) 

void Delay_ms(unsigned int Time) 
{ 
    unsigned char n=0; 
    while(Time>0) 
    { 
        for (n=1;n<187;n++) 
        { 
            NOP(); 
        } 
        Time--; 
    } 
} 

void SEND_164(unsigned char c)   
 {  
  unsigned char num,i;  
                     c=DisTab[c]; 
  for(i=0;i<8;i++)  
    {  

          if((c&0x80)==0)       //模拟串口输出  
          PORTD=clrsda;  
          else  
          PORTD=setsda;  
          PORTD=setclk;  
                PORTD=clrclk;  
          c=c<<1;  
        }  
        } 

void main (void) 
{ 
 unsigned char h; 
    DDRD=0xFF; 
  
  while(1) 
    { 
  for(h=0;h<10;h++)  //轮流显示0-9 
                          { 
      Delay_ms(50); 
      SEND_164(h); 
  Delay_ms(500); 
                          } 
  h=0; 
    } 
} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -