上位机图像处理和嵌入式模块部署(h750 mcu和ad/da电路)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

大部分同学学习mcu的时候,都会把重点放在232、485、can、usb、eth这些常规的通信接口上面。还有一部分同学,可能会对lcd、camera这些有着丰富信息的外设感兴趣。但是,mcu真正和自然界打交道的部分,其实是ad/da功能。也就是说,mcu本身其实是通过ad/da ip和真实的物理世界打交道的。

当然,ad/da作为基本功能,从低端的stm32f103就开始支持,这一点大家注意下。

1、什么是ad/da

所谓的ad/da,就是模拟量转成数字量、数字量转成模拟量。真实的世界,是没有数字量的,但是mcu本身数据处理的时候,又是没有办法处理模拟量的,所以这就出现了ad/da这两个ip。ad多用于数据输入,da多用于数据输出。

2、ad/da的评判标准

通常来说,ad做起来会稍微难一点,我们评价ad的好坏,通常就是看它的转换精度和转换速度是多少。因为mcu上面的ad/da都是集成上去的,作为一般的工业控制问题不大。如果需要高精度、高速度的ad转换,那么就需要独立ad芯片的帮助了。

da的话,一般相对容易一点,代码量也少很多。

3、一般调试方法

通常情况下,一般先调试da,也就是我们通过da输出不同的电压。这样,mcu接一个示波器之后,就可以确认不同的电压数值了。da调试好了之后,就可以把da生成的电压,用短接线转到ad上面,此时可以通过上位机控制输出电压,结合mcu上面的打印,就知道ad有没有采样正确了。

4、电商开发板的测试方法

如果是开发板的话,测试ad的时候,可以把对应的pin脚先后接到3.3v、gnd上面,这个时候查看下,对应的打印是不是正确。接着测试da的时候,原来可能输出的是一个正弦波,手边没有示波器的话,比较麻烦,我们可以把正弦波转成常数,

复制代码
#if 0
const uint16_t Sine12bit[32] = {
	2048	, 2460	, 2856	, 3218	, 3532	, 3786	, 3969	, 4072	,
	4093	, 4031	, 3887	, 3668	, 3382	, 3042	, 2661	, 2255	, 
	1841	, 1435	, 1054	, 714	, 428	, 209	, 65	, 3		,
	24		, 127	, 310	, 564	, 878	, 1240	, 1636	, 2048
};
#else
uint16_t Sine12bit[32] = {0};
#endif

想要设置成什么电压,直接赋值即可,通过串口打印一下,

复制代码
	for (Idx = 0; Idx < 32; Idx++)
    {
		Sine12bit[Idx] = 4093;
	}

5、什么时候需要独立ad/da芯片

**mcu集成的ad/da虽然比较方便,但是在采样数量、精度和速度上面和专业的ad/da芯片还是有差距。**如果是需要在工业、车辆、医疗和军工能领域,希望对信号进行精确的采样和输出,最好还是使用专业的ad/da芯片。接口的话,一般就是spi接口。

6、数字电路、模拟电路layout分开

ad和da中有一部分是模拟电路,这和我们之前纯数字电路还是稍有不同的。实际layout实现的时候,模拟电源、模拟地和数字电源、数字地最好区分开来,不要相互串扰。

7、ad/da不一定同时使用

有的场景下,ad只是为了监测使用的,这种情况下,就不需要da部分了。比如说,我们需要mcu检测温度、湿度、压力、压强、有毒气体浓度等等,如果是这种情况的话,那么就不需要da部分,直接通过ad采样,接着通过232/485或者是eth,把数据送出去就可以了。

8、ad/da一般需要搭配集成运放电路

很多时候,da/ad采集的信号是有范围要求的,比如说输入、输出不能超过3.3v。**但是外部信号传递过来的时候,可能是-24v到24v,这种情况下,就需要把电压映射在0~3.3v之间。输出其实也是一样。**要做到这一点,就要把读书时候学到的运放电路用起来了。所以,我们看电路板的时候,除了电源部分有很多的模拟器件,在ad/da部分也有一些模拟电路的。

相关推荐
不悔哥5 小时前
开源 Zephyr:现代嵌入式 RTOS 长什么样
单片机·开源·嵌入式
广州灵眸科技有限公司5 小时前
瑞芯微(EASY EAI)RV1126B display
开发语言·数据库·人工智能·科技·嵌入式硬件
国产化创客6 小时前
创客开发入门(三)Arduino IDE 开发环境
ide·单片机·嵌入式硬件·课程设计·智能硬件
CedarQR6 小时前
LubanCat-2 (RK3568) Debian 下让 H3C Magic USB 无线网卡(AIC8800)联网全记录
linux·网络·单片机·嵌入式硬件·debian·3568·h3c
芯片人00716 小时前
纯硬件一键开关机ASIC芯片,为什么比 MCU 方案更适合更可靠
人工智能·单片机·嵌入式硬件·物联网·芯片
染予18 小时前
Ka 阵面星历下发与执行逻辑说明
stm32·嵌入式硬件
芯片人00718 小时前
武汉广昇科技的GMUX1308A模拟开关芯片成功导入中国台湾上市企业联昌电子,助力汽车电子供应链自主可控
科技·嵌入式硬件·物联网·汽车·芯片
恒锐丰科技林技术员21 小时前
EG2181D 半桥栅极驱动芯片详解:高压 MOS/IGBT 驱动实用器件
经验分享·嵌入式硬件·硬件工程
国科安芯1 天前
面向卫星测控应答机的抗辐射MCU信号采集与定时控制研究
单片机·嵌入式硬件·mcu·架构·卫星·商业航天·抗辐射
CC城子1 天前
EtherNet/IP I/O 丢包排查(linux系统)
linux·单片机·tcp/ip·ethernetip