目录
一、stm32CubeMX完成LED点亮
(一)、用stm32CubeMX配置一个模板
首先进入双击进入程序,然后NEW Project下选择ACCESS TO MCU SELECTCR
进入如下界面后在Pat Number中输入你要的芯片型号,我选择的是stm32F103C8T6
选中你要的芯片的封装类型,然后点击Start Project
进入如下界面后,在system core中点击sys
在Debug选项中选择如下选项
然后选择clock configuration界面
把PLLCLK右边选上
回到如下界面后,hse那里设为Crystal/Ceramic Resonator
点击相应的引脚设置输出寄存器了,选择为GPIOX_OUTPUT
我选择的是PA0、PB0、PC15。
设置完寄存器后,回到如下界面,选择GPIO选项,点击各寄存器名字后,将把输出等级改为high
然后进入Project Manager界面
输入你的项目名称和你项目要保存的地址
将IDE那项改为MDK-ARM
点击Code Generatr,进入如下界面
将择生成初始化.c/.h文件,后面点击generate code就行了
进入你创建后的工程,如下图所示。
然后找到main文件,滑到主函数那一部分
可以在while循环中编写你的程序
我编写的程序如下,我用到是PA0,PB0,PC15
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_0,GPIO_PIN_RESET);
HAL_Delay(500);
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_0,GPIO_PIN_SET);
HAL_Delay(500);
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_0,GPIO_PIN_RESET);
HAL_Delay(500);
HAL_GPIO_WritePin(GPIOB,GPIO_PIN_0,GPIO_PIN_SET);
HAL_Delay(500);
HAL_GPIO_WritePin(GPIOC,GPIO_PIN_15,GPIO_PIN_RESET);
HAL_Delay(500);
HAL_GPIO_WritePin(GPIOC,GPIO_PIN_15,GPIO_PIN_SET);
HAL_Delay(500);
将上述运行产生的HEX文件拷入单片机中 ,连接运行后如下
二、STM32的USART串口通讯
(一)、USART简介
通用同步异步收发器(USART)提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的 外部设备之间进行全双工数据交换。USART利用分数波特率发生器提供宽范围的波特率选择。 它支持同步单向通信和半双工单线通信,也支持LIN(局部互连网),智能卡协议和IrDA(红外数据 组织)SIR ENDEC规范,以及调制解调器(CTS/RTS)操作。它还允许多处理器通信。 使用多缓冲器配置的DMA方式,可以实现高速数据通信。
(二)、STM32CubeMX实现串口通信
打开软件,点击如下
进入如下界面后,选择你需要的芯片
选择A->Z
选择USERT1
Mode选择Asynchronous异步通信
设置波特率、数据长度、奇偶校验、校验
在Categories中选择SYS
在SYS中Debug改为Serial Wire