找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 9031|回复: 11
收起左侧

PT2259音量电位器单片机程序与引脚图及pdf资料下载

  [复制链接]
ID:318212 发表于 2018-4-28 07:51 | 显示全部楼层 |阅读模式
PT2259引脚图
0.png

PT2259管脚功能定义:
0.png

0.jpg

音量电位器单片机源程序如下:
  1. void DrvPT2259VolumeCtrl(UCHAR Dat1, UCHAR Dat2)
  2. {
  3.     I2CStart();   
  4.     DelayI2c(2);
  5.     I2CWrite(0X88);
  6.     DelayI2c(1);
  7.     ACKCheck();
  8.     I2CWrite(Dat1);
  9.     DelayI2c(1);
  10.     ACKCheck();
  11.     I2CWrite(Dat2);
  12.     DelayI2c(1);
  13.     ACKCheck();
  14.     I2CStop();               
  15. }


  16. void VolumeContrlByTP2259(UCHAR selChannel, UCHAR volumeVal)
  17. {
  18.      
  19.      UCHAR BVal;
  20.      UCHAR AVal;
  21.      
  22.      //volumeVal = (UINT)(100 - volumeVal)*79/100;  //若声音从0-100范围内变化

  23.      BVal = volumeVal/10;
  24.      AVal = volumeVal%10;

  25.      switch(selChannel)
  26.      {
  27.          case R_CHANNEL:
  28.               DrvPT2259VolumeCtrl((0x30 | BVal), (0x20 | AVal));
  29.               break;

  30.          case L_CHANNEL:
  31.               DrvPT2259VolumeCtrl((0xb0 | BVal), (0xa0 | AVal));
  32.               break;

  33.          case RL_CHANNEL:
  34.               DrvPT2259VolumeCtrl((0xe0 | BVal), (0xd0 | AVal));
  35.               break;

  36.          default:
  37.               break;
  38.      }
  39. }


  40. void WriteTP2259(UCHAR Dat)  
  41. {
  42.     I2CStart();   
  43.     DelayI2c(2);
  44.     I2CWrite(0X88);
  45.     DelayI2c(1);
  46.     ACKCheck();
  47.     I2CWrite(Dat);
  48.     DelayI2c(1);
  49.     ACKCheck();
  50.     I2CStop();
  51. }


  52. void MuteTP2259(UCHAR selChannel,FLAG muteFlg)
  53. {
  54.     if(!muteFlg)
  55.     {
  56.         WriteTP2259(0x74); //mute off
  57.         return;
  58.     }
  59.    
  60.     switch(selChannel)
  61.     {       
  62.          case R_CHANNEL:
  63.               WriteTP2259(0x75); //r mute
  64.               break;

  65.          case L_CHANNEL:
  66.               WriteTP2259(0x76); //l mute
  67.               break;

  68.          case RL_CHANNEL:
  69.               WriteTP2259(0x77); //rl mute
  70.               break;

  71.          default:
  72.               break;
  73.     }  
  74. }


  75. void ClearTP2259(void)
  76. {
  77.    WriteTP2259(0XF0);
  78. }
复制代码
0.jpg
所有资料51hei提供下载:
PT2259驱动代码及资料.rar (406.77 KB, 下载次数: 181)

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

回复

使用道具 举报

ID:476785 发表于 2019-2-15 12:33 | 显示全部楼层
很好的资料
回复

使用道具 举报

ID:492504 发表于 2019-3-17 13:11 | 显示全部楼层
我觉得应该很好吧。
回复

使用道具 举报

ID:571855 发表于 2019-8-4 16:53 | 显示全部楼层
很有用的,明儿试试
回复

使用道具 举报

ID:257897 发表于 2020-4-23 14:24 | 显示全部楼层
学习了,刚好有用到这个芯片,谢谢LZ
回复

使用道具 举报

ID:821755 发表于 2020-9-22 11:08 | 显示全部楼层
PT2259上电后 是不是要等待200MS以后才能正常进行I2C通信?
回复

使用道具 举报

ID:806738 发表于 2021-4-23 14:24 | 显示全部楼层
bobbey 发表于 2020-4-23 14:24
学习了,刚好有用到这个芯片,谢谢LZ

刚刚好我也要用到,又刚好时隔一年的此时此刻
回复

使用道具 举报

ID:1008334 发表于 2022-3-7 19:50 | 显示全部楼层
刚好用到了PT2259芯片,感谢分享。
回复

使用道具 举报

ID:93667 发表于 2022-7-14 17:00 | 显示全部楼层

有个项目刚好用到了PT2259芯片。非常感谢分享。
回复

使用道具 举报

ID:84658 发表于 2022-8-15 11:13 | 显示全部楼层
感谢感谢,谢谢分享,刚好用到,官方的data里面没有IIC通讯部分,这个太好了
回复

使用道具 举报

ID:48994 发表于 2022-10-8 11:51 | 显示全部楼层
感谢楼主分享!正想找这个!
回复

使用道具 举报

ID:1109424 发表于 2024-1-17 09:47 | 显示全部楼层

感谢楼主分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表