STM8S X9C104驱动代码

来源:互联网 发布:如何介绍云计算 编辑:程序博客网 时间:2024/05/06 03:53
#define X9C_INC GPIO_PIN_5
#define X9C_CS GPIO_PIN_1
#define X9C_UDGPIO_PIN_2
#define INC_High GPIO_WriteHigh(GPIOE,X9C_INC);
#define INC_Low GPIO_WriteLow(GPIOE,X9C_INC);
#define CS_High GPIO_WriteHigh(GPIOC,X9C_CS);
#define CS_Low GPIO_WriteLow(GPIOC,X9C_CS);
#define UD_High GPIO_WriteHigh(GPIOC,X9C_UD);
#define UD_Low GPIO_WriteLow(GPIOC,X9C_UD);


void X9C104_Set(uint8_t num);
void X9C104_Inc(uint8_t num);
void X9C104_Dec(uint8_t num);


void X9C104_Set(uint num)
{
uint8_t i;
INC_High;
_nop_();
_nop_();
CS_Low;
_nop_();
_nop_();
UD_Low;
/* 清除X9C104里的值 */
for(i=0;i<100;i++)
{
INC_High;
_nop_();
_nop_();
INC_Low;
_nop_();
_nop_();
}
UD_High;
_nop_();
_nop_();
/* 设置X9C104的值 */
for(i=0;i<num;i++)
{
INC_High;
_nop_();
_nop_();
INC_Low;
_nop_();
_nop_();
}
/* 关闭时钟,片选,保存*/
INC_High;
_nop_();
_nop_();
CS_High;
_nop_();
_nop_();
INC_High;
}
void X9C104_Inc(uint8_t num)
{
uint8_t i;
INC_High;
_nop_();
_nop_();
CS_Low;
_nop_();
_nop_();
UD_High;
_nop_();
_nop_();
for(i=0;i<num;i++)
{
INC_High;
_nop_();
_nop_();
INC_Low();
_nop_();
_nop_();
}
INC_High;
_nop_();
_nop_();
CS_High;
_nop_();
_nop_();
INC_High;
}
void X9C104_Dec(uint8_t num)
{
uint8_t i;
INC_High;
_nop_();
_nop_();
CS_Low;
_nop_();
_nop_();
UD_Low;
_nop_();
_nop_();
for(i=0;i<num;i++)
{
INC_High;
_nop_();
_nop_();
INC_Low();
_nop_();
_nop_();
}
INC_High;
_nop_();
_nop_();
CS_High;
_nop_();
_nop_();
INC_High;
}
0 0
原创粉丝点击