数字电位器C程序X9313W驱动程序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字电位器C程序汇总(X9313W驱动程序)
2009-01-06 22:54
/*************************************/
/* X9313W驱动程序*/
/* 版本号:V1.0 */
/*************************************/
/*************************************/
/* 文件包含*/
/*************************************/
#include
#include
/*************************************/
/* IO口地址定义*/
/*************************************/
sbit X9313W_INC = P3^0; //计数脉冲输入端,下降沿触发sbit X9313W_UPDN = P3^1; //方向,高电平加、低电平减sbit X9313W_CS = P3^2; //片选,低电平有效
/*************************************/
/* 调整电阻到第RNumber阶阻值*/
/*入口:RNumber:阶阻值0~31 */
/*出口:无*/
/*************************************/
void X9313W_SetVol(unsigned char RNumber)
{
unsigned char i;
X9313W_INC = 1;
_nop_();
_nop_();
X9313W_CS = 0;
_nop_();
_nop_();
X9313W_UPDN = 0; //先调到0
for(i=0;i<32;i++){
X9313W_INC = 1;
_nop_();
_nop_();
X9313W_INC = 0;
_nop_();
_nop_();
}
X9313W_UPDN = 1; //调到指定值
for(i=0;i X9313W_INC=1; _nop_(); _nop_(); X9313W_INC=0; _nop_(); _nop_(); } X9313W_INC = 1; //电阻值保存 _nop_(); _nop_(); X9313W_CS = 1; _nop_(); _nop_(); X9313W_UPDN = 1; _nop_(); _nop_(); X9313W_INC = 1; } /*************************************/ /* 调整电阻增加RNumber阶阻值*/ /*入口:RNumber:阶阻值0~31 */ /*出口:无*/ /*************************************/ /* void X9313W_IncVol(unsigned char RNumber) { unsigned char i; X9313W_INC = 1; _nop_(); _nop_(); X9313W_CS = 0; _nop_(); _nop_(); X9313W_UPDN = 1; //加RNumber个指定值for(i=0;i X9313W_INC=1; _nop_(); X9313W_INC=0; _nop_(); _nop_(); } X9313W_INC = 1; //电阻值保存 _nop_(); _nop_(); X9313W_CS = 1; _nop_(); _nop_(); X9313W_UPDN = 1; _nop_(); _nop_(); X9313W_INC = 1; } /*************************************/ /* 调整电阻减少RNumber阶阻值*/ /*入口:RNumber:阶阻值0~31 */ /*出口:无*/ /*************************************/ /* void X9313W_DecVol(unsigned char RNumber) { unsigned char i; X9313W_INC = 1; _nop_(); _nop_(); X9313W_CS = 0; _nop_(); _nop_(); X9313W_UPDN = 0; //减RNumber个指定值for(i=0;i X9313W_INC=1; _nop_(); _nop_(); X9313W_INC=0; _nop_(); _nop_(); } X9313W_INC = 1; //电阻值保存