📄 ds1267.c
字号:
#include "SPCE061V004.H"
#define Set_IOA_Bit(x) (*P_IOA_Data = *P_IOA_Buffer | x)
#define Clear_IOA_Bit(x) (*P_IOA_Data = *P_IOA_Buffer & ~x)
#define DQ 0x0001 //IOA0
#define CLK 0x0002 //IOA1
#define RST 0x0004 //IOA2
//************************************************************************//
//控制DS1267的电阻值大小,最大0x00ff,最小0
//************************************************************************//
void CtrlAM(unsigned int ma)
{
unsigned int mask = 0x0001,i,Bit0=0;
unsigned int data_val; //数控电位器的控制字
// *P_IOA_Dir =0xffff;
// *P_IOA_Attrib=0xffff;
// *P_IOA_Data=0x0000;
data_val=ma;
Clear_IOA_Bit(CLK);
//送b0位
Set_IOA_Bit(RST);
if(mask & Bit0)
Set_IOA_Bit(DQ);
else
Clear_IOA_Bit(DQ);
Set_IOA_Bit(CLK);
delay();
Clear_IOA_Bit(CLK);
delay();
//送后16位
mask=0x8000;
for(i=0;i<16;i++)
{ *P_Watchdog_Clear= 0x0001;
if(mask & data_val)
Set_IOA_Bit(DQ);
else
Clear_IOA_Bit(DQ);
Set_IOA_Bit(CLK);
delay();
Clear_IOA_Bit(CLK);
delay();
mask=mask>>1;
}
Clear_IOA_Bit(RST);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -