PT2259引腳圖
PT2259管腳功能定義:
音量電位器單片機源程序如下:
- void DrvPT2259VolumeCtrl(UCHAR Dat1, UCHAR Dat2)
- {
- I2CStart();
- DelayI2c(2);
- I2CWrite(0X88);
- DelayI2c(1);
- ACKCheck();
- I2CWrite(Dat1);
- DelayI2c(1);
- ACKCheck();
- I2CWrite(Dat2);
- DelayI2c(1);
- ACKCheck();
- I2CStop();
- }
- void VolumeContrlByTP2259(UCHAR selChannel, UCHAR volumeVal)
- {
-
- UCHAR BVal;
- UCHAR AVal;
-
- //volumeVal = (UINT)(100 - volumeVal)*79/100; //若聲音從0-100范圍內變化
- BVal = volumeVal/10;
- AVal = volumeVal%10;
- switch(selChannel)
- {
- case R_CHANNEL:
- DrvPT2259VolumeCtrl((0x30 | BVal), (0x20 | AVal));
- break;
- case L_CHANNEL:
- DrvPT2259VolumeCtrl((0xb0 | BVal), (0xa0 | AVal));
- break;
- case RL_CHANNEL:
- DrvPT2259VolumeCtrl((0xe0 | BVal), (0xd0 | AVal));
- break;
- default:
- break;
- }
- }
- void WriteTP2259(UCHAR Dat)
- {
- I2CStart();
- DelayI2c(2);
- I2CWrite(0X88);
- DelayI2c(1);
- ACKCheck();
- I2CWrite(Dat);
- DelayI2c(1);
- ACKCheck();
- I2CStop();
- }
- void MuteTP2259(UCHAR selChannel,FLAG muteFlg)
- {
- if(!muteFlg)
- {
- WriteTP2259(0x74); //mute off
- return;
- }
-
- switch(selChannel)
- {
- case R_CHANNEL:
- WriteTP2259(0x75); //r mute
- break;
- case L_CHANNEL:
- WriteTP2259(0x76); //l mute
- break;
- case RL_CHANNEL:
- WriteTP2259(0x77); //rl mute
- break;
- default:
- break;
- }
- }
- void ClearTP2259(void)
- {
- WriteTP2259(0XF0);
- }
復制代碼
所有資料51hei提供下載:
PT2259驅動代碼及資料.rar
(406.77 KB, 下載次數(shù): 194)
2018-4-28 16:14 上傳
點擊文件名下載附件
|