📄 max504.c
字号:
#include "44b.h"
#include "Exio.h"
#include "uhal.h"
#define MAX504_CS 0x2 //EXIO1
#define MAX504_CLR 0x1 //EXIO0
#define SIOLSB 0x40
#define MAX504_ENABLE() do{CLREXIOBIT(MAX504_CS);}while(0)
#define MAX504_DISABLE() do{SETEXIOBIT(MAX504_CS);}while(0)
#define MAX504_CLEAR() do{CLREXIOBIT(MAX504_CLR); Delay(1); SETEXIOBIT(MAX504_CLR);}while(0)
#define Max504_FULL 4.096f
void Max504_SetDA(int value)
{
value<<=2;//左移两位
MAX504_CLEAR();//将DAC寄存器设为0
Delay(1);
MAX504_ENABLE();//开启MAX504
SendSIOData(value>>8);//发送高8位
SendSIOData(value);//发送低8位
MAX504_DISABLE();//关闭MAX504
}
void DA_Test()
{
int i;
float v;
Uart_Printf("\nAD begin output\n");
for(i=0;i<1024;i+=8){
Max504_SetDA(i);
v=((float)i)*Max504_FULL/1024.0f;
Uart_Printf("Current Voltage=%1.2fV\r",v);
Delay(1000);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -