在使用 USB 转 TTL 模块之前,我们需要了解 TTL 协议
TTL 一般是从单片机或者芯片中发出的电平,高电平为 5V(51单片机)或者 3.3V(stm32)
TTL 接口属于并行方式传输数据的接口,采用这种接口时,不必在液晶显示器的驱动板端和液晶面板端使用专用的接口电路,而是由驱动板主控芯片输出的 TTL 数据信号经电缆线直接传送到液晶面板的输入接口
TTL 电平信号应用广泛,是因为其数据表示采用二进制规定,即:
逻辑高电平 == 0 == VCC == 3.3V 或 5V
逻辑低电平 == 0 == 0V == 0V
数字电路中,由 TTL 电子元器件组成电路的电平是个电压范围,规定:
输出高电平 >= 2.4V,输出低电平 <= 0.4V
输入高电平 >= 2.0V,输入低电平 <= 0.8V
USB 转 TTL 模块的作用就是把电平转换到双方都能识别进行通信
单片机通信接口的电平逻辑和 PC 机通信接口的电平逻辑不同,PC 机上的通信 接口有 USB 接口,相应电平逻辑遵照 USB 原则;还有 DB9 接口(九针口),相应电平逻辑遵照 RS-232 原则
单片机上的串行通信通过单片机的 RXD、TXD、VCC、GND 四个引脚,相应电平逻辑遵照 TTL 原则
USB 是一种串口(串口是一大类接口,包括但不仅限于 RS232),它拥有复杂的通讯协议,支持热插拔,并可以以非常快的速度传输数据。串口,是指 RS232 串口,这是一种几乎没有协议的传输接口,可以直接收发数据
具体关于 RS-232 协议的内容会在我的另外一篇博客介绍到:STM32 —— 常用串口通信协议
USB 转 TTL 串口模块是一个非常实用的工具,可以测试模块的 UART 串口通信和通过单片机的 UART 接口给单片机等下载程序。
能够在电脑上的串口助手软件非常直观的显示出串口设备返回的数据以及发送相应的控制数据给串口设备。
常见的有 CP2102、PL2303、FT232、CH340 等串口芯片方案的 USB 转串口模块。以下以 CH340 串口模块为例,对其进行自检测试。、
实物如下图:
USB 转串口即实现计算机 USB 接口到物理串口之间的转换。可以为没有串口的计算机或其他 USB 主机增加串口,使用 USB 转串口设备等于将传统的串口设备变成了即插即用的 USB 设备
串口发送:
串口应用发送数据 -> USB 串口驱动获取数据 -> 驱动将数据经过 USB 通道发送给 USB 串口设备 -> USB 串口设备接收到数据通过串口发送
串口接收:
USB 串口设备接收串口数据 -> 将串口数据经过 USB 打包后上传给 USB 主机 -> USB 串口驱动获取到通过 USB 上传的串口数据 -> 驱动将数据保存在串口缓冲区提供给串口应用读取
下图是 USB 转串口模块的一些功能模块的标示,USB 转串口电路板背后还预留了一些全信号输出的接口,可以将电线直接焊接在这些引脚上来使用预留的功能

下图是对 USB 转串口模块的引脚标示

VCC 与 GND 直接接在单片机上的 VCC 与 GND 即可,RXD 与 TXD 需要接在相对应的 RCC 输入输出的引脚上,这样就可以通过上位机将数据或程序发送或烧录到单片机中
首先,我们将所使用的模块插在电脑上,然后打开设备管理器,由于还没有安装相对应的驱动,所以,在设备管理器中还看不到对应的模块:

我们需要在官网下载模块型号对应的驱动:CH340官网点击下载
下载后解压出来的内容如下图:

直接点击 SETUP.EXE 进行安装,虽然显示的是 CH341SER.INF ,但是 CH341SER.INF 兼容 CH340 ,所以直接点击安装即可:

安装成功如下图:

然后我们重新插上 CH340 模块,重新打开设备管理器,就能看到 CH340 模块对应的设备了:

在设备管理器中右键点击设备,选择属性,并选择端口设置页面,如下图:

点击高级,查看端口号:

下面是用 SSCOM 串口测试工具进行测试,SSCOM 串口测试工具官方下载网站:SSCOM
选择所设置好的串口,打开串口,输入并发送文字,查看是否收到,或收到的字符是否一致:

如果能自收自发数据,且收发数据一致,就说明驱动配置完成,并且模块功能完整

1.CH340 模块插在 USB2.0 口时,5V 排针输出口电流只有 500MA 左右,如过要接的功率比较的大模块建议接 USB3.0 或者给大功率模块单独外接电源且共地
2. 切勿将 VCC 与 GND 短接,否则会烧坏模块,发现插上后模块灯不亮货模块发烫严重请立即拔掉检测是否接反或短路。
文章目录1.开发板选择*用到的资源2.串口通信(个人理解)3.代码分析(注释比较详细)1.主函数2.串口1配置3.串口2配置以及中断函数4.注意问题5.源码链接1.开发板选择我用的是STM32F103RCT6的板子,不过代码大概在F103系列的板子上都可以运行,我试过在野火103的霸道板上也可以,主要看一下串口对应的引脚一不一样就行了,不一样的就更改一下。*用到的资源keil5软件这里用到了两个串口资源,采集数据一个,串口通信一个,板子对应引脚如下:串口1,TX:PA9,RX:PA10串口2,TX:PA2,RX:PA32.串口通信(个人理解)我就从串口采集传感器数据这个过程说一下我自己的理解,
LL库和HAL库简介LL:Low-Layer,底层库HAL:HardwareAbstractionLayer,硬件抽象层库LL库和hal库对比,很精简,这实际上是一个精简的库。LL库的配置选择如下:在STM32CUBEMX中,点击菜单的“ProjectManager”–>“AdvancedSettings”,在下面的界面中选择“AdvancedSettings”,然后在每个模块后面选择使用的库总结:1、如果使用的MCU是小容量的,那么STM32CubeLL将是最佳选择;2、如果结合可移植性和优化,使用STM32CubeHAL并使用特定的优化实现替换一些调用,可保持最大的可移植性。另外HAL和L
目录一、ESP32简单介绍二、ESP32Wi-Fi模块介绍三、ESP32Wi-Fi编程模型四、ESP32Wi-Fi事件处理流程 五、ESP32Wi-Fi开发环境六、ESP32Wi-Fi具体代码七、ESP32Wi-Fi代码解读6.1主程序app_main7.2自定义代码wifi_init_sta()八、ESP32Wi-Fi连接验证8.1测试方法8.2服务器模拟工具sscom58.3测试代码8.4测试结果前言为了开发一款亚马逊物联网产品,开始入手ESP32模块。为了能够记录自己的学习过程,特记录如下操作过程。一、ESP32简单介绍ESP32是一套Wi-Fi(2.4GHz)和蓝牙(4.2)双模解决方
有道无术,术尚可求,有术无道,止于术。本系列SpringBoot版本3.0.4本系列SpringSecurity版本6.0.2本系列SpringAuthorizationServer版本1.0.2源码地址:https://gitee.com/pearl-organization/study-spring-security-demo文章目录前言1.OAuth2AuthorizationServerMetadataEndpointFilter2.OAuth2AuthorizationEndpointFilter3.OidcProviderConfigurationEndpointFilter4.N
在我的代码中,我需要使用各种算法(包括CRC32)对文件进行哈希处理。因为我还在Digest系列中使用其他加密哈希函数,所以我认为为它们维护一个一致的接口(interface)会很好。为了记录,我确实找到了digest-crc,一颗完全符合我要求的gem。问题是,Zlib是标准库的一部分,并且有一个我想重用的CRC32工作实现。此外,它是用C编写的,因此它应该提供与digest-crc相关的卓越性能,后者是纯ruby实现。实现Digest::CRC32一开始看起来非常简单:%w(digestzlib).each{|f|requiref}classDigest::CRC32一切正常:
我正在尝试在我的机器上安装win32-apigem,但在构建native扩展时我遇到了一些问题:$geminstallwin32-api--no-ri--rdocTemporarilyenhancingPATHtoincludeDevKit...Buildingnativeextensions.Thiscouldtakeawhile...C:\Programs\dev_kit\bin\make.exe:***Couldn'treservespaceforcygwin'sheap,Win32error0ERROR:Errorinstallingwin32-api:ERROR:Failed
我在Windows上运行ruby1.9.2并试图移植在Ruby1.8中工作的代码。该代码使用以前运行良好的Open4.popen4。对于1.9.2,我做了以下事情:通过geminstallPOpen4安装了POpen4需要POpen4通过require'popen4'尝试像这样使用POpen4:Open4.popen4("cmd"){|io_in,io_out,io_er|...}当我这样做时,我得到了错误:nosuchfiletoload--win32/open3如果我尝试安装win32-open3(geminstallwin32-open3),我会收到错误消息:win32-op
DellInspiron5488加内存32G 原装内置内存仅仅8G,目前看,真的太小了! 1.内存型号Dell5488内存型号:DDR42666。笔记本有两个内存插槽,原装占了一个,还能扩展一个。 2.买内存如果买Dell原装笔记本内存,8G就得500块左右。 我咨询了一下,三星的笔记本内存,可以兼容。16G,299块(2023年2月23日,京东价) Dell5488内存组合,最多只能插两根16G内存。 我于是买了两根三星16G内存。装上,很爽😄 跑国产系统统信UOS,再也看不到用交换区了,32G内存,爽!
本文代码使用HAL库。文章目录前言一、MCP4017的重要特性二、MCP4017计算RBW阻值三、MCP4017地址四、MCP4017读写函数五、CubeMX创建工程(利用ADC测量MCP4017电压)、对应代码:总结前言一、MCP4017的重要特性蓝桥杯板子上的是MCP4017T-104ELT,如图1。MCP4017是一个可编程电阻,通过写入的数值可以改变电阻的大小。重点在于6引脚(W),5引脚(B
STM32OTA应用开发——通过USB实现OTA升级目录STM32OTA应用开发——通过USB实现OTA升级前言1环境搭建2功能描述3BootLoader的制作4APP的制作5烧录下载配置6运行测试结束语前言什么是OTA?百度百科:空中下载技术(Over-the-AirTechnology;OTA),是通过移动通信的空中接口实现对移动终端设备及SIM卡数据进行远程管理的技术。经过公网多年的应用与发展,已十分成熟,网络运营商通过OTA技术实现SIM卡远程管理,还能提供移动化的新业务下载功能。实际上,现在我们所说的OTA比百度百科的定义还要更广泛,OTA的形式已经不再局限于手机和SIM卡,只要涉及