音量控制 单片机c 语言,(封贴)请大神代写音响音量控制程序(有偿代写)单片机加TDA7313控制...
/************* 功能说明 **************
本文件为SC7313/TDA7313驱动控制函数
******************************************/
#include "Audio_SC7313.h"
#include "delay.h"
//音调(高音、低音)//bass&treble查表
unsigned char code TABLE_Tone[15]=
{
// -14, -12, -10, -8, -6, -4, -2, 0, 2, 4, 6, 8, 10, 12, 14 //dB
0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x0e,0x0d,0x0c,0x0b,0x0a,0x09,0x08
};
//主音量//Volume查表
unsigned char code TABLE_Volume[16]=
{
//-78.75,51.25,48.75,41.25,36.25,31.25,26.25,22.5,18.75,15,11.25,8.75,6.25,3.75,1.25,0 //-dB
// 63, 41, 37, 33, 29, 25, 21, 18, 15, 12, 9, 7, 5, 3, 1, 0 //Value
0x3F,0x29,0x25,0x21,0x1D,0x19,0x15,0x12,0x0F,0x0C,0x09,0x07,0x05,0x03,0x01,0x00
};
//要写入的参数
// 0: 主音量级别(0-15) 1: 声音通道(0-2)
// 2: 增益级别(0-3) 3: 响度开关(0-1)
// 4: 低音音量(0-17) 5: 高音音量(0-17)
char Audio_Para[Audio_Number]={5,2,3,1,10,8};
char Audio_RunState = 0; //运行状态
//--------------------------------------- I2C协议 -------------------------------------------//
/**************************************
起始信号
**************************************/
void SC7313_Start()
{
SC7313_SDA = 1; //拉高数据线
SC7313_SCL = 1; //拉高时钟线
delay_us(5); //延时
SC7313_SDA = 0; //产生下降沿
delay_us(5); //延时
SC7313_SCL = 0; //拉低时钟线
}
/**************************************
停止信号
**************************************/
void SC7313_Stop()
{
SC7313_SDA = 0; //拉低数据线
SC7313_SCL = 1; //拉高时钟线
delay_us(5); //延时
SC7313_SDA = 1; //产生上升沿
delay_us(5); //延时
}
/**************************************
发送应答信号
入口参数:ack (0:ACK 1:NAK)
**************************************/
void SC7313_SendACK(bit ack)
{
SC7313_SDA = ack; //写应答信号
SC7313_SCL = 1; //拉高时钟线
delay_us(5); //延时
SC7313_SCL = 0; //拉低时钟线
delay_us(5); //延时
}
/**************************************
接收应答信号
**************************************/
bit SC7313_RecvACK()
{
SC7313_SCL = 1; //拉高时钟线
delay_us(5); //延时
CY = SC7313_SDA; //读应答信号
SC7313_SCL = 0; //拉低时钟线
delay_us(5); //延时
return CY;
}
/**************************************
向IIC总线发送一个字节数据
**************************************/
void SC7313_SendByte(unsigned char dat)
{
unsigned char i;
for (i=0; i<8; i++) //8位计数器
{
dat <<= 1; //移出数据的最高位
SC7313_SDA = CY; //送数据口
SC7313_SCL = 1; //拉高时钟线
delay_us(5); //延时
SC7313_SCL = 0; //拉低时钟线
delay_us(5); //延时
}
//SC7313_SendACK(0); //发送应答信号(0:ACK 1:NAK)
if(SC7313_RecvACK()==0) // 检测从机应答
{
SC7313_Stop(); //停止信号
}
}
/**************************************
从IIC总线接收一个字节数据
**************************************/
unsigned char SC7313_RecvByte()
{
unsigned char i;
unsigned char dat = 0;
SC7313_SDA = 1; //使能内部上拉,准备读取数据
for (i=0; i<8; i++) //8位计数器
{
dat <<= 1;
SC7313_SCL = 1; //拉高时钟线
delay_us(5); //延时
dat |= SC7313_SDA; //读数据
SC7313_SCL = 0; //拉低时钟线
delay_us(5); //延时
}
return dat;
}
/**************************************
从IIC地址(address)中读取1字节数据
将设备的address地址中的数据读出返回参数中
入口参数:address (0x00H-0xFFH)
**************************************/
unsigned char SC7313_ReadData()
{
unsigned char dat;
SC7313_Start(); //起始信号
SC7313_SendByte(SC7313_Address); //发送设备地址+写信号
SC7313_Start(); //起始信号
SC7313_SendByte(SC7313_Address+1); //发送设备地址+读信号
dat = SC7313_RecvByte();
SC7313_SendACK(1); //最后一个数据需要会NAK
SC7313_Stop(); //停止信号
return dat;
}
/**************************************
向IIC地址(address)中写1字节数据
将BUF数据写入设备的address地址中
入口参数:address (0x00H-0xFFH),BUF数据
**************************************/
void SC7313_WriteData(unsigned char dat)
{
SC7313_Start(); //起始信号
SC7313_SendByte(SC7313_Address); //发送设备地址+写信号
SC7313_SendByte(dat); //发送数据
SC7313_Stop(); //停止信号
}
/**************************************
向IIC地址(address)中写1字节数据
将BUF数据写入设备的address地址中
入口参数:address (0x00H-0xFFH),BUF数据
**************************************/
void SC7313_WriteDataLen(unsigned char dat[],unsigned char len)
{
unsigned char i;
SC7313_Start(); //起始信号
SC7313_SendByte(SC7313_Address); //发送设备地址+写信号
for (i=0; i
{
SC7313_SendByte(dat[i]); //发送数据
}
SC7313_Stop(); //停止信号
}
//--------------------------------------- I2C协议 END-------------------------------------------//
//--------------------------------------- SC7313基础设置 -------------------------------------------//
//================================================================================
//函数名称:void PowerAudio(unsigned char Ch)
//函数说明:根据输入音源通道号设置音源的电源开关
//入口参数: Ch:音源通道0~2
//出口参数: 无
//================================================================================
void PowerAudio(unsigned char Ch)
{
switch(Ch)
{
case 0:
MP3_PWR = 1; //高电平开MP3电源
Audio_RunState = 1; //运行状态1
break;
case 1:
MP3_PWR = 0; //关MP3电源
Audio_RunState = 2; //运行状态2
break;
case 2:
MP3_PWR = 0; //关MP3电源
Audio_RunState = 2; //运行状态2
break;
default:
Audio_RunState = 0; //运行状态0
break;
}
}
//================================================================================
//函数名称:
//函数说明:设置输入音源通道0~3,增益0~3,开关0~1
//入口参数:
//出口参数: 无
//================================================================================
void SC7313_SetAudio(unsigned char Ch, unsigned char Volume, unsigned char State)
{
unsigned char Stereo;
unsigned char Gain;
unsigned char Loudnes;
Stereo = Ch;
Gain = Volume;
if(Stereo>3){Stereo=3;} //0:Stereo1, 1:Stereo2, 2:Stereo3, 3:Stereo4
if(Gain>3){Gain=3;} //0:+11.25dB, 1:+7.5dB, 2:+3.75dB, 3:0dB
if(State==1){Loudnes=0;}else{Loudnes=1;}//Loudness 0:ON, 1:OFF
AMUTE = 1; //高电平功放静音
delay_ms(100); //延时
PowerAudio(Stereo); //根据输入音源通道号设置音源的电源开关
SC7313_WriteData( SC7313_Audio | ((3-Gain)<<3) | (Loudnes<<2) | Stereo ); //[BIT4:0]
delay_ms(100); //延时
AMUTE = 0; //取消功放静音
}
//================================================================================
//函数名称:
//函数说明:
//入口参数:
//出口参数: 无
//================================================================================
//设置主音量值0~63
void SC7313_SetVolumeValue(unsigned char Volume)
{
if(Volume>63){Volume=63;}// Volume&0x3F
SC7313_WriteData(SC7313_Volume | (63-Volume)); //[BIT5:0]
}
//================================================================================
//函数名称:
//函数说明:
//入口参数:
//出口参数: 无
//================================================================================
//设置主音量级别 0~15
void SC7313_SetVolume(unsigned char Volume)
{
if(Volume>15){Volume=15;}// Volume&0x3F
SC7313_WriteData(SC7313_Volume | TABLE_Volume[Volume]); //[BIT5:0]
}
//================================================================================
//函数名称:
//函数说明:
//入口参数:
//出口参数: 无
//================================================================================
//设置音调(低音)0~14 //-14db ~ +14db 7=0db
void SC7313_SetBass(unsigned char Volume)
{
if(Volume>14){Volume=14;}// Volume&0x0F
SC7313_WriteData(SC7313_Bass | TABLE_Tone[Volume]); //[BIT3:0]
}
//================================================================================
//函数名称:
//函数说明:
//入口参数:
//出口参数: 无
//================================================================================
//设置音调(高音) 0~14 //-14db ~ +14db 7=0db
void SC7313_SetTreble(unsigned char Volume)
{
if(Volume>14){Volume=14;}// Volume&0x0F
SC7313_WriteData(SC7313_Treble | TABLE_Tone[Volume]); //[BIT3:0]
}
//================================================================================
//函数名称:
//函数说明:
//入口参数:
//出口参数: 无
//================================================================================
//设置四个扬声器衰减0db ~ -30db Volume(31)0x1F=MUTE
void SC7313_SetSpeaker(unsigned char Speaker, unsigned char Volume)
{
unsigned char dat;
if(Volume>31){Volume=31;} // Volume&0x1F Volume(31)0x1F=MUTE
if(Speaker>3){Speaker=3;} //
switch(Speaker)
{
case 0:dat = SC7313_SpeakerLR | Volume;break;//后左声道
case 1:dat = SC7313_SpeakerRR | Volume;break;//后右声道
case 2:dat = SC7313_SpeakerLF | Volume;break;//前左声道
case 3:dat = SC7313_SpeakerRF | Volume;break;//前右声道
default:break;
}
SC7313_WriteData(dat); //[BIT4:0]
}
//--------------------------------------- SC7313基础设置 END-------------------------------------------//
//================================================================================
//函数名称:void SC7313_SetChannel(unsigned char Channel)
//函数说明:设置输入音源通道0~3
//入口参数: Channel:0~3
//出口参数: 无
//================================================================================
void SC7313_SetChannel(unsigned char Channel)
{
//Audio_Para[Audio_MainVolume] = //主音量 //范围值(0-63)
Audio_Para[Audio_MainChannel] = Channel; //声音通道 //范围值(0-2)
//Audio_Para[Audio_GainLevel] = //增益级别 //范围值(0-3)
//Audio_Para[Audio_LoudnessSW] = //响度开关 //范围值(0-1)
//Audio_Para[Audio_BassVolume] = //低音音量 //范围值(0-14)
//Audio_Para[Audio_TrebleVolume] = //高音音量 //范围值(0-14)
SC7313_SetAudio( Audio_Para[Audio_MainChannel], Audio_Para[Audio_GainLevel], Audio_Para[Audio_LoudnessSW] ); //设置输入音源通道0~3,增益0~3,开关0~1
//SC7313_SetAll(); //SC7313写入全部参数
}
//================================================================================
//函数名称:void SC7313_SetGain(unsigned char GainLevel)
//函数说明:设置输入音源增益0~3
//入口参数: GainLevel:0~3
//出口参数: 无
//================================================================================
void SC7313_SetGain(unsigned char GainLevel)
{
//Audio_Para[Audio_MainVolume] = //主音量 //范围值(0-63)
//Audio_Para[Audio_MainChannel] = Channel; //声音通道 //范围值(0-2)
Audio_Para[Audio_GainLevel] = GainLevel; //增益级别 //范围值(0-3)
//Audio_Para[Audio_LoudnessSW] = //响度开关 //范围值(0-1)
//Audio_Para[Audio_BassVolume] = //低音音量 //范围值(0-14)
//Audio_Para[Audio_TrebleVolume] = //高音音量 //范围值(0-14)
SC7313_SetAudio( Audio_Para[Audio_MainChannel], Audio_Para[Audio_GainLevel], Audio_Para[Audio_LoudnessSW] ); //设置输入音源通道0~3,增益0~3,开关0~1
//SC7313_SetAll(); //SC7313写入全部参数
}
//================================================================================
//函数名称:void SC7313_SetLoudness(unsigned char SW)
//函数说明:设置输入音源响度开关0~1
//入口参数: SW:0~1
//出口参数: 无
//================================================================================
void SC7313_SetLoudness(unsigned char SW)
{
//Audio_Para[Audio_MainVolume] = //主音量 //范围值(0-63)
//Audio_Para[Audio_MainChannel] = Channel; //声音通道 //范围值(0-2)
//Audio_Para[Audio_GainLevel] = //增益级别 //范围值(0-3)
Audio_Para[Audio_LoudnessSW] = SW; //响度开关 //范围值(0-1)
//Audio_Para[Audio_BassVolume] = //低音音量 //范围值(0-14)
//Audio_Para[Audio_TrebleVolume] = //高音音量 //范围值(0-14)
SC7313_SetAudio( Audio_Para[Audio_MainChannel], Audio_Para[Audio_GainLevel], Audio_Para[Audio_LoudnessSW] ); //设置输入音源通道0~3,增益0~3,开关0~1
//SC7313_SetAll(); //SC7313写入全部参数
}
//================================================================================
//函数名称:void SC7313_VolumeUP()
//函数说明:主音量级别++ 0~15
//入口参数: 无
//出口参数: 无
//================================================================================
void SC7313_VolumeUP()
{
if(Audio_Para[Audio_MainVolume]<15)
{
Audio_Para[Audio_MainVolume] ++; //主音量 //范围值(0-15)
SC7313_SetVolume( Audio_Para[Audio_MainVolume] ); //设置主音量级别 0~15
}
}
//================================================================================
//函数名称:void SC7313_VolumeDOWN()
//函数说明:主音量级别-- 0~15
//入口参数: 无
//出口参数: 无
//================================================================================
void SC7313_VolumeDOWN()
{
if(Audio_Para[Audio_MainVolume]>0)
{
Audio_Para[Audio_MainVolume] --; //主音量 //范围值(0-15)
SC7313_SetVolume( Audio_Para[Audio_MainVolume] ); //设置主音量级别 0~15
}
}
//================================================================================
//函数名称:void SC7313_ChannelUP()
//函数说明:切换输入音源通道++ 0~3
//入口参数: 无
//出口参数: 无
//================================================================================
void SC7313_ChannelUP()
{
Audio_Para[Audio_MainChannel] ++; //声音通道 //范围值(0-2)
if(Audio_Para[Audio_MainChannel]>2)
{
Audio_Para[Audio_MainChannel] = 0;
}
SC7313_SetAudio( Audio_Para[Audio_MainChannel], Audio_Para[Audio_GainLevel], Audio_Para[Audio_LoudnessSW] ); //设置输入音源通道0~3,增益0~3,开关0~1
}
//================================================================================
//函数名称:void SC7313_ChannelDOWN()
//函数说明:切换输入音源通道-- 0~3
//入口参数: 无
//出口参数: 无
//================================================================================
void SC7313_ChannelDOWN()
{
Audio_Para[Audio_MainChannel] --; //声音通道 //范围值(0-2)
if(Audio_Para[Audio_MainChannel]<0)
{
Audio_Para[Audio_MainChannel] = 2;
}
SC7313_SetAudio( Audio_Para[Audio_MainChannel], Audio_Para[Audio_GainLevel], Audio_Para[Audio_LoudnessSW] ); //设置输入音源通道0~3,增益0~3,开关0~1
}
//================================================================================
//函数名称:void SC7313_SetAll()
//函数说明:SC7313写入全部参数
//入口参数: 无
//出口参数: 无
//================================================================================
void SC7313_SetAll()
{
SC7313_SetVolume( Audio_Para[Audio_MainVolume] ); //设置主音量 0~15
SC7313_SetAudio( Audio_Para[Audio_MainChannel], Audio_Para[Audio_GainLevel], Audio_Para[Audio_LoudnessSW] ); //设置输入音源通道0~3,增益0~3,开关0~1
SC7313_SetSpeaker(0, 0); //后左声道//设置扬声器衰减0db ~ -30db Volume(31)0x1F=MUTE
SC7313_SetSpeaker(1, 0); //后右声道//设置扬声器衰减0db ~ -30db Volume(31)0x1F=MUTE
SC7313_SetSpeaker(2, 0); //前左声道//设置扬声器衰减0db ~ -30db Volume(31)0x1F=MUTE
SC7313_SetSpeaker(3, 0); //前右声道//设置扬声器衰减0db ~ -30db Volume(31)0x1F=MUTE
SC7313_SetBass( Audio_Para[Audio_BassVolume] ); //+6db 设置音调(低音)0~14 //-14db ~ +14db 7=0db
SC7313_SetTreble( Audio_Para[Audio_TrebleVolume] ); //+2db 设置音调(高音)0~14 //-14db ~ +14db 7=0db
}
//================================================================================
//函数名称:
//函数说明:
//入口参数:
//出口参数: 无
//================================================================================
//SC7313初始化
void SC7313_Init1(void)
{
SC7313_WriteData(0x3F); //SC7313_Volume //主音量 最小
SC7313_WriteData(0x5C); //SC7313_Audio //Stereo 1 Loudness OFF 0dB
SC7313_WriteData(0xC0); //SC7313_SpeakerLR //后左声道
SC7313_WriteData(0xE0); //SC7313_SpeakerRR //后右声道
SC7313_WriteData(0x80); //SC7313_SpeakerLF //前左声道
SC7313_WriteData(0xA0); //SC7313_SpeakerRF //前右声道
SC7313_WriteData(0x6C); //SC7313_Bass //低音 +6db
SC7313_WriteData(0x7E); //SC7313_Treble //高音 +2db
delay_ms(300);
SC7313_WriteData(0x0C); //SC7313_Volume //主音量12
SC7313_WriteData(0x44); //SC7313_Audio //Stereo 1 Loudness ON +11.25dB
SC7313_WriteData(0xC0); //SC7313_SpeakerLR //后左声道
SC7313_WriteData(0xE0); //SC7313_SpeakerRR //后右声道
SC7313_WriteData(0x80); //SC7313_SpeakerLF //前左声道
SC7313_WriteData(0xA0); //SC7313_SpeakerRF //前右声道
SC7313_WriteData(0x6C); //SC7313_Bass //低音
SC7313_WriteData(0x7E); //SC7313_Treble //高音
}
//================================================================================
//函数名称:
//函数说明:
//入口参数:
//出口参数: 无
//================================================================================
//SC7313初始化
void SC7313_Init(void)
{
SC7313_SCL = 1; //I2C总线的时钟线
SC7313_SDA = 1; //I2C总线的数据线
SC7313_SetVolume(0); //设置主音量 0~15
SC7313_SetAudio(3, 0, 0); //设置输入音源通道0~3,增益0~3,开关0~1
SC7313_SetSpeaker(0, 0); //后左声道//设置扬声器衰减0db ~ -30db Volume(31)0x1F=MUTE
SC7313_SetSpeaker(1, 0); //后右声道//设置扬声器衰减0db ~ -30db Volume(31)0x1F=MUTE
SC7313_SetSpeaker(2, 0); //前左声道//设置扬声器衰减0db ~ -30db Volume(31)0x1F=MUTE
SC7313_SetSpeaker(3, 0); //前右声道//设置扬声器衰减0db ~ -30db Volume(31)0x1F=MUTE
SC7313_SetBass(10); //+6db 设置音调(低音)-14db ~ +14db 7=0db
SC7313_SetTreble(8); //+2db 设置音调(高音)-14db ~ +14db 7=0db
delay_ms(100);
SC7313_SetAll(); //SC7313写入全部参数
}
音量控制 单片机c 语言,(封贴)请大神代写音响音量控制程序(有偿代写)单片机加TDA7313控制...相关推荐
- 理解C#语言中的类型转换----初学者的理解,请大神指教
一下都是在视频教学中学到后的理解,如果说错了请大神指教 C#语言中的类型转换,就是将某个数据要转换成另一个类型的数据. c#语言中的数据类型主要有: char类型(字符类型): string类型(字符 ...
- 要不要从单片机转Linux?进来看看大神怎么说
[经验] 要不要从单片机转Linux?进来看看大神怎么说 [复制链接] 也随风落 2 TA的帖子 0 TA的资源 一粒金砂(初级) Rank: 1 发消息加好友 电梯直达 跳转到指定楼层 楼主 发表于 ...
- C语言/C++程序员大神打造纯C的电子时钟(加图形库+源码)
C语言/C++程序员大神打造纯C的电子时钟,每天看时间再也不麻烦了 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进 ...
- java 控制台刷屏 dll_Java刷屏问题,下面是我编的代码,请大神帮忙解决下,谢谢...
importjava.awt.*;importjavax.swing.*;importjava.awt.event.*;publicclassjiemianextendsJFrame{JButtonz ...
- ctrl跳转失败 studio uap_uap进不去,重装studio和uap都不能行,请大神给看看
直接启动uap没问题可以进去,但是从studio启动就进不去,启动后在浏览器端一直转圈圈 卸载重装了uap和studio后也还是报一样的错误,难道要重装系统,请大神给看看 @devin2014 @b ...
- realplayer java,不同浏览器调用realplayer插件在线播放视频的有关问题,请大神们进来看看...
不同浏览器调用realplayer插件在线播放视频的问题,请大神们进来看看 上面代码是调用realplayer实现在线播放的,在安装realplayer后IE.火狐.chrome都是可以播放的,但是在 ...
- 我是一个新手小白,想学习C++编程,但是不知道该如何入手。请大神们给出一个简单的思路。
如题所示,我现在准备学习C++编程语言,因为是0基础,所以入门也显的很迷茫,也看过一些视频,感觉讲的很好,但就是听得云里雾里,看着视频也会尝试敲一些代码,但是代码的意思,也都不懂,不知道该如何入手,所 ...
- 复合线转权属线lisp_请大神帮忙分析这一点处怎么可能是裂缝(检查多段线之间的缝隙)...
本帖最后由 changyiran 于 2012-8-21 16:49 编辑 [code="lisp] (defun fjdb(en / x);返回轻量多段线的点表 (vl-remove-if ...
- wps里的茶色字体怎么设置_《excel颜色筛选》 WPS2019的EXCEL整行填充一种颜色保存后关闭再打开就变成两种深浅不同的颜色是怎么回事呢?请大神帮忙解决...
WPS2019的EXCEL整行填充一种颜色保存后关闭再打开就变成两种深浅不同的颜色是怎么回事呢?请大神帮忙解决 格式刷提取那个单元格格式复制后颜色,保存后打开也的吗? 还有你可以右键单元格后下两种的图 ...
- 小程序,开发者微信登录可以发消息,换个微信号就发不了消息,请大神指点
自己写的小程序,开发者微信登录可以发消息,换个微信号就发不了消息,请大神指点 我用其它的微信号,无法打开"真机调试",所以也不知道问题出在哪里? 1.请问一下,普通的微信号,如何打 ...
最新文章
- python未将对象引用设置到对象的实例_未将对象引用设置到对象的实例(SystemNullReferenceException)...
- Hadoop之Hadoop企业优化(HDFS小文件优化)
- ServletActionContext.getRequest().getSession() 和 ActionContext.getContext().getSession()的区别
- linux不重启换root密码是什么原因,在Linux下修改和重置root密码的方法(超简单)
- 翻车实录之Nature Medicine新冠单细胞文献|附全代码
- python知识笔记_[Python笔记]第一篇:基础知识
- centos 怎样显示metric_centos7系列问题
- ZOJ 3867 Earthstone: Easy Version
- pyqt5菜鸟教程_PyQt5教程(一)——第一个PyQt5程序
- 3d建模师是吃青春饭的吗?混子上限也就8K,资历能力都很重要
- meta—learning调研及MAML概述
- 微博热词搜索并生成云词html(完整)
- Centos6使用阿里云centos-vault的yum源
- 双月学习OKR(67月)
- 开发者在掘金路上的选择
- 领导对你说这3句“小话”,表面关心,实则敲打,不改将被弃用
- 2020年腾讯丶百度丶字节丶OPPO等Android面试大全,附带教你如何写好简历
- ddraw 的blt 方法
- oracle服务器 驱动安装教程,oracle服务器 驱动安装
- c4d python 插件_更新C4D地面对齐插件Cinema 4D Plugin Drop To Floor R20 1.1 支持R14-C4D R20...
热门文章
- 计算机二级数据模拟表,2020年计算机二级《Access数据库程序设计》模拟题(5)...
- android获取GPS权限
- 计量经济学学习笔记:多元线性模型
- 2020年 高教社杯 全国大学生数学建模竞赛【论文格式规范】
- mysql 生成假数据_一个好玩的假数据生成器mimesis
- 局域网ip扫描工具_IP Scanner Pro——ip局域网扫描工具
- 组态TwinCat软件安装时,There are some files marked for deletion on next reboot.Please reboot first and then
- 淘客帝国4.0免费版网页模板修改及n…
- Ubuntu18.04 下载与安装(阿里云官方镜像站)
- 透明FLASH的插入方法