摘要: 一、回环测试函数的实现,如下面的代码,主函数while循环中调用下面的函数loop_back 1 void loop_back(void) 2 { 3 int32_t ret = 0; 4 5 /* Loopback Test */ 6 // TCP server loopback test 7 i 阅读全文
posted @ 2020-05-05 08:39 Tony.Jia 阅读(3881) 评论(0) 推荐(0)
摘要: 一、SPI的配置过程 1.使能SPI时钟 1 /** 2 * @brief 使能SPI时钟 3 * @retval None 4 */ 5 static void SPI_RCC_Configuration(void) 6 { 7 RCC_APB2PeriphClockCmd(RCC_APB2Per 阅读全文
posted @ 2020-05-04 09:55 Tony.Jia 阅读(4635) 评论(0) 推荐(0)
摘要: 我使用的硬件是STM32F103C8T6和W5500网络模块,W5500的有点很多,这里就不啰嗦介绍了,请自行问度娘就可以了。百度百科链接: https://baike.baidu.com/item/W5500/23678476?fr=aladdin 一、硬件资源分配(SPI) 首先来张W5500模 阅读全文
posted @ 2020-05-03 16:31 Tony.Jia 阅读(2424) 评论(0) 推荐(0)
摘要: FreeModbus协议栈作为从机,等待主机传送的数据,当从机接收到一帧完整的报文后,对报文进行解析,然后响应主机,发送报文给主机,实现主机和从机之间的通信。 1、初始化协议栈 eMBInit函数(mb.c中),以RTU为例 1 eMBErrorCode eMBInit( eMBMode eMode 阅读全文
posted @ 2020-04-30 18:53 Tony.Jia 阅读(910) 评论(0) 推荐(0)
摘要: 为方便查找学习,这里建立 C 语言函数快查索引帖。随着《带你学C带你飞》系列教程的不断深入,该文档将逐步完善!所有函数文档均有小甲鱼本人翻译,如有谬误请严格指正。转载无需经过本人同意,但必须注明版权!【A】atoi -- 将字符串类型转换为整型 | <stdlib.h>......【B】...... 阅读全文
posted @ 2020-04-30 07:48 Tony.Jia 阅读(355) 评论(1) 推荐(0)
摘要: 对于程序员来说,库是最重要的工具之一,可以避免重新造轮子。C 标准函数库(C Standard library)是所有符合标准的头文件(head file)的集合,以及常用的库函数案例,几乎所有的 C 语言程序都是由标准函数库的函数来创建的。为了方便大家查阅学习,小甲鱼这里给大家做了归类:1# 概述 阅读全文
posted @ 2020-04-29 21:09 Tony.Jia 阅读(513) 评论(0) 推荐(0)
摘要: C90(C++98)->headers C99(C++11)->headers 阅读全文
posted @ 2020-04-29 13:24 Tony.Jia 阅读(157) 评论(0) 推荐(0)
摘要: 目录 文章目录 一、#子网划分理论基础 ##为什么进行子网划分 ##明确需求 ##知识点 二、#子网划分常见问题 三、#子网划分实例精析 ##C类子网划分实例分析 ##B类子网划分实例分析 ##A类子网划分实例分析 四、#小结 一、#子网划分理论基础##为什么进行子网划分减少网络流量,无论什么样的流 阅读全文
posted @ 2020-04-29 07:59 Tony.Jia 阅读(1387) 评论(0) 推荐(0)
摘要: 什么是子网掩码?(转) 出处 -> http://technic.xkq.com/20090225/24799.html一、 子网掩码的概念及作用 子网掩码 (subnet mask) 又叫网络掩码、地址掩码、子网络遮罩,是一个应用于 TCP/IP 网络的 32 位二进制值。它可以屏蔽掉 IP 地址 阅读全文
posted @ 2020-04-28 10:39 Tony.Jia 阅读(505) 评论(0) 推荐(0)
摘要: 一、实现场景 通过LM414-IOT网口eth0(内网)采集SMART200plc数据(smart200PLC做Modbus TCP Server),然后通过LM414-IOT网口eth1(外网)将数据推送到apollo服务器 二、硬件准备 LM414-IOT网关 1台 smart200 SR30 阅读全文
posted @ 2020-04-27 08:59 Tony.Jia 阅读(495) 评论(0) 推荐(0)
摘要: 当用 STEP7 连接 S7-200 时,会总提示“未找到指定的访问点”,情况如下图所示: 解决方法分五步走,如下: 1.新建一个记事本 2. 在记事本里中写入"%CommonProgramFiles%\\Siemens\\Automation\\SimaticOAM\\bin\\s7epaImp6 阅读全文
posted @ 2020-04-23 14:25 Tony.Jia 阅读(24343) 评论(0) 推荐(0)
摘要: 空文件夹是项目的子模块,需要用submodule下载。 @后面的数字是哈希值,用于确定唯一的提交状态。文件push时会压缩,然后上传同时生成一串检验字符串。at后面的数字就是检验字符串的前面部分, 是带有子模块的项目;需要进入下载的文件下,运行命令 git submodule update --in 阅读全文
posted @ 2020-04-19 13:14 Tony.Jia 阅读(4467) 评论(0) 推荐(0)
摘要: freemodbus的兼容性非常好,可以方便的在很多的平台进行移植,这与它的代码架构有很大的关系。这里我们不考虑代码的移植过程,仅仅分析它的层次结构。 我认为,freemodbus协议实际上是分了三个层次的 1. 应用层(或者说暴露给应用层的接口): 接口定义全部在头文件mb.h中包含,在mb.c中 阅读全文
posted @ 2020-04-16 19:53 Tony.Jia 阅读(372) 评论(0) 推荐(0)
摘要: 一、实验要求 二、代码实现 assume cs:code,ds:data data segment db 16 dup(0) data ends code segment start: mov ax,0f000h mov ds,ax mov si,0ffffh ;ds:si指向f000:ffff m 阅读全文
posted @ 2020-04-13 19:57 Tony.Jia 阅读(410) 评论(0) 推荐(0)
摘要: 一、实验要求 二、代码实现 1 assume cs:code,ds:data 2 3 data segment 4 db 'Welcome to masm!' 5 db 16 dup(0) 6 data ends 7 8 code segment 9 start: mov ax,data 10 mo 阅读全文
posted @ 2020-04-10 19:53 Tony.Jia 阅读(466) 评论(0) 推荐(0)