【51单片机】DAC0832制作信号发生器(方波,三角波,锯齿波)

发布时间:2024-04-07  

1 A/D与D/A

将模拟量转换为数字量称为模数转换(A/D转换),模拟量是连续的,比如电压、电流等,可以连续变化的量;数字量是离散的,对应于计算机中的位,每一个位只能是0或1,是不存在中间状态的。通过模数转换原件将模拟量转化为数字量输入计算机,以便计算机进行计算、存储等(这里说的计算机指具有cpu芯片的计算系统)。

模数转换中运用到了微分思想。如下图所示:
请添加图片描述

将连续的信号转换成一系列接近的离散的值,分割的越窄,就能表现得越精确。

数模转换(D/A转换)与模数转换的效果相反,是输入控制的数字量,经过D/A转换器输出模拟量。

2 电路与元器件

  1. 80C51芯片是intel公司开发的MCS-51系列单片机中的经典的一种。

  2. DAC0832是D/A转换芯片,是专门用于数模转换的的芯片。

  3. 电路图如图:

请添加图片描述

3 源代码

3.1 程序开始

org   0000h

      jmp   Start

;====================================================================

; CODE SEGMENT

;====================================================================

      org   0100h

3.2 监视按钮操作

watchKey:;//监控按钮的操作

      jnb p1.0,squareWave;//p1.0口,方波

      jnb p1.1,sawtoothWave;//p1.1口,锯齿波

      jnb p1.2,triangleWave;//p1.2口,三角波

      ret

根据电路图,三个按钮接地,即按钮按下会产生低电平,所以检测三个口接受到的信号,出现低电平时跳转到波形的发生函数部分。


3.3 按钮控制显示波形

Start:

      mov A,#0FFh

      mov p1,A;//给p1口送高电平,按键按下为低电平

      call watchKey

      jmp start;

先给p1端口送高电平,然后调用按钮监控函数,没有键按下则一直在Start部分循环。


3.4 方波产生的方法

方波信号是有一段时间输出稳定的高电平,一段时间输出稳定的低电平。要实现这个功能,需要保持端口的输出值稳定,并启用延时或循环。


squareWave:

      mov R0,#0FFh;//存电位初值

      mov R1,#0F0h;//存高电平循环次数

      mov R2,#40h;//存低电平循环次数。调整R1和R2可以调整占空比

positive:

      mov A,R0;//取电位值

      mov p3,A;//输出数据电位,DA输出模拟电位

      call watchKey;//监控按钮的动作(可以用开中断代替),下同

      djnz R1,positive;//剩余的循环次数不为零,继续输出高电平,剩余循环次数为零则进入低电平

      mov R0,#00h;//存低电平

negative:

      mov A,R0;

      mov p3,A;

      call watchKey;

      djnz R2,negative;//循判断循环结束,往下执行。

      jmp squareWave;//进行下一周期

这里没有用延时,而是用循环代替,二者的区别在于延时中不会监控按钮动作,循环时每一次循环都会监控按钮。当延时短时二者效果没有太大区别,所以这里用那种都可以。


3.5 锯齿波产生的方法

锯齿波是在一个周期内逐渐增大,在下一周期开始时又会跳回零点。代码实现如下:


sawtoothWave:

      mov R0,#00h;//初值

      mov R1,#80h;//上升沿循环次数

sawup:

      mov A,R0;

      mov p3,A;

      inc A;//每次增加1,在下一次循环输出,出现逐渐增大的效果。

      mov R0,A;

      call watchKey;

      cjne R0,#0FFh,sawup;//循环未结束则继续增加,结束则跳回低电平

      jmp sawtoothWave;//下一周期

3.6 三角波产生的方法

三角波的一个周期分为上升沿和下降沿,都是线性变化的,可以利用锯齿波的方法做一个上升沿和一个下降沿。


triangleWave:

      mov R0,#00h;//初值

      mov R1,#80h;//上升沿循环次数,反映为上升沿宽度

      mov R2,#80h;//下降沿循环次数,反映为下降沿宽度

up:;//上升沿

      mov A,R0;

      mov p3,A;

      inc A;

      mov R0,A;

      call watchKey;

      cjne R0,#80h,up;

down:;//下降沿

      mov A,R0;

      mov p3,A;

      dec A;

      mov R0,A;

      call watchKey;

      cjne R0,#00h,down;

      jmp triangleWave;  

3.7 程序结束

Loop:

      jmp Loop

;====================================================================

      END

4 效果

4.1 方波

请添加图片描述

4.2 锯齿波

请添加图片描述

4.3 三角波

请添加图片描述

5 参考资料

[1] 80c51_百度百科 (baidu.com)

[2] DAC0832_百度百科 (baidu.com)

[3] 51单片机汇编指令集_宇宙379的博客-CSDN博客_51单片机指令集

[4] 【51单片机】矩阵键盘逐行扫描法仿真实验+超详细Proteus仿真和Keil操作步骤_cumt等等的博客-CSDN博客_矩阵键盘键码扫描程序设计实验


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    大众POLO车型的启动电路和充电电路详解;一、充电/ 启动系统零部件作用 1. 充电系统零部件作用 交流发电机: 交流发电机提供直流电压以操作车辆电气系统并保持蓄电池的充电状态。电压输出由 IC......
    晶闸管实用电路详解-303页......
    新能源汽车高压电路详解......
    电路与电子技术基础课堂笔记:负反馈放大电路详解; 反馈放大电路有很多好处,可以增加放大电路的输入电阻,使输出电流京可能稳定,保证输出电压随负载变化波动较小,减小电路元件参数变化对电路......
    计数器控制跑马灯电路详解; (一)CD4017计数集成电路 CD4017是5位触发计数器,具有10译码输出端,Cp,CR,lNH......
    51单片机串口通信实验电路详解;  51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8004单片机,后来随着Flash rom技术的发展,8004......
    PLC点动与自锁电路详解;PLC点动与自锁电路 I0.1为自锁启动按钮,I0.0位自锁停止按钮,I0.2为点动启动按钮,M0.0为中间继电器,Q0.0为线圈输出。 当按下I0.1,M0.0接通......
    PLC控制的变频/工频自动切换电路详解;继电器控制切换的变频/工频电路比较麻烦,而改用PLC控制则相对简洁。PLC控制的变频/工频自动切换电路如图2-1所示。 该电路的控制要求如下。①主电路......
    阅读 电子电路设计与应用手册(1000多种电路详解)-高清PDF电子书 347个实用电路图(PDF)汇总......
    自锁正转控制电路详解;自锁正转控制电路 由于电动控制电路只适合短时间运行,因此想要达到电动机长时间连续运行应采用自锁正转控制电路。自锁电路除了有长时间运行锁定功能,还可......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>