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

標題: some simple c of single chip [打印本頁]

作者: liuzong    時間: 2013-7-9 09:00
標題: some simple c of single chip
#include <reg52.h>        //51單片機內核的庫,里面存放一些地址定義
sbit ADDR0=P1^0;
sbit ADDR1= P1^1;
sbit ADDR2=P1^2;        //此部分需refer相應的硬件電路
sbit ADDR3=P1^3;      
sbit ENLED=P1^4;
typedef unsigned char uint8;
uint8 count=0;            //定時器溢出累加器
void time (void);         //1s定時函數原型
int main(void)
{  
uint8 index=0;
uint8 num[16]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xa7,0xa1,0x86,0x8e};   //定義一個數組里面存放數碼管0~f真值表常量(refer 硬件)
uint8 *pn=num;         //將數組首地址賦值給指針變量
ADDR3=1;
ENLED=0;                //使能3-8譯碼器(refer 硬件)
ADDR0=1;
ADDR1=0;
ADDR2=1;
while(1)
{
  while(index++<16)   //數組訪問索引直到數組末尾即num[15]
  {
    P0=*(pn++);         //指針變量讀取數組內容
    time();                  //調用一秒定時函數
  }
  pn=num;                //指針變量賦初值為了循環讀取數組content
  index=0;
}
}
void time (void)      //1S定時函數此函數返回值為空型且不接受參數
{
TF0=0;
TR0=1;                  //定時器初始化相關
TH0=0Xb8;
TL0=0X00;            //20ms初值
TMOD=0X01;
while(count<50)   //20ms 循環50次 即完成1s定時   1s=1000ms
  if(TF0)
  {
   TF0=0;
   TH0=0Xb8;      //非中斷溢出需軟件清零并賦初值
   TL0=0X00;
   count++;
  }
count=0;           //count清零為了下次繼續計數}








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