说明 这节实现的功能: STM32+W5500实现MQTT通信控制 细节功能: 1.DHCP动态获取IP 2.DNS域名解析 3.网口<--MQTT-->485/422透传通信 测试准备工作 注:如果想连接自己的服务器测试,请修改为自己的MQTT连接信息 一,按照下面方式短接通信端口 电脑串口<-- ...
分类:
其他好文 时间:
2019-12-06 09:20:39
阅读次数:
235
一:位带操作介绍 1. 位带操作 在学习 51 单片机的时候就使用过位操作, 通过关键字 sbit 对单片机 IO 口进行位定义。 但是 STM32 没有这样的关键字, 而是通过访问位带别名区来实现。即将每个比特位膨胀成一个 32 位字, 当访问这些字的时候就达到了访问比特的目的。 比方说 BSRR ...
分类:
其他好文 时间:
2019-12-05 14:45:11
阅读次数:
114
一:获得工程模板基础文件 首先我们在电脑任意位置创建一个文件夹, 命名为“寄存器模板创建” , 然后在其下面新建 2 个文件夹, 如下: Obj 文件夹: 用于存放编译产生的 c/汇编/链接的列表清单、 调试信息、 hex文件、 预览信息、 封装库等文件。 User 文件夹: 用于存放用户编写的 m ...
分类:
其他好文 时间:
2019-12-04 13:13:46
阅读次数:
163
[TOC] STM32 .ld链接文件分析及一次bug解决过程 问题描述 原子板的代码中含有一个关于使用外部SRAM的功能,由于本人的开发板的SRAM只有512K,因此稍微修改了一下代码,同时使用GCC进行编译,但是这里却报错了,源码如下: 这里的 指的是4字节对齐,这是个MDK的用法,换到GCC只 ...
分类:
其他好文 时间:
2019-12-02 00:32:35
阅读次数:
590
1、背景 STM32 MCU对25.6Kb数据进行压缩,丢掉每个数据的低4位然后2个字节拼接为1个字节。发现处理耗时竞达1ms以上,于是开始进行优化,最后达到200us的效果,提速5倍以上。 2、优化 2.1优化前 该处理过程耗时1ms60us。 2.2 第一次优化 考虑到过多的for循环,会导致效 ...
分类:
其他好文 时间:
2019-11-29 10:50:05
阅读次数:
93
实现GPRS数据传输的原理是:STM32解析一串数据或命令,然后通过串口或其他方式一个字符一个字符地发送给SIM900A模块,SIM900A接收到数据之后再通过SIM卡发送到服务器。当SIM900A接收到数据时,立即响应中断,按照中断所设置的方式进行数据处理。此时,就需要通过发送检验和接收检验来控制数据的传输。
分类:
其他好文 时间:
2019-11-27 18:56:39
阅读次数:
87
本文通过,介绍STM32主要的底层配置,通过关键步骤的程序源代码的介绍,阐述实现数据传输的细节以及注意事项。该方法对其他项目或芯片有一定的实现价值和参考价值,且简单可靠,具有普遍性和通用性。
分类:
其他好文 时间:
2019-11-27 09:18:15
阅读次数:
70
裸机--按键采集方式: 扫描方式:while(1)中不断扫描引脚的高低电平,实现扫描按键的功能,效率低 外部中断:把中断源和引脚连接起来.再设置外部中断触发方式.实现按键触发外部中断,效率高 定时器中断:每隔一段时间检测引脚电平,然后消抖.实现按键检测.常用于实时系统等复杂场景.裸机也可以用. 按键 ...
分类:
其他好文 时间:
2019-11-26 19:45:35
阅读次数:
126
ST为开发者提供了标准外设库(STD库)、HAL库、LL库 三种。前两者都是常用的库,后面的LL库是ST新添加的,随HAL源码包一起提供,目前支持的芯片也偏少。 标准外设库(Standard Peripherals Library)是对STM32芯片的一个完整的封装,包括所有标准器件外设的器件驱动器 ...
分类:
其他好文 时间:
2019-11-24 13:25:00
阅读次数:
90
https://zhuanlan.zhihu.com/p/30247549?utm_source=wechat_session&utm_medium=social&utm_oi=28054357278720(如何学习CAN总线?) 致远电子 知乎文章https://www.zhihu.com/peo ...
分类:
其他好文 时间:
2019-11-24 11:58:34
阅读次数:
55