目录
一、串口协议和RS-232标准
1.串口通讯协议简介
串口通讯 (Serial Communication)是一种设备间非常常用的串行通讯方式,电子工程师在调试设备时也经常使用该通讯方式输出调试信息。 通讯协议,我们以分层的方式来理解,最基本的是把它分为物理层和协议层。物理层规定通讯系统中具有机械、电子功能部分的特性,确保原始数据在物理媒体的传输。协议层主要规定通讯逻辑,统一收发双方的数据打包、解包标准。
2.RS-232 信号线
在最初的应用中, RS-232 串口标准常用于计算机、路由与调制调解器 (MODEN ,俗称“猫”) 之间的通讯 ,在这种通讯系统中,设备被分为数据终端设备 DTE( 计算机、路由 ) 和 数据通讯设备 DCE( 调制调解器 ) 。我们以这种通讯模型讲解它们的信号线连接方式及各个信号线的作用。在旧式的台式计算机中一般会有 RS-232 标准的 COM 口 ( 也称 DB9 接口 )。
3.USB/TTL转232
(1)TTL与232串口互转:
单片机串口(TTL电平)想和电脑串口(232电平)通信,就需要使得他两的电平逻辑一样才可以通信。这时候,就需要用到转换TTL–232电平的芯片,常用的有MAX232、MAX3232、SP232、SP3232等。MAX232芯片是TTL电平与RS232电平的专用双向转换芯片,不同引脚实现TTL转RS-232或RS-232转TTL的功能。连接方式为:单片机串口—232芯片–串口
(2)USB转232串口:
USB经过PL2303转成了TTL串口,中间那四个窟窿可以引出,TTL再经由MAX232转换为RS-232电平,9针串口引出。
二、STMCubeMX生成代码(使用hal库)
1.实验软件
(1)STMCubeMX 安装及使用教程
(2)Keil,编译代码生成hex文件
(3)Flymcu,烧录软件
实验芯片为STM32C8T6
2.使用STM32CUBEMX生成代码
(1)下载依赖包
在Help中选择Manage embedded software packages
选择芯片相符的包
(2)创建项目
选择ACCESS TO MCU SELECOR创建项目
在 Part Number中输入STM32F103C8选择芯片,再Start Project
在System Core,进入SYS,在debug选择Serial Wire
在选择Clock Configuration,PLLCLK右边选上
将hse那里设为Crystal/Ceramic Resonator
把PA7,PB9,PC15引脚选择GPIO output
点击引脚名,把输出等级改为high
点击project manager,配置好自己的路径和项目名,然后IDE那项改为MDK-ARM,并点code generate选择生成初始化.c/.h文件