请问x9c104数字电位器模块的接线方法,要求两个点动开关控制单声道音量的大小,请告诉我怎么样接线
发布网友
发布时间:2022-04-24 19:51
我来回答
共1个回答
热心网友
时间:2023-10-09 03:41
#include"reg52.h"
#include"intrins.h"
#define uchar unsigned char
sbit inc=P0^0; //脉冲输出端
sbit ud=P0^1; //方向端
sbit cs=P0^2; //片选端
sbit led=P2^0; //指示灯
/*以下是函数声明*/
void x9c104s_inc(uchar number);
void x9c104s_dec(uchar number);
void x9c104s_set(uchar number);
/*设定初始值*/
void x9c104s_set(uchar number)
{
uchar i;
inc=1;
_nop_();
_nop_();
cs=0;
_nop_();
_nop_();
ud=0; //方向为减
_nop_();
_nop_();
for(i=0;i<100;i++) /*因为该芯片为100抽头 所以先清零*/
{
inc=1;
_nop_();
_nop_();
inc=0;
_nop_();
_nop_();
}
ud=1; //方向朝上
_nop_();
_nop_();
for(i=0;i<number;i++) //设定初始值
{
inc=1;
_nop_(); //下降沿有效
_nop_();
inc=0;
_nop_();
_nop_();
}
inc=1; //以下为保存设定值
_nop_();
_nop_();
cs=1;
_nop_();
_nop_();
ud=1;
_nop_();
_nop_();
inc=1;
}
/*函数为重新增加阻值*/
void x9c104s_inc(uchar number)
{
uchar i;
inc=1;
_nop_();
_nop_();
cs=0;
_nop_();
_nop_();
ud=1;
_nop_();
_nop_();
for(i=0;i<number;i++) //设定阻值
{
inc=1;
_nop_();
_nop_();
inc=0;
_nop_();
_nop_();
}
inc=1; //以下为保存设定值
_nop_();
_nop_();
cs=1;
_nop_();
_nop_();
ud=1;
_nop_();
_nop_();
inc=1;
}
/*函数为阻值减小*/
void x9c104s_dec(uchar number)
{
uchar i;
inc=1; //选中该芯片
_nop_();
_nop_();
cs=1;
_nop_();
_nop_();
ud=0; //方向为减小
_nop_();
_nop_();
for(i=0;i<number;i++)
{
inc=1;
_nop_();
_nop_();
inc=0;
_nop_();
_nop_();
}
inc=1; //保存设定值
_nop_();
_nop_();
cs=1;
_nop_();
_nop_();
ud=1;
_nop_();
_nop_();
inc=1;
}
void main()
{
led=0;
x9c104s_set(10);
x9c104s_inc(60); //三个函数都使用一下 防止警告
x9c104s_dec(10);
}
请问x9c104数字电位器模块的接线方法,要求两个点动开关控制单声道音量...
sbit ud=P0^1; //方向端 sbit cs=P0^2; //片选端 sbit led=P2^0; //指示灯 /*以下是函数声明*/ void x9c104s_inc(uchar number);void x9c104s_dec(uchar number);void x9c104s_set(uchar number);/*设定初始值*/ void x9c104s_set(uchar number){ uchar i;inc=1;_...
51单片机如何控制x9c104p数字电位器
sbit ud=P0^1; //方向端 sbit cs=P0^2; //片选端 sbit led=P2^0; //指示灯 /*以下是函数声明*/ void x9c104s_inc(uchar number);void x9c104s_dec(uchar number);void x9c104s_set(uchar number);/*设定初始值*/ void x9c104s_set(uchar number){ uchar i;inc=1;_...