0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

智嵌物联ZQWL可编程模拟量采集模块DAM-5802D

智嵌物联ZQWL 2022-02-19 11:31 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

  1. 概述

智嵌物联网ZQWL研发的DAM-5802D模块提供了用户编程接口,增强了应用的灵活性,简化了用户的编程的难度,缩短了开发产品的周期;用户不需要了解板卡底层驱动,只需将控制逻辑和通讯协议嵌入其中即可。

DAM-5802D模块提供keil开发环境下的函数库,功能强大,使用方便。开发人员只需略懂C语言(提供详尽技术指导和咨询)就可以在本司DAM-5802D平台上开发所需功能。

  1. 开关量相关函数
    1. Write_Relay函数

函数原型如下:

poYBAGIQXymAXiQgAACF3bMkkFM425.png

该函数需被其他函数调用才能使用。

举例:

Write_Relay(0,1);//闭合第一路继电器的常开触点,断开常闭触点。

Write_Relay(1,0);//断开第二路继电器的常闭触点,打开常开触点。

在使用过程中,注意传入的参数(channel,status)不能出错,channel的范围为0到N,N为控制板IO输出点个数;status的值只能为0或1。参数超出定义范围时,函数将返回错误信息。

  1. Read_Relay函数

函数原型如下:

pYYBAGIQXymAU63LAAB1sbz1Bdc328.png

该函数需被其他函数调用才能使用。

举例:

unsigned char temp = 0;

temp =Read_Relay(0);//读取第一路的输出状态并将结果赋给temp。

temp =Read_Relay(3);//读取第四路的输出状态并将结果赋给temp。

然后根据temp的值即可判断当前IO输出的状态:

temp为0则:常开触点断开,常闭触点闭合。

temp为1则:常闭触点断开,常开触点闭合。

temp为2则:传入的参数channel错误。

temp为3则:其他未知错误。

  1. 串口通讯相关函数

ZQWL_DAM_5802D有1个RS485接口,用于收发数据。

  1. UART_Init函数

函数原型如下:

poYBAGIQZGWAVJ94AAC11jsZKG0655.png

该函数为串口初始化函数,如果要使用RS232/485通讯功能,必须调用该函数来初始化通讯相关参数。

举例:

pYYBAGIQZGWACuv4AACByG09e3s672.png

注意该函数的第三个参数parity,必须为以下三种:

poYBAGIQXyuAWQ6zAAADgx7TV4I798.png

如果该函数调用成功则返回值为0,否则返回相应的错误信息。

  1. UART_Send_Data函数

函数原型如下:

pYYBAGIQZGWAJlFFAABVpzdlh5w654.png

该函数为串口发送函数,调用该函数前必须正确调用UART_Init()函数。

举例1,直接发送字符串:

UART_Send_Data("1234567890",10);

举例2,将数组中数据发送出去:

unsigned char temp[10];

UART_Send_Data(temp,10);

  1. UART_Recv_Handler函数

函数原型如下:

pYYBAGIQZGaAAG8wAAC3KO0Oy9o371.png

该函数为类似中断函数,不能被其他函数调用。必须在正确调用UART_Init()函数后该函数才能生效。建议在该函数中首先将buff中的数据复制出来,然后退出,在别的函数中进行数据的处理。

举例:

poYBAGIQZGaANCr9AAA6eTOP5bw457.png
  1. 系统指示灯相关函数

该系列控制板有1个系统LED指示灯,可以用来指示系统运行的状态。

  1. RUN_LED_Toggle函数

函数原型如下:

pYYBAGIQXyyAMyZhAABNziPgoco773.png

此函数实现系统LED的状态翻转功能(调用后原来熄灭则会点亮,原来点亮则会熄灭)。

举例:

RUN_LED_Toggle();//调用后,指示灯状态翻转。

  1. RUN_LED_ON函数

函数原型如下:

pYYBAGIQXyyANOnkAABKJCT4kDI349.png

举例:

RUN_LED_ON();//点亮系统LED指示灯

  1. RUN_LED_OFF函数

函数原型如下:

poYBAGIQXyyANPPSAABKaON2I1M934.png

举例:

RUN_LED_OFF();//熄灭系统LED指示灯

  1. 延时相关函数
    1. Delay_ms函数

函数原型如下:

pYYBAGIQXy2APC66AABDF9N_hJY181.png

举例:

Delay_ms(500);//延时500毫秒。

Delay_ms(2000);//延时2000毫秒。

  1. Delay_us函数

函数原型如下:

poYBAGIQXy2AEBANAABRSBGt4sA051.png

举例:

Delay_us(500);//延时500微秒。

Delay_us(999);//延时999微秒。

  1. 定时器相关函数
    1. Timer_IRQHandler函数

函数原型如下:

pYYBAGIQXy2AIKzSAAB1lBK8cPc237.png

该函数为中断函数,不能被其他函数调用。每隔1ms中断一次,用户以此为基础可以设计出各种定时服务功能。例如设计一个10ms定时服务功能:

poYBAGIQXy2AGjWrAABV7HPGjtQ878.png
  1. 看门狗相关函数
    1. IWDG_Init函数

函数原型如下:

pYYBAGIQXy2AJQYtAADJjzsd6uU012.png

举例:

IWDG_Init(WD_1000MS);//设置看门狗定时器为1000毫秒。

IWDG_Init(WD_2000MS);//设置看门狗定时器为2000毫秒。

  1. Feed_Dog函数

函数原型如下:

poYBAGIQXy2Ac653AAAqwgAi4-4022.png

如果调用了IWDG_Init(),那么, Feed_Dog()函数就必须周期调用,并且调用周期必须小于看门狗定时器设定值。否则,系统将不断的复位。

建议在产品开发阶段先不用看门狗功能,产品发布时再加上此功能。

  1. Flash相关函数

该系列控制板均提供128字节的用户flash空间,可以用来存放控制板掉电后需要保存的参数,比如波特率,地址码等。

  1. User_Flash_Write函数

函数原型如下:

pYYBAGIQXy6ANQJwAACsPCHrvos325.png

举例:

poYBAGIQXy6AKmuQAAAftixOKeU309.png
  1. User_Flash_Read函数

函数原型如下:

poYBAGIQXy6AQzaaAACdEBaX2AQ388.png

举例:

pYYBAGIQXy6ABMfJAAAmKw6B5Xo012.png
  1. 系统异常相关函数
    1. HardFault_Handler函数

函数原型如下:

poYBAGIQXy6AQE5QAABY4XUDn4A871.png

当系统有异常时,比如指针操作不当、数组操作不当等,会进入此中断。

  1. 系统复位相关函数
    1. MCU_Soft_Reset函数

函数原型如下:

pYYBAGIQXy-AQHRAAABEcZwYkgk065.png

调用该函数后,系统将复位。

  1. main函数

该函数为系统入口函数,提供如下示例:

pYYBAGIQZGmABVyuAAo3bl8A1JU819.png
  1. 模拟量变量声明

提供ADC值、0~5V型电压值、0~10V型电压值和0~20mA型电流值的采集,统一输出到一个结构体中:

poYBAGIQZGqAdSGNAATBWxr46hE168.png

变量的声明在ZQWL_DAM_5802D.h文件中。

  1. 模块编程
    1. 开发环境

该模块开发环境使用keil 5.10版本(其他版本未验证),有关keil的使用教程请参考其他开发文档,keil5的安装包下载地址:

https://pan.baidu.com/s/1rAgGc5AjeSDBvNq1KSFNsg提取码: jxeq

在“可编程资料”里有该控制板的keil5工程

打开“可编程资料”:

poYBAGIQZGqAUqwnAAALjCOp98Q328.png

此即为该控制板的工程文件, 打开文件:

pYYBAGIQZGqAB79IAAAFBeirIGc842.png

打开“Proj”:

pYYBAGIQZGqAQHaGAAArZ6t9WoI618.png

双击上图中的“LED”,则可以通过keil软件打开该工程。

工程配置如下图:

poYBAGIQZGqAP9X6AAGUh8yuL1c965.png

编译后会生成一个IO_APP.bin文件(路径:ZQWL_IO_APP\Proj\BIN):

pYYBAGIQZGqAZ9X2AAATuwS0US0166.png
  1. 程序下载

智嵌串口IO模块的固件是通过《智嵌物联 串口继电器控制板固件升级工具》来下载程序的:

pYYBAGIQXzKAFZO8AADIfz_Njy8864.png

点击上图的“浏览”,将编译好的IO_APP.bin文件载入软件,选择好串口参数,然后点“打开”,点“开始升级”,即可实现固件的下载,下载完成后自动运行:

poYBAGIQXzKAJfLzAACAUhOZa8Y362.png
  1. 程序出错处理

在调试程序时难免会出现程序出错,出错后可能造成不能直接对模块固件下载,这时需要按照如下步骤操作:

第一步:断电。

第二步:按住模块上的按键。

第三步:上电,看到模块的运行灯快速闪烁,说明进入到了固件下载模式,此时就可以对模块下载固件了。注意此过程中不可以松开按键,直到下载成功后才能松开。

注意,智嵌物联网ZQWL的部分网络IO控制器也支持编程功能,如型号ZQWL-NET8880M,Smart IO,该类产品功能更强大。除此之外,智嵌物联ZQWL新推出的Smart GW串口服务器也具有编程功能,该类产品通讯接口支持4G,网口,WIFI,CANRS485等,部分产品也具有IO扩展功能,性能更强大,使用更方便。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 模拟量模块
    +关注

    关注

    0

    文章

    32

    浏览量

    7804
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    探秘TPS08U高精度模拟量采集模块:设计与应用全解析

    探秘TPS08U高精度模拟量采集模块:设计与应用全解析 在电子工程师的日常工作中,高精度模拟量采集模块
    的头像 发表于 04-28 15:45 152次阅读

    基于迈纳模拟量输入采集模块的工业设备供电远程精准监测解决方案

    ,导致补能系统的启动时机判断失误,无法精准实现供电的动态调控。 二、工业设备供电远程监测系统整体架构 本系统以迈纳高精度多通道模拟量输入采集模块为核心,构建 “现场设备端 - 数据
    发表于 04-22 09:35

    工业级模拟量采集模块:千分之一精度,智能化水务管理

    (可编程逻辑控制器)、RTU(远程终端单元)、MCU(数据采集单元) 等自动化设备中,在以下关键场景中扮演着“感知末梢”的角色: 一、系统架构 传感器 → 模拟量采集
    的头像 发表于 04-08 16:14 138次阅读

    工业级模拟量采集模块:12位AD采集,智慧农业的“数据神经末梢”

    模拟量采集模块在智慧农业中扮演着“神经末梢”的角色,负责将土壤/水体的温湿度、EC/pH、溶氧、光照等连续物理转化为数字信号,为精准灌溉、水肥一体、水质调控提供可靠数据入口,直接决定
    的头像 发表于 04-08 16:13 169次阅读

    【新品】抗干扰利器!MA01差分模拟量模块:让工业数据采集稳如磐石

    工业数据采集总受干扰?信号测量不准?布线距离有限?MA01差分模拟量输入模块——为复杂工业环境而生的高精度采集解决方案。在工业自动化与过程控制现场,你是否常被这些问题困扰:
    的头像 发表于 01-22 19:34 886次阅读
    【新品】抗干扰利器!MA01差分<b class='flag-5'>模拟量</b><b class='flag-5'>模块</b>:让工业数据<b class='flag-5'>采集</b>稳如磐石

    告别低精度!16位AD模拟量采集模块,4/6/8/12路通道任选

    高精度模拟量采集模块是工业自动化、联网数据采集场景中的核心硬件,其功能围绕精准、稳定、高效采集
    的头像 发表于 01-19 16:56 702次阅读

    智能家居场景下高精度模拟量采集模块的选型与应用方案

    高精度模拟量采集模块是智能家居系统的核心感知单元,负责将温湿度、光照、气体浓度、人体感应、能耗等模拟信号,转化为高保真数字信号,为家电联动、节能控制、安全防护提供精准数据支撑,让家居从
    的头像 发表于 12-25 16:42 605次阅读

    12路模拟量采集模块:打通多行业数据采集的关键一环

    高精度模拟量采集模块不仅仅是简单地将模拟信号数字化,而是通过一系列精密的电路设计、高质量的元器件和先进的信号处理算法,在分辨率、准确性、稳定性和抗干扰能力等方面达到极高水平的专业设备
    的头像 发表于 12-11 16:29 564次阅读

    工业人必看:一主一从WIFI模拟量双向对传模块选型攻略

    WIFI 模拟量双向对传模块联网与工业自动化领域中,专用于模拟量信号无线双向传输的智能硬件,也是衔接前端传感器、后端执行器与控制平台的关键设备,能破解传统有线传输布线难、维护成本高
    的头像 发表于 12-01 17:31 866次阅读

    工业测控精度不够?±0.01mA精度LORA模拟量对传模块来救场

    LORA模拟量互传模块联网领域中实现模拟量信号(如电压、电流、温度、压力等)无线传输的核心设备,能打破传统有线模拟量传输的距离限制和布线
    的头像 发表于 11-25 17:49 739次阅读

    提升性价比之选:CAN接口模拟量采集模块的三大核心功能价值

    在工业联网(IIoT)、智能控制与自动化系统中,存在大量 “连续变化” 的物理信号,比如温度的升降、压力的波动、电流的强弱,这些信号被称为 “模拟量”。而CAN 接口模拟量采集
    的头像 发表于 10-11 15:30 596次阅读

    CAN接口模拟量采集模块能做什么?工业/汽车/能源等四大领域实例拆解

    CAN 接口模拟量采集模块凭借高精度采集、抗干扰传输、工业级稳定的核心优势,已从传统工业场景渗透到汽车、能源、农业、医疗等多个领域。其本质是通过模拟
    的头像 发表于 10-11 15:29 944次阅读

    集中式ZDM-E0800V模拟量采集模块(上) — 基础应用

    在工业自动化中,模拟量信号极为关键。致远电子的E系列高速IO模块ZDM-E0800V支持EtherCAT协议,可采集工业现场的电压模拟量信号。本文将详细介绍其功能与使用方法,展示其如何
    的头像 发表于 10-09 11:32 742次阅读
    集中式ZDM-E0800V<b class='flag-5'>模拟量</b><b class='flag-5'>采集</b><b class='flag-5'>模块</b>(上) — 基础应用

    4G模拟量双向对传模块:同步远传,远程无线遥控开关

    4G模拟量双向对传模块是一种基于4G网络实现模拟量信号远程双向传输的工业联网设备。主要用于解决工业现场中传感器、执行器等设备的数据采集和远
    的头像 发表于 07-23 17:04 800次阅读

    高性能模拟量采集模块DAM-3058R工控领域好帮手

    DAM-3058R 是一款工控领域专用的高性能模拟量采集模块,其核心技术与功能特性可归纳如下: 一、核心参数 通道配置‌:支持 ‌8 路差分输入‌,
    的头像 发表于 05-30 10:16 986次阅读
    高性能<b class='flag-5'>模拟量</b><b class='flag-5'>采集</b><b class='flag-5'>模块</b><b class='flag-5'>DAM</b>-3058R工控领域好帮手