电子产业
数字化服务平台

扫码下载
手机洽洽

  • 微信小程序

    让找料更便捷

  • 扫码下载手机洽洽

    随时找料

    即刻洽谈

    点击下载PC版
  • 华强电子网公众号

    电子元器件

    采购信息平台

  • 华强电子网移动端

    生意随身带

    随时随地找货

  • 华强商城公众号

    一站式电子元器件

    采购平台

  • 芯八哥公众号

    半导体行业观察第一站

TLC5620 DA转换C程序

来源:-- 作者:-- 浏览:1033

标签:

摘要: TLC5620 DA转换C程序 /*------------------------------------------------------------------------------调用方式:void da5620(uchar da) ﹫2001/03/23函数说明:往固定端口送da值完成DA输出,该函数没有输出端口选择功能,尽管5620有4个 输出口。

TLC5620 DA转换C程序

 
/*------------------------------------------------------------------------------
调用方式:void da5620(uchar da) ﹫2001/03/23
函数说明:往固定端口送da值完成DA输出,该函数没有输出端口选择功能,尽管5620有4个

 

输出口。
改变程序中的command可以改变默认端口。
------------------------------------------------------------------------------*/
#include"reg51.h"
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
#define  nop  _nop_()
sbit SPI_CLK=P1^2;
sbit SPI_DATA=P1^1;
sbit CS_DA=P1^3;

void del(uint v)
  {
    while(v!=0)v--;
    }

void da5620(uchar da)
{
  uchar i;
  ACC=01100000;                   //d7=a1;d6=a0;d6=rng;(while rng=1 2倍out);(a0,a1是ch选择)
  CS_DA=1;
  for (i=3;i>0;i--)               //写D/A命令字(通道数的选择)
    {
      ACC+=ACC;          //CY=ACC。7
      SPI_DATA=CY;
      SPI_CLK=1;
      nop;
      nop;
      nop;
      nop;
      SPI_CLK=0;
     }

  ACC=da;                     //写D/A数据
  for (i=8;i>0;i--)
    {
      ACC+=ACC;          //CY=ACC。7
      SPI_DATA=CY;
      SPI_CLK=1;
      nop;
      nop;
      nop;
      nop;
      SPI_CLK=0;
     }

  CS_DA=0;
  nop;
  nop;
  CS_DA=1;

void main(void)                  //主程序处理
{
  uchar j;
  while(1)
  {
    for(j=0xff;j>=0x01;j--)
      {da5620(j);del(2000);}
    for(j=0x00;j<=0xfe;j++)
      {da5620(j);del(2000);}
   }
}   

 

型号 厂商 价格
EPCOS 爱普科斯 /
STM32F103RCT6 ST ¥461.23
STM32F103C8T6 ST ¥84
STM32F103VET6 ST ¥426.57
STM32F103RET6 ST ¥780.82
STM8S003F3P6 ST ¥10.62
STM32F103VCT6 ST ¥275.84
STM32F103CBT6 ST ¥130.66
STM32F030C8T6 ST ¥18.11
N76E003AT20 NUVOTON ¥9.67