📄 m62429_volume_control.txt
字号:
void M62429_Volume(unsigned char volume);
unsigned char code Volume_Table[16]={
0x00,0x06,0x08,0x0b,0x0c,0x0d,0x0e,0x0f,0x10,0x12,0x13,0x14,0x12,0x33,0x54,0x75};
unsigned char Current_Level;
////音量控制*************/////////////////
void M62429_Volume(unsigned char volume)
{
unsigned char j;
PT_SCL =0;
PT_SDA =0;
_nop_();
_nop_();
PT_SCL =1; //D0 =0;
_nop_();
_nop_();
PT_SCL =0;
PT_SDA =0;
_nop_();
_nop_();
PT_SCL =1; //D1 =0;
_nop_();
_nop_();
for(j=0;j<7;j++) //D2--D8
{
PT_SCL=0;
_nop_();
_nop_();
PT_SDA=(volume>>j)&0x01;
PT_SCL=1;
_nop_();
_nop_();
PT_SDA =0;
}
PT_SCL=0;
_nop_();
_nop_();
PT_SDA =1;
_nop_();
_nop_();
PT_SCL =1; //D9 =1;
PT_SDA =0;
_nop_();
_nop_();
PT_SCL=0;
PT_SDA =1;
_nop_();
_nop_();
PT_SCL=1; //D10 =1;
_nop_();
_nop_();
PT_SCL=0; //stop the data
PT_SDA=0;
}
void Change_Volume(unsigned char level) //用于跳跃式调音
{
unsigned char temp;
if( (level <(MAX_VOLUME-1)) && ( level >=0)) {
temp = Volume_Table[level];
M62429_Volume(temp);
}
}
void OpenVolume(void)
{
Change_Volume(0x08);
}
void AddVolume(void)
{
if( (Current_Level <(MAX_VOLUME-1))&& ( Current_Level >=0))
Current_Level++;
}
void SubVolume(void)
{
if( (Current_Level <(MAX_VOLUME-1))&& ( Current_Level >0))
Current_Level--;
}
void M62429Mute(void)
{
Change_Volume(0x00);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -