DAC124S085芯片的使用
DAC124S085芯片的使用
该芯片可以通过SPI对其进行操作。具备12bit的能力。
经过实测,该芯片在有基准电源的情况下,输出准确度非常高。
示例代码如下:
1 #include "typedefs.h" 2 3 #define DAC_DAC_A 0b00 4 #define DAC_DAC_B 0b01 5 #define DAC_DAC_C 0b10 6 #define DAC_DAC_D 0b11 7 8 #define DAC_WRITE_SPECIFIC_DO_NOT_UPDATE 0b00 9 #define DAC_WRITE_SPECIFIC_AND_UPDATE 0b01 10 #define DAC_WRITE_ALL_AND_UPDATE 0b10 11 #define DAC_POWER_DOWN 0b11 12 13 /* must give the union some name, otherwise compile error in dcc.*/ 14 struct DAC124S085_REG_tag{ 15 union{ 16 uint16_t R; 17 struct{ 18 uint16_t reg_addr:2; 19 uint16_t action:2; 20 uint16_t raw_value:12; 21 } B; 22 23 } U; 24 };
运行中代码为:
void dac_lld_update(uint8_t which_out, uint8_t which_action, uint16_t voltage_in_mv) {static struct DAC124S085_REG_tag dac_spi_last_command;
uint16_t tmp16;
uint32_t tmp32;
tmp32 = voltage_in_mv*0xFFF;
tmp16 = tmp32/4096; /* 4096 is the ref voltage. */
switch(which_out){case DAC_DAC_A:// dac_spi_command.U.B.reg_addr = DAC_DAC_A;break;case DAC_DAC_B:dac_spi_command.U.B.reg_addr = DAC_DAC_B;break;case DAC_DAC_C:dac_spi_command.U.B.reg_addr = DAC_DAC_C;break;case DAC_DAC_D:dac_spi_command.U.B.reg_addr = DAC_DAC_D;break;default:return;}switch(which_action){case DAC_WRITE_SPECIFIC_DO_NOT_UPDATE:dac_spi_command.U.B.action = DAC_WRITE_SPECIFIC_DO_NOT_UPDATE;break;case DAC_WRITE_SPECIFIC_AND_UPDATE:dac_spi_command.U.B.action = DAC_WRITE_SPECIFIC_AND_UPDATE;break;case DAC_WRITE_ALL_AND_UPDATE:dac_spi_command.U.B.action = DAC_WRITE_ALL_AND_UPDATE;break;case DAC_POWER_DOWN:dac_spi_command.U.B.action = DAC_POWER_DOWN;break;default:dac_spi_command.U.B.action = DAC_WRITE_SPECIFIC_AND_UPDATE;}dac_spi_command.U.B.raw_value = tmp16;if(dac_spi_command.U.R != dac_spi_last_command.U.R){DSPI_Send(1, 0b00000001,dac_spi_command.U.R); /* semd spi command */}dac_spi_last_command.U.R = dac_spi_command.U.R; }
注:
1、适用于参考电压为4096v的情况。
2、SPI代码本文未提供。具体参数见该dac芯片的手册和主控芯片的参考手册。
转载于:https://www.cnblogs.com/praiseslow/p/10918433.html
DAC124S085芯片的使用相关推荐
- 2022-2028年中国SIP芯片行业市场前景预测及投资战略研究报告
[报告类型]产业研究 [报告价格]4500起 [出版时间]即时更新(交付时间约3个工作日) [发布机构]智研瞻产业研究院 [报告格式]PDF版 本报告介绍了中国SIP芯片行业市场行业相关概述.中国SI ...
- 人工智能3d建模算法_打破国外垄断,全国产3D芯片为机器人“点睛”
◎ 科技日报记者 崔爽 传统机器人只有"手",只能在固定好的点位上完成既定操作,而新一轮人工智能技术大大推动了机器和人的协作,这也对机器人的灵活性有了更高要求. 要想像人一样测量. ...
- GPU、AI芯片技术市场分析
GPU.AI芯片技术市场分析 市场将高速增长,GPU曙光初现,预计到2024年,国内人工智能技术市场规模将达到172亿美元:全球占比将从2020年12.5%上升到15.6%,是全球市场增长的主要驱动力 ...
- 2002年3月英伟达发布核弹GPU与大算力自动驾驶芯片
2002年3月英伟达发布核弹GPU与大算力自动驾驶芯片 英伟达核弹级GPU:800亿晶体管,20块承载全球互联网流量 2022年3 月 22 日,在英伟达 GTC2022 上,英伟达介绍了 Hoppe ...
- 2022年AI芯片场景
2022年AI芯片场景 随着技术成熟化,AI芯片的应用场景除了在云端及大数据中心,也会随着算力逐渐向边缘端移动,部署于智能家居.智能制造.智慧金融等领 域:同时还将随着智能产品种类日渐丰富,部署于智能 ...
- 芯片初创公司一亿融资可以烧多久
芯片初创公司一亿融资可以烧多久 一个亿融资可以烧多久? 这个问题我分别问了几个芯片公司的创始人. 有说2年的(某中等规模电路,成熟制程的MCU芯片公司):有说1年的(某AI算力芯片公司):有说半年的( ...
- 一站式智能芯片定制技术
一站式智能芯片定制技术 从55nm到5nm先进工艺,拥有创纪录(> 200次流片)和年10万片FinFET晶圆授权量产的骄人业绩,并且成功率高达100%.15年以来,先进工艺产品交付纪录持续行业 ...
- 内存接口芯片,服务器平台,PCIe 芯片
内存接口芯片,服务器平台,PCIe 芯片 澜起科技成立于2004年,是国际领先的数据处理及互连芯片设计公司,致力于为云计算和人工智能领域提供高性能,低功耗的芯片解决方案,目前公司拥有互连类芯片和津逮® ...
- LED芯片,应用品,蓝宝石衬底,集成电路,UV
LED芯片,应用品,蓝宝石衬底,集成电路,UV 三安主要从事全色系超高亮度LED芯片的研发,生产与销售,产品性能稳定,品质优异. 产品覆盖 三安能够提供全波长范围的LED,产品可覆盖全部可见光和不可见 ...
最新文章
- 阿布扎比成立全球首所培养研究生的人工智能大学
- C#显示相机实时画面
- android 切换排列,在运行时重新排序android线性布局?
- ASP.NET 26个常用性能优化方法
- Servlet基础之HttpServletResponse详解
- flex 结合sandy引擎创作
- 机器学习模型的性能指标
- 红帽linux无法进入tty,linux自启脚本(以及无法进入tty控制台)
- VB2005.Net 环境下使用Jmail组件发送邮件
- Https是如何工作的?
- javascript的getElementByTagName
- js 的常用工具类库
- okcc呼叫中心外呼系统使用教程
- 局域网ip扫描工具_中科院网络工程师网络安全视频教程10端口扫描
- logstash之output插件-输出数据到控制台、file文件、elasticsearch、redis
- 「掘金专栏」正式发布啦
- 《征服老板:零基础做出高逼格PPT》笔记(四)
- 新媒体管理师详解,新媒体矩阵搭建不完全指南
- 程序员之天梯排行榜,你在哪一级?榜首无悬念!
- 图集谷-写真集-爬虫-2.0
热门文章
- 获取当前网页的协议+域名
- Qt之处理QNetworkAccessManager网络连接超时
- 巧用tree命令导出文件目录递归详情
- oneinstack 重启mysql_oneinstack一键部署linux生产环境那点事(ubuntu)
- oneinstack安装java_Ubuntu 16.04安装OneinStack以及配置java开发环境
- 胶囊网络是什么及其应用
- 什么是并查集?【建议收藏】
- Cesium本地影像与地形服务发布
- Kendo UI Grid 样式改变控制
- 【2021年新书推荐】Network Programming with Go