DSP-F2812-SPI数模转换例程

上传人:go****e 文档编号:134372754 上传时间:2020-06-04 格式:DOCX 页数:3 大小:13.44KB
返回 下载 相关 举报
DSP-F2812-SPI数模转换例程_第1页
第1页 / 共3页
DSP-F2812-SPI数模转换例程_第2页
第2页 / 共3页
DSP-F2812-SPI数模转换例程_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《DSP-F2812-SPI数模转换例程》由会员分享,可在线阅读,更多相关《DSP-F2812-SPI数模转换例程(3页珍藏版)》请在金锄头文库上搜索。

1、/* *注意开SPI的时钟!2011年10月29日9:44:52DA芯片是TLV5620,数据线和时钟都是用SPI的,LOAD线用GPIOA15来控制!*/#include DSP28_Device.hvoid Gpio_select(void);void spi_init(void);void dac_load(char channel,int value);interrupt void cpu_timer0_isr(void);void main(void)Uint16 voltage = 0;/*初始化系统*/InitSysCtrl();/*关中断*/DINT;IER = 0x0000;

2、IFR = 0x0000;/清中断/*初始化PIE*/InitPieCtrl();/*初始化PIE中断矢量表*/InitPieVectTable();Gpio_select();spi_init();EALLOW;PieVectTable.TINT0 = &cpu_timer0_isr;EDIS;InitCpuTimers();ConfigCpuTimer(&CpuTimer0,120,1000);PieCtrl.PIEIER1.bit.INTx7 = 1;IER |= M_INT1;EINT;ERTM;CpuTimer0Regs.TCR.bit.TSS = 0;for(;)while(Cpu

3、Timer0.InterruptCount 255)voltage = 0; void Gpio_select(void)EALLOW; GpioMuxRegs.GPFMUX.bit.SPICLKA_GPIOF2 = 1; GpioMuxRegs.GPFMUX.bit.SPISIMOA_GPIOF0 = 1; GpioMuxRegs.GPADIR.bit.GPIOA15 = 1; GpioDataRegs.GPASET.bit.GPIOA15 = 1; EDIS;void spi_init(void)SpiaRegs.SPICCR.all = 0x0000;/spi sw reset = 0;

4、SpiaRegs.SPICTL.bit.CLK_PHASE = 1;/设置clock phase,输出早于输入SpiaRegs.SPICTL.bit.MASTER_SLAVE = 1;SpiaRegs.SPICTL.bit.TALK = 1;SpiaRegs.SPIBRR = 0x001d;/30M / (29 + 1) = 1MHZSpiaRegs.SPICCR.all = 0x00ca;/ spi sw reset = 1;clock polarity = 1;interrupt void cpu_timer0_isr(void)CpuTimer0.InterruptCount +;Pie

5、Ctrl.PIEACK.all = PIEACK_GROUP1;void dac_load(char channel,int value)SpiaRegs.SPICCR.bit.RESET = 1;/准备发送SpiaRegs.SPITXBUF = value 5;/因为是11位数据,要保证左对齐需左移5位while(SpiaRegs.SPISTS.bit.INT_FLAG = 0);SpiaRegs.SPICCR.bit.RESET = 0;/清标志GpioDataRegs.GPACLEAR.bit.GPIOA15 = 1;asm( rpt #500 | nop);GpioDataRegs.GPASET.bit.GPIOA15 = 1;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 幼儿/小学教育 > 其它小学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号