[经验分享] 【Follow me第二季第2期】+ 基础任务(DAC,OPAMP,ADC)

lingxin_yuhe   2024-8-29 18:50 楼主

A、驱动12x8点阵LED

根据用户教程Using the Arduino UNO R4 WiFi LED Matrix这个说明手册,我们可以知道点阵LED的显示原理,每一个LED代表一位,一共有96个LED,发送一次LED数据至少96位,手册中发送一个frame,内有96个点,例如

unsigned long frame[] = {

  0x3184a444,

  0x42081100,

  0xa0040000

};

发送数据时需要发送转换后的二进制数值,

0x3184a444(110001100001001010010001000100)

0x42081100(1000010000010000001000100000000)

0xa0040000(10100000000001000000000000000000)

用串口发送二进制方式发送数据,

for (int b = 0; b < 3; b++) {

    Serial.println(frame, BIN);

}

开发板软件包内提供了LED Matrix library,只要包含头文件,定义一个ArduinoLEDMatrix matrix变量,使用matrix的loadFrame函数就可以显示了。如图所示。

image-20240829183431-1.png  

led12x8

 

B、用DAC生成正弦波

使用sineWave的例子,下载到板子里面运行。

image-20240829183431-2.png  

A0输出正弦波形,用示波器显示。

sine

 

C、用OPAMP放大DAC信号;

电压放大2倍电路接法如图所示。

image-20240829183431-3.png  

image-20240829183431-4.png  

这个输入A1是如何显示方波的呢?

opamp

不知道我这个测试方法是否正确?

  1. 用ADC采集并且打印数据到串口等其他接口可上传到上位机显示曲线

image-20240829183431-5.png  

回复评论 (2)

想在串口看到波形的话,波特率得调大一些,要不波形会失真.

点赞  2024-8-30 14:28
引用: bigjiong 发表于 2024-8-30 14:28 想在串口看到波形的话,波特率得调大一些,要不波形会失真.

哦,我会再试一试。

点赞  2024-9-5 13:31
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复