?? max7219drv.c
字號(hào):
/*
*********************************************************************************************************
* 7219功能函數(shù)文件
*
*********************************************************************************************************
*/
////////////////////////////////////////////////////////////////////////////////////////////////////////
//公司名稱:
//模 塊 名:max7219drv.c max7219asm.asm
//創(chuàng) 建 者:牛毅
//修 改 者:
//功能描述:提供對(duì)max7219芯片的操作驅(qū)動(dòng)程序
//其他說(shuō)明:
//版 本:1.0
////////////////////////////////////////////////////////////////////////////////////////////////////////
#ifdef HAVE_delay
//延時(shí)程序 注意:如果沒(méi)有定義HAVE_delay,
//則原程序里必須有與delay(INT16U)同名的函數(shù)供調(diào)用,時(shí)間可能會(huì)變化
void delay(INT16U i)
{
INT16U a;
a=i;
while(--i)while(--a);
}
#endif
////////////////////////////////////////////////////////////////////////////////////////////////////////
//函 數(shù) 名:void Send_7219(INT8U bytSendH,INT8U bytSendL)
//功能描述:向7219發(fā)送一個(gè)字
//函數(shù)說(shuō)明:具體初始化數(shù)值請(qǐng)查看DATASHEET
//調(diào)用函數(shù):void Send_7219(INT8U bytSendH,INT8U bytSendL)
//全局變量:無(wú)
//輸 入:INT8U bytSendH是控制字節(jié),INT8U bytSendL是數(shù)據(jù)字節(jié)
//返 回:無(wú)
//設(shè) 計(jì) 者:牛毅
//修 改 者:
//版 本:
////////////////////////////////////////////////////////////////////////////////////////////////////////
void Send_7219(INT8U bytSendH,INT8U bytSendL)
{
register INT8U i,j;
LD_CS_7219=HIGH_V;
CLK_7219=HIGH_V;
CLK_7219=LOW_V;
LD_CS_7219=LOW_V;
for(i=0;i<2;i++)
{
bytSendH=(i==1)?bytSendL:bytSendH;
for(j=0;j<8;j++)
{
DIN_7219=(bytSendH&0x80)?HIGH_V:LOW_V;
_nop_();
_nop_();
CLK_7219=LOW_V;
_nop_();
_nop_();
CLK_7219=HIGH_V;
_nop_();
_nop_();
bytSendH<<=1;
}
}
LD_CS_7219=HIGH_V;
}
////////////////////////////////////////////////////////////////////////////////////////////////////////
//函 數(shù) 名:void Init_7219(void)
//功能描述:初始化max7219為需要的模式
//函數(shù)說(shuō)明:具體初始化數(shù)值請(qǐng)查看DATASHEET
//調(diào)用函數(shù):void Send_7219(INT8U bytSendH,INT8U bytSendL)
//全局變量:無(wú)
//輸 入:INT8U bytSendH是控制字節(jié),INT8U bytSendL是數(shù)據(jù)字節(jié)
//返 回:無(wú)
//設(shè) 計(jì) 者:牛毅
//修 改 者:
//版 本:
////////////////////////////////////////////////////////////////////////////////////////////////////////
void Init_7219(void)
{
Send_7219(0x0f,0x01); //測(cè)試模式
// delay(3);
Send_7219(0x0f,0x00); //正常模式
// delay(3);
Send_7219(0x0c,0x01); //正常模式
// delay(3);
Send_7219(0x09,0x0ff); //解碼模式
// delay(3);
Send_7219(0x0a,0x05); //設(shè)置亮度
// delay(3);
Send_7219(0x0b,0x03); //只顯示第n個(gè)
// delay(3);
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -