创龙DSP6748的DAC例程研究

1. 创龙DSP6748开发板驱动TL5724这个DAC,输出指定的电压值,此程序是使用 IO 口模拟 SPI 实现与 TL5724 模块的数据交互。

2. 首先是初始化PSC函数

void PSCInit(void)
{// 使能 GPIO 模块
    PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);
}

2. DAC的读写函数

    // 管脚复用配置
    GPIOBankPinMuxSet();
    ConfigAD5754R();
    // 输出电压配置
    cstr = DAC_Register | DAC_Channel_A | DACOut(3, 10);
    WriteToAD5754RViaSpi(&cstr);

3. GPIO的配置

    HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(4)) = (0x80000000);
    HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(5)) = (0x00880800);
    HWREG(SOC_SYSCFG_0_REGS + SYSCFG0_PINMUX(13)) = (0x00000080);

    // 配置管脚为输出状态
    GPIODirModeSet(SOC_GPIO_0_REGS, 17, GPIO_DIR_OUTPUT);   // GPIO6[2]
    GPIODirModeSet(SOC_GPIO_0_REGS, 111, GPIO_DIR_OUTPUT);  // GPIO6[7]
    GPIODirModeSet(SOC_GPIO_0_REGS, 43, GPIO_DIR_OUTPUT);   // GPIO2[10]
    GPIODirModeSet(SOC_GPIO_0_REGS, 44, GPIO_DIR_INPUT);    // GPIO2[11]
    GPIODirModeSet(SOC_GPIO_0_REGS, 46, GPIO_DIR_OUTPUT);   // GPIO2[13]

    // LDAC
    GPIOPinWrite(SOC_GPIO_0_REGS, 111, GPIO_PIN_LOW); // LDAC
    GPIOPinWrite(SOC_GPIO_0_REGS, 46, GPIO_PIN_LOW);  // CLK
    GPIOPinWrite(SOC_GPIO_0_REGS, 43, GPIO_PIN_HIGH); // SDIN
    GPIOPinWrite(SOC_GPIO_0_REGS, 17, GPIO_PIN_HIGH); // SYNC

4. 其实读写都是模拟的GPIO而已

void WriteToAD5754RViaSpi(int *RegisterData)
{
    int ValueToWrite = *RegisterData;
    int i;
    // SPI start
    SET_SYNC();
    delay(10);
    CLR_SYNC();     // bring CS low
    delay(1);
    // Write out the ControlWord
    for(i = 0; i < 24; i++)
    {
        SET_SCLK();
        delay(5);

        if(0x800000 == (ValueToWrite & 0x800000))
        {
            SET_SDIN();      //Send one to SDI pin
        }
        else
        {
            CLR_SDIN();      //Send zero to SDI pin
        }
        delay(5);
        CLR_SCLK();
        delay(5);
        ValueToWrite <<= 1;    //Rotate data
        delay(5);
    }
    // SPI ends
    SET_SYNC();
    delay(10);
}

5. 插上子板卡,烧写程序,测试,用万用表量下电压,对比串口输出的电压值换算一下。

原文地址:https://www.cnblogs.com/429512065qhq/p/8496747.html

时间: 2024-10-08 06:35:27

创龙DSP6748的DAC例程研究的相关文章

创龙DSP6748开发板测试-第一篇(未完)

1. 创龙DSP6748开发板测试.2980元的售价很高,我估计新的1200元比较合适,当然创龙定价是按照供需关系的.仿真器XDS100V2卖598元,真是狮子大张口. 2. 上电是5V-2A的电源. 原文地址:https://www.cnblogs.com/429512065qhq/p/8395009.html

创龙DSP6748开发板LED闪烁

1. 首先看下DSP6748的GPIO寄存器的文档,先看下框图,有这个框图,一目了然,输入和输出很清楚 2. 看下寄存器部分,对应上面的图,问题在于,DSP6748有多少个GPIO?最多144个,下一个问题,startware和CSL芯片支持库之间的关系? 3. 看下原理图,用了4个GPIO,BANK0的4个引脚. 4. 导入程序研究下,第一个函数,使能GPIO模块,重要的函数,如果使能定时器,估计也差不多用法 void PSCInit(void) { // 使能 GPIO 模块 // 对相应外

创龙DSP6748开发板SYS/BIOS的LED闪烁-第2篇

1. 作为1个456MHz的处理器,不跑个操作系统说不过去,直接打开工程\Demo\SYSBIOS\Application\GPIO_LED,主函数比较简单 // 创建任务 Task_create(taskMain, NULL, NULL); // 启动 SYS/BIOS 系统 BIOS_start(); 2. 把重点放在task的C文件在哪里?有哪些函数,熟悉一下D:\ti\bios_6_33_06_50\packages\ti\sysbios\knl,以前安装C6657的BIOS的包,里面有

创龙DSP6748学习之RS485收发

1. 先看下原理图,第一个问题,RS485其实就是使用的串口USART1,同时485的输出脚之间接120欧姆的电阻. 遇到个问题,为什么有两个使能引脚?还有RS485_A和RS485_B为什么分别接上拉和下拉电阻? 2. 看下代码部分,主要是串口的初始化和串口的收发, void UARTInit(void) { // 配置 UART1 参数 // 波特率 115200 数据位 8 停止位 1 无校验位 UARTConfigSetExpClk(SOC_UART_1_REGS, UART_1_FRE

【经验分享】基于创龙AM5708多核间通信的IPC例程通用开发流程

c此文章原创来源于:创龙电子 ? ? ? ??AM5708嵌入式开发板是一款由创龙基于TI AM570x浮点DSP C66x + ARM Cortex-A15工业控制及可编程音视频处理器.由SOM-TL570x工业核心板设计的开发板,它为用户提供了SOM-TL570x工业核心板的测试平台,用于快速评估SOM-TL570x工业核心板的整体性能.广泛应用于机器视觉.电力自动化.智能交通.医疗器械.自动分拣装置.高精度仪器仪表.高端数控系统等多种工业应用场合. ? ? ? ? 下面简单讲解一下创龙基于

广州创龙TMS320C6748 DSP 开发板免费申请试用

1.广州创龙TMS320C6748 DSP开发板免费申请试用,历史上例程最丰富的C6000 DSP开发板,不容错过. 申请链接:http://bbs.ickey.cn/group-topic-id-57928.html 申请时间截至:2015年11月30日 申请型号:TL6748-EasyEVM,市场价1450元 申请数量:20套 2.创龙最新推出TMS320C6655.TMS320C6657开发板,C66x单核.双核高端DSP,例程丰富,适用于高速数据采集.通信.音视频.中高端数控等大数据处理

广州创龙TMS320C6748 DSP开发板免费申请试用

1.广州创龙TMS320C6748 DSP开发板免费申请试用,历史上例程最丰富的C6000 DSP开发板,不容错过. 申请链接:http://bbs.elecfans.com/try_Tronlong.html#trialimg 申请时间截至:2015年9月30日 申请型号:TL6748-EasyEVM,市场价1450元 申请数量:50套 2.创龙最新推出TMS320C6655.TMS320C6657开发板,C66x单核.双核高端DSP,例程丰富,适用于高速数据采集.通信.音视频.中高端数控等大

广州创龙TMS320C6655 TMS320C6657核心板

1 核心板简介 ? 处理器架构先进:基于TI KeyStone C66x多核定点/浮点DSP TMS320C665x,标配工业级核心板,单核TMS320C6655和双核TMS320C6657管脚Pin to Pin兼容,同等频率下具有四倍于C64x+器件的乘累加能力: ? 运算能力强:主频1.0/1.25GHz,单核可高达40GMACS和20GFLOPS,包含2个Viterbi协处理器和1个Turbo协处理解码器,每核心32KB L1P.32KB L1D.1MB L2,1MB多核共享内存,819

【广州创龙】AM5728开发入门视频教程

AM572x是双DSP C66x+双ARM Cortex-A15工业控制及高性能音视频处理器.支持EtherCAT.EtherNet/IP.PROFIBUS等多种工业协议.此外,这些器件不但具有可编程视频处理功能,还融合了高度集成的外设集.集成双千兆网.PCIe.USB3.0.SPI.GPMC等工业控制总线和接口.下面给大家分享由广州创龙自主原创的AM5728系列开发视频教程,主要了介绍AM5728的硬件资源.优势以及应用方向,在此基础上,讲解AM5728在工业以太网上的具体应用方案. 在介绍完