PIC的DAC使用还是相当简单的。DAC即Digital to analog converter,数字模拟转换器。PIC的DAC精度只有5位,是真的低,所以说使用PIC的DAC只是玩玩而已。如果在项目中真的需要用到DAC,估计需要用DAC专用芯片了。

DAC的输出电压计算公式为Vout=【(Vsource+ - Vsource-)*DACR[4:0]/2*5】+Vsource-

DAC 的输入可以连接到:①外部 V REF + 引脚   ②VDD 供电电压

DAC 的输出可以配置为向以下对象提供参考电压:①比较器的正输入   ②ADC 输入通道   ③DACOUT1 引脚    ④DACOUT2 引脚

这些均可以通过寄存器配置

void main()
{
    OSCCON = 0x78;//16M
    __delay_ms(20);
    
    ANSELAbits.ANSA2 = 1;
    TRISAbits.TRISA2 = 0;//输出端口
    
    DACCON0bits.DACEN = 1;//使能 DAC
    DACCON0bits.DACOE1 = 1;//DAC 电平从 DACOUT1 引脚输出
    DACCON0bits.DACOE2 = 0;// DAC 电平从 DACOUT2 引脚断开
    DACCON0bits.DACPSS = 0;//DAC 正参考电压源选择位 VDD
    
    DACCON1bits.DACR4 = 0;
    DACCON1bits.DACR3 = 1;
    DACCON1bits.DACR2 = 0;
    DACCON1bits.DACR1 = 1;
    DACCON1bits.DACR0 = 1;//11/32
    
    while(1)
    {
    }
}

理论输出电压为Vout=(VDD-VSS)*11/32 = (3.321-0)*11/32=1.1415V

实际输出电压测量如下图所示

基本还是比较准确的,就是只有5位比较差。

PIC 1508 DAC使用相关推荐

  1. PIC 1508 TIM1的定时器中断使用

    TIM1有点复杂了,慢慢理吧.先写一篇最简单的TIM1的溢出中断的使用. 花了十分钟,看了数据手册关于溢出中断的部分,写了如下代码 void main() {     OSCCON = 0x78;// ...

  2. PIC 1508 TIM1的定时器门控的理解

    TIM1的门控部分还是有点理解难度的.看了两个多小时的数据手册,最后总结出来其实TIM1的门控就是硬件三态门,只是在简单的三态门逻辑基础上有提升.控制TIM1计数的门控源有4个,分别如下图所示 一般常 ...

  3. 关于PIC和FPGA

    PIC:Peripheral Interface Controller. FPGA:Field Programmable Gate Array. 关于二者: 区别: FPGA是逻辑门器件,可以配置成为 ...

  4. 【单片机】单片机各系列(51,PIC,AVR,MSP430/432,ARM)介绍

    文章目录 说明 资料一 ······ 综述 资料二 ······ 综述 资料三 ······ MSP430 资料四 ······ 综述 资料五 ······ 合集 说明   因为近期想要了解各种单片机 ...

  5. dac生成信号频率取决于_DAC和AOC,谁将是数据通信领域最终赢家?

    如今竞争激烈的通信行业,大家都期望获得竞争优势,无论是在性能方面.效率方面还是成本方面.虽然许多数据中心的整改侧重于网络适配器和交换机配置,但有一种极其基础.却同样有效的方法可以改进部署的数据中心,那 ...

  6. ARM 位置无关代码(PIC)的分析理解

    2019独角兽企业重金招聘Python工程师标准>>> PIC的特点是: 它被加载到任意地址空间都可以正确的执行.其原理是PIC对常量和函数入口地址的操作都是基于PC+偏移量的寻址方 ...

  7. PIC单片机学习之独立按键

    硬件电路:独立按键接RA5 效果:让RD0口的LED,当独立按键为0时,点亮. 注意:PORTA口的默认状态不是数字IO口,我们要将他配置成数字IO口.这涉及到了ADCON1寄存器. 代码 //201 ...

  8. 25G DAC无源高速线缆和25G光模块之间的区别

    互联网行业的高速发展促使大部分数据中心的网络部署转向光纤互连,为了提高光纤覆盖率,数据中心的网络布线方式也产生转变,逐渐由叶脊拓扑布线来替代原来的三层布线,网络传输速率也同时逐步从10G向100G 进 ...

  9. PWM通过RC低通滤波器模拟DAC

    当我们电路需要DAC而单片机并没有DAC外设时,则可采用PWM通过RC低通滤波器来模拟实现DAC功能. RC低通滤波器 当采用低通滤波器模拟DAC时,PWM频率应远大于RC低通滤波电路的截止频率fc= ...

最新文章

  1. 聊聊Python ctypes 模块(转载)
  2. python学费多少-2020年10月徐州学python要多少学费
  3. [置顶] 分步实现具有分页功能的自定义DataList控件【附源代码】
  4. python解析库beautifulsoup_12_Python_解析库_BeautifulSoup的使用
  5. JavaSE(十六)——反射
  6. python自动化测试平台github_GitHub - DangKaio/FXTest: 接口自动化测试平台——python+flask版,支持http协议...
  7. Fedora 15 安装 HP 打印机
  8. 电脑没网络设备dns服务器没检测到响应,设备或资源dns没检测到有响应 网络无法连接...
  9. 城市大数据:内涵、服务架构与实施路径
  10. python语言的数字类型_Python的数字有哪些类型
  11. tomcat启动流程分析
  12. mysql数据库死锁的产生原因及解决办法
  13. 可多语句执行下不用单引号outfile写shell
  14. 我的世界java骷髅马_教萌新如何在我的世界中拥有骷髅马坐骑
  15. 频域波束形成matlab,关于FFT波束形成
  16. 某知名大学学生毕业设计, Java学好了就是厉害
  17. 企业微信SCRM怎么弄永久群二维码?可以实现社群私域流量裂变吗?
  18. 1KB快捷方式病毒的解决方法
  19. 安卓机顶盒安装软件教程
  20. 【Mac】微信视频对方听不见你的声音

热门文章

  1. 当兵学c语言吗,我是一个第二年的义务兵,13.09入伍,新兵下连后去某大队学习军车驾驶,七个月后被分到了别的连队...
  2. 老人与海好词100英文带翻译_The_Old_Man_and_The_Sea_老人与海_中英文对照版_(good)
  3. 写一个程序输入一个国家的国家名,输出该国的首都名。
  4. 圆柱模板计算器V1.0
  5. 在线Json转Dart
  6. LDO低压差线性稳压器
  7. 计算机音乐简单好听,电脑上好听的歌怎么录制,教你2分钟,截取你爱听的声音...
  8. java 爬楼梯算法_动态规划-爬楼梯问题java实现
  9. 电脑登录密码和outlook密码不一致。密码正确却提示密码或用户不正确。
  10. postman 搭建mock-server