欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標(biāo)題:
TM1638.h 單片機(jī)C語(yǔ)言頭文件
[打印本頁(yè)]
作者:
zpmzqr
時(shí)間:
2019-9-5 22:49
標(biāo)題:
TM1638.h 單片機(jī)C語(yǔ)言頭文件
/* --EL------------------------------ ------------*/
/* -----------------通用--------------------*/
/*------------------------------------------------*/
//CE-片選 DAI-數(shù)據(jù)輸入 DAO-數(shù)據(jù)輸出 CLK-時(shí)鐘 STB—鎖存 CLR-復(fù)位 addr-地址//
#include "EL_Allhead.H"
#include "EL_TM1638.H"
unsigned char idata TM1638_CacheTab[16];//顯示緩存
unsigned char code TM1638_SEGTab[]={0x5f,0x0c,0x9b,0x9e,0xcc,0xd6,0xd7,0x1c,0xdf,0xde}; //數(shù)碼管0-9
void TM1638_SPI(unsigned char dat) //TM1638
{
unsigned char i;
TM1638_CE =0; //給有效的片選信號(hào)(片選信號(hào)是低電平有效)
for(i=0;i<8;i++)//開始傳送8位數(shù)據(jù),每循環(huán)一次傳送一位數(shù)據(jù)
{
TM1638_CLK =0;
Delay1us(1);
dat>>=1;//移位數(shù)據(jù),低位在前!
TM1638_DAI=CY;
TM1638_CLK =1;
Delay1us(1);
}
}
void TM1638_DispData()//傳送數(shù)據(jù),并顯示
{
static unsigned char i;
TM1638_CE = 1;TM1638_CLK = 1;TM1638_DAI = 1;
TM1638_SPI(0x40);//寫數(shù)據(jù)到顯示寄存器,采用地址自動(dòng)加一
TM1638_CE = 1;
TM1638_SPI(0xc0);//顯示寄存器的00H單元開始
for(i=0;i<16;i++)
TM1638_SPI(TM1638_CacheTab[i]);//給顯示寄存器送數(shù)據(jù),
TM1638_CE = 1;
TM1638_SPI(0x8b);//顯示控制參數(shù),點(diǎn)亮數(shù)碼屏幕,亮度可以通過改變低三位調(diào)節(jié)
TM1638_CE = 1;
}
void TM1638_ClrData()//清除數(shù)據(jù)/
{
unsigned char i;
TM1638_CacheTab[0]=0x01; //關(guān)機(jī)指示燈
for(i=1;i++;i<16)
TM1638_CacheTab[i]=0;
}
/***陳列數(shù)據(jù)處理函數(shù)**傳入 數(shù)據(jù),位置(0-9)10顯示***/
void TM1638_CfgData(unsigned char _Num,unsigned char _WeiData) //陳列數(shù)據(jù)/
{
unsigned char i=0, j=0;
if(_Num>1)_WeiData=TM1638_SEGTab[_WeiData]; //數(shù)碼管0-9 轉(zhuǎn)換
if(_Num<8) //1-8位
{
for (i = 0; i < 16; i =i+2)
{
if ((_WeiData & 0x01) == 0x01)
TM1638_CacheTab[i]|=(0x01<<_Num); //1
else
TM1638_CacheTab[i]&=~(0x01<<_Num); //0
_WeiData =(_WeiData>>1);
}
}
else if(_Num<10) //9-10位
{
_Num = _Num - 8;
for (i=1;i<16;i=i+2)
{
if (_WeiData&0x01==0x01)
TM1638_CacheTab[i]|=(0x01<<_Num); //1
else
TM1638_CacheTab[i]&=~(0x01<<_Num); //0
_WeiData =(_WeiData >> 1);
}
}
else
{
TM1638_DispData();//傳送數(shù)據(jù),并顯示
}
}
復(fù)制代碼
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1