标题:
X9313 数字电位计驱动程序
[打印本页]
作者:
wudawei
时间:
2015-1-1 17:24
标题:
X9313 数字电位计驱动程序
//硬件连接: INC——P0^0;
// UD ——P0^1;
// CS ——P0^2;
// VDD--逻辑电源(+5V)
// VSS--GND(0V)
//X9313.c
//说明: X9313当设置其划向最大或者最小时,不会循环回复
//=====================================================================
#include <STC89C51RC.h> //STC单片机头文件
#include <intrins.h>
#define uint unsigned int
#define uchar unsigned char
//**************************修改硬件时要修改的部分********************************
sbit INC = P0^0; //加/减计数脉冲输入端
sbit UD = P0^1; //加/减计数控制端,高电平时加法计数,低电平时减法计数
sbit CS = P0^2; //片选输入端,低电平有效
//=================================================================
// 函数名称 :void X9313_set(uchar res,uchar ud)
// 函数功能 :设置X9313数字电位计的滑动方向以及滑动幅度
// 入口参数 : res 1~31 滑动的幅度 res每增加1,电位器电阻增加或减少10/31K
// ud 0 1 滑动方向 0:向低端滑动 1:向高端滑动
// 出口参数 :无
//=================================================================
void X9313_set(uchar res,uchar ud)
{
uchar i;
switch(ud)
{
case 0:
UD=0; //U/D=0,向低端滑动
break;
case 1:
UD=1; //U/D=1,向高端滑动
break;
default:
break;
}
CS=0; //片选有效
for(i=0;i<res;i++)
{
INC=0;
_nop_();
INC=1;
_nop_();
}
CS=1; //片选无效
}
//=================================================================
// 函数名称 :int main(void)
// 函数功能 :主函数,无实际意义,仅测试9313用
// 入口参数 :无
// 出口参数 :无
//=================================================================
int main(void)
{
X9313_set(31,0);//覆盖原来数据,使电位器从最低端开始
X9313_set(16,1);
while(1);
}
复制代码
作者:
兄弟一生有你
时间:
2017-7-26 11:13
有仿真图嘛,
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1