📄 max541.c
字号:
#include <reg51.h>
#include "MAX541.h"
//短延时函数:ShortDelay()
void nNop(uchar i)
{
for(;i>0;i--) ;
}
//长延时函数:LongDelay()
void LongDelay(uint i)
{
uint j;
for(;i>0;i--)
{ for(j=1000;j>0;j--);}
}
//向SPI写16bits数据函数:SPIWrite()
void SPIWrite(int temp)
{
uint i;
for(i=0;i<16;i++)
{
PinDIN = (bit) (temp & 0x8000);
SetSCLK(0);
temp <<= 1;
nNop(1);
SetSCLK(1);
nNop(1);
}
}
//将电压值转换为对应的12bits数字量函数:VoltToData()
int VoltToData(float out_volt)
{
int temp;
temp = (int)((out_volt*65536) / (REF_VOLT));
return(temp & 0xffff);
}
//设置DAC输出函数:SetMAX541()
void SetMAX541(float temp)
{
int Data;
Data = VoltToData(temp);
SetCS(0);
SPIWrite(Data);
nNop(2);
SetCS(1);
nNop(2);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -