📄 dac.c
字号:
//DAC实验
#include "DSP28_Device.h"
#define SPI_SEL_REG *(unsigned int*)0x2004
#define DA_SPI 0X03
void WriteDAC(unsigned data);
void delay(unsigned long);
void main(void)
{
InitSysCtrl(); //初始化系统
DINT; //关中断
IER = 0x0000;
IFR = 0x0000;
InitPieCtrl(); //初始化PIE控制寄存器
InitPieVectTable(); //初始化PIE参数表
InitPeripherals(); //初始化外设寄存器
InitGpio(); //初始化GPIO
InitSpi(); //初始化SPI
EINT; //Enable INTM
ERTM; //Enable DBGM
SPI_SEL_REG=DA_SPI;
for(;;)
{
WriteDAC(0x000);
delay(50000);
WriteDAC(0x200);
delay(50000);
WriteDAC(0x400);
delay(50000);
WriteDAC(0x600);
delay(50000);
WriteDAC(0x800);
delay(50000);
WriteDAC(0xA00);
delay(50000);
WriteDAC(0xC00);
delay(50000);
WriteDAC(0xE00);
delay(50000);
WriteDAC(0xC00);
delay(50000);
WriteDAC(0xA00);
delay(50000);
WriteDAC(0x800);
delay(50000);
WriteDAC(0x600);
delay(50000);
WriteDAC(0x400);
delay(50000);
WriteDAC(0x200);
}
}
void WriteDAC(unsigned data)
{
if(Spi_TxReady() == 1)
SpiaRegs.SPITXBUF = data;
delay(500000);
if(Spi_TxReady() == 1)
SpiaRegs.SPITXBUF = data;
delay(500000);
}
void delay(unsigned long t)
{
while(t>0)
t--;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -