STM32CubeMX系列通讯小鹿刀 -- -- 光电灯

      最后更新:2021-10-30 20:13

      用STM32CubeMX和Keil MDK以及HAL图书馆一起完成当前灯光的照明。

      目录

      • I. STM32 门户网站通信框架
      • 二. STM32 CubeMX和Keil都以HAL图书馆为基础。
        • 2.1 与CubeMX建立适当的代码。
        • 嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿。
        • 一、一、一一三一一
      • 三、实验结果及观测
        • 3.1 实验结果
        • 三、二、三、三、二、三、三、二、三、三、四、三、四、三、四、四、四、四、四、四、四、四、四、四、四、四、四、四、四、四、四、四、四、六、六、六、六、四、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、
          • 配置Debug
          • 开始仿真
          • 观测波形
      • 四、总结

      I. STM32 门户网站通信框架

      • STM32具有两个系列通信界面:UART(一般非同步收发器)和USART(一般非同步天体仪),有三台USART和两台UART(大型SSM32F10x处理器)。

      • UART 脚相连接方法
        RXD: 数据上岗和数据接受;
        TXD: 发送数据报价, 传输数据 。
        在这里插入图片描述
        虽然个人计算机机器和芯片都有TXD和RXD踢脚,但RS232接口(一般为DB9信封)往往由个人计算机机器(或更高的机器)使用,因此不能直接相互连接。 RS232接口为9针(或基脚),通常是通过TxD和RXD的电平转换产生的。

      • 芯片序列端口和rs232级标准在电流转换后出现差异:

        单机的等离子体标准(TTL)为+5V, 1 0V为0;
        Rs232修改标准:0+15/+13V,1+15/13V。

      RS-232通信协定的标准链有以下设备间通信结构:
      在这里插入图片描述
      因此,单机与PC的连接假定在TTL水平与RS232水平之间,单机与上机提供的rs232之间,以及电路转换(附图中的Max232芯片)。

      点燃现有灯具时,采取下列步骤:

      二. STM32 CubeMX和Keil都以HAL图书馆为基础。

      STM32CubeMX是建立SSM32程序的工具,它更好地覆盖许多方面,例如硬件抽象层、中观层、样本代码等等。

      1.安装jdk
      因为STM32CubeMX是写在爪哇的,所以必须安装jdk环境。
      与 Jdk 在线下载的链接 :
      https://www.oracle.com/java/technologies/javase-downloads.html

      安装 STM32CubeMX 。
      下载地址:
      https://www.st.com/en/development-tools/stm32cubemx.html

      请接受我的道歉,csdn.Net/as 4803937/article/details/9885316。

      2.1 与CubeMX建立适当的代码。

      • STM32CubeMX现已开放。

      在这里插入图片描述

      • 选择芯片
        在这里插入图片描述
        在这里插入图片描述
      • 设置系统调试接口系统,然后提取序列线。
        在这里插入图片描述
      • 配置引脚功能
        我用的是PB5、PB0和PB9脚; 选择合适的脚。
        在这里插入图片描述
      • 配置好后如图所示
        在这里插入图片描述
      • 配置, GPIO 配置
        GPIO产出水平

      在这里插入图片描述

      • 生成相关代码
        在这里插入图片描述

      选择一个工程, 输入它的名称, 选择一个位置, 并选择 MDKARM V5 作为工具链/ IDE 。

      • 完成后,选择右上角在这里插入图片描述
        要启动 Keil5 程序, 请选择开放式工程选项 。

      嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿,嘿。

      当在主函数的第97行发现语句时
      在这里插入图片描述

      • 该代码放在鲸鱼说明中,该说明使用了以前设定的HAL图书馆说明。

      它包括因利用HAL图书馆开发而需要使用的若干相关功能。 (这仅说明所使用的功能。 )
      有一个延迟函数( HAL_ Delay) 。
      原型函数: HAL_ Delay (IO viint32_t 延迟) 无效
      延迟是一个参数,该参数以毫秒指定延迟的持续时间。
      2 脚本脚本函数 (HAL_GPIO_WritePin) 可用 。
      无效 HAL_GPIO_WritePin (GPIO_TypeDef *GPIOx, Vint16_t) 原型
      GPIO_Pin, GPIO_PinState PinState)
      参数说明:
      提勒页脚组(x值为 AG) GPIOx
      GPIO_Pin: 脚本编号( x 值为 015) 。
      Pin State:信头脚状况(取自GPIO_BIT_RESET,0;GPIO_BIT_SET,1)。

      语句如下:

      HAL_ Delay( 100) 是用于 1 的自定义值, 而 HAL_ Delay( 500) 是用于 0 的自定义值 。

      • 完成后, 编译、 构建、 生成 。 Hex 文件

      一、一、一一三一一

      我们还在用Mcuisp文件烧它
      在这里插入图片描述
      整个烧伤过程中 盯着芯片的启动1开关

      三、实验结果及观测

      3.1 实验结果

      在这里插入图片描述

      三、二、三、三、二、三、三、二、三、三、四、三、四、三、四、四、四、四、四、四、四、四、四、四、四、四、四、四、四、四、四、四、四、六、六、六、六、四、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、六、

      Keil对波形的表示是朝这个方向迈出的切实步骤。
      我在这里简略说明:

      配置Debug

      • 要使用软件模拟,请在“调试”标签中选择“使用模拟器”;然后选择“运行到”。
        Main() 表示您绕过汇编过程,直接到主函数开始模拟。
        DLL是“DARMSTM”。DLL和TARMSTM.DLL;条目选项是“PSTM32F103C8”,用于配置支持STM32F103C8的硬件和软件模拟。
        在这里插入图片描述

      开始仿真

      在这里插入图片描述
      在这里插入图片描述
      我有PB5,PB0,PB9。
      在这里插入图片描述

      函数与我们能观察到的波形相关讨论。

      观测波形

      • 如海浪图所示,PB5的起点是低水平,1级持续,并成为高水平的,在以下的脚被修改之前再持续一秒钟,以及修改多少。
        在这里插入图片描述
        运行结果的波形与运行结果的波形相同。
        在这里插入图片描述

      光标被移动到第一个周期, 显示时间=0. 112003s, 与实际时间不同, 原因与晶体设置无关。 根据数据, 我将晶体线设定为 8 MHz (原72 MHz ) 。
      在这里插入图片描述

      在这里插入图片描述

      四、总结

      STM32 CubeMX和HAL图书馆现在比以前更容易使用。

      参考文章:
      [STM32] 合并原则(超基本、详细版本)
      https://blog.csdn.net/qq_43279579/article/details/112233696

      本文由 在线网速测试 整理编辑,转载请注明出处。

          热门文章

          文章分类