目录
一. 了解串口协议和RS-232标准,以及RS232电平与TTL电平的区别;了解"USB/TTL转232"模块(以CH340芯片模块为例)的工作原理。
三. 配合Keil,使用寄存器方式(汇编或C,不限) 或HAL库这两种方式,完成下列任务:
1、重做上一个LED流水灯作业,即用GPIO端口完成3只LED红绿灯的周期闪烁。
2、完成一个STM32的USART串口通讯程序(查询方式即可,暂不要求采用中断方式)
一. 了解串口协议和RS-232标准,以及RS232电平与TTL电平的区别;了解"USB/TTL转232"模块(以CH340芯片模块为例)的工作原理。
串口通信和RS-232协议:串按位(bit)发送和接收字节。尽管比字节(byte)串行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。串口通信协议是指规定了数据包的内容,内容包含了起始位、主体数据、校验位及停止位,双方需要约定一致的数据包格式才能正常收发数据的有关规范。在串口通信中,常用的协议包括RS-232、RS-422和RS-485。RS-232(ANSI/EIA-232标准)是IBM-PC及其兼容机上的串行连接标准。可用于许多用途,比如连接鼠标、打印机或者Modem,同时也可以接工业仪器仪表。用于驱动和连线的改进,实际应用中RS-232的传输长度或者速度常常超过标准的值。RS-232只限于PC串口设备间点对点的通信。RS-23串口通信最远距离是50英尺。
RS232电平和TTL电平的区别:TTL电平信号之所以被广泛使用,原因是因为:通常我们采用二进制来表示数据。而且规定,+5V等价于逻辑“1”,0V等价于逻辑“0”。这样的数据通信及电平规定方式,被称做TTL(晶体管-晶体管逻辑电平)信号系统。这是计算机处理器控制的设备内部各部分之间通信的标准技术。rs232是个人计算机上的通讯接口之一,由电子工业协会(Electronic Industries AssociaTIon,EIA) 所制定的异步传输标准接口。通常 RS-232 接口以9个引脚 (DB-9) 或是25个引脚 (DB-25) 的型态出现,一般个人计算机上会有两组 RS-232 接口,分别称为 COM1 和 COM2。RS232的电平标准为+12V为逻辑负,-12为逻辑正,TTL电平为5V为逻辑正,0为逻辑负。
"USB/TTL转232"模块(以CH340芯片模块为例)的工作原理:USB转TTL串口模块是一个非常实用的工具,可以测试模块的UART串口通信和通过单片机的UART接口给单片机等下载程序。能够在电脑上的串口助手软件非常直观的显示出串口设备返回的数据以及发送相应的控制数据给串口设备。常见的有CP2102、PL2303、FT232、CH340等串口芯片方案的USB转串口模块。以下以CH340串口模块为例,对其进行自检测试。
原理图:
二. 安装 stm32CubeMX
1.安装jdk
由于STM32CubeMX是Java实现的,需要安装jdk环境。
jdk官网下载链接:
Java Downloads | Oracle
2.安装STM32CubeMX
下载地址:
STM32CubeMX - STM32Cube initialization code generator - STMicroelectronics
安装路径中不要包含英文:
3.安装固件库
打开cubeMX,在help下选择manage
点击Install Now
出现绿点证明安装成功
三. 配合Keil,使用寄存器方式(汇编或C,不限) 或HAL库这两种方式,完成下列任务:
1、重做上一个LED流水灯作业,即用GPIO端口完成3只LED红绿灯的周期闪烁。
原理图:
创建新项目
双击进入stm32f103c8
点击System Core,进入里面的SYS,在debug那里选择Serial Wire
将system clock mux从HSI设为PLLOCK
设置时钟RCC,在High Speed Clock选择Crystal/Ceramic Resonator
选择引脚PA12,PB1,和PC14,并点击GPIO_Output