这只是刚开始第一步。单片机代码根据OneNET平台给的代码改的,纯新手,慢慢学。。后面主要是写服务端处理数据 代码地址:https://github.com/klren0312/stm32_wifi 2017.3.16 搭建简易的物联网服务端和客户端目录 使用的器件: STM32F103CBT6 单片机 ESP8266-01S wifi模块 SHT20温湿度 BT05蓝牙模块 反射式红外 使用的Node.js服务端: net模块 express node-mysql 一、单片机相关代码(只提供网络
本篇介绍整个程序最神奇的地方,通过在html页面中分组使用data标签来配置modbus协议中各部分字节对应的业务含义以及数据类型,前端和后台使用统一的代码来完成其他业务读写功能。
摘要 在我之前的文章中,我使用了不同编程语言开发了如下许多上位机。 序号内容语言1《如何定制自己的HID调试助手》C#2《C# 串口上位机开发》C#3《Qt 串口上位机开发》QT4《教你动手写UDP协议栈 - OTA上位机》python5《基于RT-THREAD nano的平衡车--上位机软件》QT6《R-Plan上位机》QT7《BearPi TCP》QT 你会发现很零散,集成度,而且久而久之就没有维护了。今天我又来解锁一种开发工具的神器--VScode插件。 其实vscode现在已经很多大厂先后开发出他们
本专栏由Mculover666创建,主要内容为寻找嵌入式领域内的优质开源项目,一是帮助开发者使用开源项目实现更多的功能,二是通过这些开源项目,学习大佬的代码及背后的实现思想,提升自己的代码水平,和其它专栏相比,本专栏的优势在于:
所以最近会比较忙一些,也就不会更新太频啦,但是我还是会用心分享我的所见所闻及所经历的东西,希望各位谅解!
最近在优化公司的一款基于RT-Thread操作系统的液体探测仪产品。关于RT-Thread,我最开始用的是RT-Thread Nano,所以这款产品也是基于RT-Thread nano进行开发的,关于RT-Thread之前也写了一些文章,如下:
pyserial是python提供用于进行串口通信的库 源文档:https://pythonhosted.org/pyserial/ 1、安装pyserial pip install pyserial 2、查看电脑现连串口设备 import serial.tools.list_ports #检测设备的端口数 # plist = list(serial.tools.list_ports.comports()) # if len(plist) <= 0: # print("没有发现端口!") # e
通过Lua小程序,我们可以方便方便的在线方式做串口固件烧录,也可以离线方式运行Lua小程序做烧录。
1、有的模块,会通过一个GPIO口来选择当前是什么模式,比如将一个IO口拉低则进入透传模式,也就是不再识别AT指令,即使收到AT指令也是直接透传给主机
本篇详细的记录了如何使用STM32CubeMX配置STM32L431RCT6的硬件I2C外设,读取SHT30温湿度传感器的数据并通过串口发送。
cmd-parse是一款非常轻量、高效的命令解析器,本文基于TangNano 4K开发板,高云GW1NSR-4C FPGA芯片,演示在片上ARM处理器的移植和使用,并实现3个简单的命令:
如果已安装Visual Studio Code,打开命令行工具,输入code --version命令,检查版本号是否为1.45.1及以上版本;可以正常返回版本号,说明环境变量设置也正确。
上一节我们学习了RTT的PIN设备的使用,从PIN设备的例程再一次体会到RTT编程的灵活和简单,最重要的是让开发者专注于应用开发,文章链接:
串口1 void uart_init(u32 bound1){ GPIO_InitTypeDef GPIO_InitStructure; USART_InitTypeDef USART_InitStructure; NVIC_InitTypeDef NVIC_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOB|RCC_APB2Periph_USART1|RCC_APB
shell,中文是外壳的意思,就是操作系统的外壳。通过shell命令可以操作和控制操作系统,比如Linux中的Shell命令就包括ls、cd、pwd等等。总结来说,Shell是一个命令解释器,它通过接受用户输入的Shell命令来启动、暂停、停止程序的运行或对计算机进行控制。
DMA(Direct Memory Access),即直接内存存储,在一些数据的传输中,如串口、SPI等,采用DMA方式,传输过程不需要CPU参与,可用让CPU有更多的时间处理其他的事情。
本节先介绍阿克曼小车模型,小车仿真设计包括SolidWorks和gazebo三维建模。
DobotDemoV2.0--》DobotDemoForArduino--》DobotDemo--》DobotDemo.ino
本设计采用分层设计思想,主要由顶层模块、波特率发生器、接收模块和发送模块这4个模块组成,强调功能划分明确,便于系统设计和调试。 本系统要求在Xilinx Spartan 3E Starter开发板上实现波特率为9600,停止位为1比特、不带校验位并且具备复位功能的串口通信控制器,并要求和PC机通过超级终端完成双向通信。不仅要求将板极发送数据显示在PC机的超级终端上,还要求用PC发送数据的ASCII码来驱动电路板的8个LED灯。为了便于测试,要求当按下开发板上的button_s时,板级发送的数值恢复到48,对
拿到开发板是开心的,调试过程是苦涩的,完成了自己的期望值是美好的,我可能处于苦涩和美好之间。 一开始理想很美好,想基于EVB_AIoT做个智能家居中控BOX,但陷入调试LVGL的一个多月后,发现可能做不成自己想做的东西了,虽然最后没有成功,但也移植开发了一些功能,所以本篇幅主要介绍自己在使用基于TencentOS Tiny的 RT1062开发过程中的一些记录吧。 希望后续可以移植成功LVGL,做完自己想做的事情。
队列清空的实现很简单,只要把队列头和队队列尾检查状态、当前指针的位置置为0即可,实现如下:
本文移植Letter shell,通过串口输入命令,与开发板交互。 Letter shell的项目地址:https://github.com/NevermindZZT/letter-shell,最新的版本是3.1.2,也正是本文移植的版本。
串口中断属于STM32本身的资源,不涉及到FreeRTOS,但可与FreeRTOS配合使用。
接上一章剖析RT-Thread中finsh组件实现(1),rt_device 具体定义如下:
Micro-Lab可以称得上是迄今为止最棒的嵌入式调试工具,在调试过程中遇到的所有痛点,在这里都得以解决,并引入了很多新的功能,如串口/网络示波器,串口/网络指令编程,革命性的事件驱动型上位机生成器——组态画布等数十个功能,无论是在使用手感上还是功能实用方面都是绝对一流,可以说Micro-Lab重新定义了嵌入式调试工具,同时也成为行业工具的标杆。(当前介绍引自码云:https://gitee.com/fengmeitech/Micro-Lab),来看看具体长什么样吧:
电子钟是一种能够准确显示时间的设备,广泛应用于家庭、办公场所和公共场所,为人们提供了方便和准确的时间信息。本项目设计一个基于51单片机的电子钟,使用DS1302作为RTC时钟芯片,LCD1602作为显示屏,并通过串口方式连接上位机进行时间设置和闹钟设置。
实际生产测试需求中,常常有串口连通性测试,其对应的最简单的测试方法即:「调用非交互式串口工具登录串口并发送(命令)接收数据(命令返回)」。
版权声明:本文来源网络,免费传达知识,版权归原作者所有。如涉及作品版权问题,请联系我进行删除。
使用40Gbps数据线连接TinyVision开发板和TypeC-SUB调试器,如下图所示:
编译系统源码后,打包后生成的系统文件称之为固件。固件一般为.img格式。把固件下载到开发板或者产品上的过程称之为烧写固件。
由于之前我们已经使用了串口1(STM中是USART1,GD中是USART0),本文中以串口2作为示例(STM中是USART2,GD中是USART1)。
何谓串口?串口就是一个计算机接口,用于数据通信,例如计算机。老一点的PC和笔记本都有串口,工控机一般配置有串口,如果没有可以到淘宝上买USB-串口转换器。
输出调试信息是嵌入式开发中必不可少的调试利器,嵌入式开发的一个特点是很多时候没有操作系统,或者没有文件系统,常规的打印log到文件的方法基本不适用。
本来我是打算先讲完RT-thread的内核,再讲设备和组件,但是考虑到后面很多地方都会用到FinSH控制台,所以我就先把这个讲了,这样大家在后面的学习就不会有很多疑问了。 FinSH 是 RT-Thread 的命令行组件(shell),它提供一套供用户在命令行调用的操作接口,主要用于调试或查看系统信息,可以使用串口 / 以太网 / USB 等方式与 PC 机进行通信。一般我们默认用串口1和PC机通讯,通过串口我们可以查看单片机运行的情况,也可以通过发送命令控制单片机执行某些操作。关于FinSH更多详细的内容,大家可以在官网上面查看。 FinSH控制台组件介绍:https://www.rt-thread.org/document/site/programming-manual/finsh/finsh/#
1. Andorid串口开发包一般使用google多年前提供的android-serialport-api, 提供自用分支
因为正常是在Debian系列的Linux发行版上面使用的(deepin或者ubuntu这些的,解决方案比较完善),所以就是用apt来进行安装,其他发行版使用自己的包管理软件进行安装
linux上的串口驱动,这个较简单,有标准的模块可用。操作的是标准的设备文件。如:ttys0等。
透传,即透明传输(pass-through),指的是在通讯中不管传输的业务内容如何,只负责将传输的内容由源地址传输到目的地址,而不对业务数据内容做任何改变。
有一次做一个东西,为了尽量不占用CPU的处理数据时间,所以就使用DMA接收串口的数据,但是呢问题来了.,,,,,怎么样才能确定接收到了一条完整的数据了,,我们都知道只要打开DMA 那家伙就不停的把接收的数据放到我们指定的地方. 只要接收到一条完整的数据我就该去处理了 关于空闲中断,,,就是说每接收到一条完整的数据就会置位空闲标志位,我们只需要判断空闲标志位是否置一,,就能知道是不是接收到了一条完整的数据 用空闲中断的好处就是,,对于以前我写程序通信都会在数据的后面加上尾,,然后另一个接收的单片机通过判断数据
本篇详细的记录了如何使用STM32CubeMX配置STM32L431RCT6的硬件QSPI外设与 SPI Flash 通信(W25Q64)。
作为主控芯片的实时系统,提供多线程编程.小车的每个重要的需要实时的功能都单独作为一个线程.如小车的mpu9250姿态解算出姿态角(Roll、Pitch、Yaw )的过程就单独使用了一个线程(mpu9250),小车的PID控制速度的代码也单独使用了一个线程(speed).每个功能线程(mpu9250,speed...等)都会处理完各自的数据得出结果,并且这些结果在必要的时候提供给主线程(master)使用.也正是因为rt-thread的优先级全抢占式调度使得重要的线程能及时处理完.另外rt-thread提供的finsh/msh在调试期间起到了很大的作用,同时也可以通过远程蓝牙串口控制小车的行为.
本章节主要为大家讲解Matlab的WIFI方式波形数据传输和后期数据分析功能,非常实用。
在STM32中UART和USART是不相同的,在官方的文档中,大部分配置的都是USART2和UASRT3,对于UART4和UART5却很少有人配置,由于最近在集成项目,所以要用到多种串口,所以索性就配置了UART4和UART5
完整源码下载: https://download.csdn.net/download/xiaolong1126626497/18245590
3D打印技术是增材制造的典型体现。它的原理是通过特定的切片软件将产品的3D设计模型图转换成3D打印机控制系统可以识别的控制代码,该控制代码在导入3D打印机控制系统后,3D打印机控制系统通过解析每一行控制代码,进而控制3D打印机打印模型。例如FDM打印机的打印原理,如下图1-1所示。
领取专属 10元无门槛券
手把手带您无忧上云