⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dac.c

📁 DSP2812 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 + -