准备工作 硬件准备 开发板 首先需要准备一个开发板,这里我准备的是STM32L0的开发板(ST Nucleo-64),主控芯片是STM32L073RZ: ?...ST Nucleo开发板 HTS221温湿度传感器 HTS221温湿度传感器是ST公司生产的一款超小型温湿度传感器,提供 16-bit 的温度和湿度输出数据,并且数据输出提供了IIC 和 SPI两种通信接口...选中实验芯片 配置时钟源 该开发板上没有板载外部晶振,所以使用内部时钟(HSI),RCC 设置保持默认: ?...时钟源配置 配置串口 ST-Nucleo 开发板板载ST-Link并且虚拟了一个串口,该串口与STM32芯片的USART2相连。 接下来开始配置USART2: ?...Printf重定向 在本实验中,温湿度传感器数据需要通过串口打印,所以需要配置printf重定向: 参考教程:STM32CubeMX_09 | 重定向printf函数到串口输出的多种方法。
前言 面包板又举办开发板试用活动了,很荣幸能获得一块ST官方的Nucleo-F411RE开发板,感谢面包板社区和ST意法半导体的赞助,这是我第一次试用官方的开发板,收到板子后查了一些关于ST官方开发板的资料...,ST官方的开发板主要分为3种: STM32 Nucleo,如本次我申请到的Nucleo-F411RE STM32 Discovery Kits(探索板) STM32 Evaluation(评估板) 板载的硬件资源依次增加...接口,对于之前玩过Arduino的朋友,那么之前购买的Arduino配套模块,可以直接插在Nucleo系列开发板上使用。...开发板入门指南上介绍,这块板子几乎兼容所有64引脚的STM32芯片,其他的Nucleo板子也都是这种兼容设计。 ?...上电运行 板子上电之后,会显示一个ST-Link设备,一个虚拟串口设备和一个磁盘设备,其中磁盘中有两个文件: ? 即使重新下载程序,也会有这个虚拟U盘,这应该是在Bootloader程序中实现的吧!
板子申请了也有一段时间了,也快到评测截止时间了,想着做点有意思的东西,正好前一段时间看到过可以在MCU上移植MicroPython的示例,就自己尝试一下,记录移植过程。...开发板固件下载:MicroPython downloads Nucleo-F411RE移植MicroPython固件 ?...正好MicroPython支持本次申请的Nucleo-F411RE开发板,就试着把刷成MicroPython的固件,尝试一下使用Python来开发STM32,具体移植过程。...3.硬件连接 由于Nucleo-F411RE板子的USB口是连接到ST-Link调试器,并没有一个连接到STM32 USB引脚的接口,所以我使用的是这种转接板,把USB的5个信号转接成5个排针,并和板子上的引脚连接...上电之前要先设置BOOT0=1,BOOT1(PB2)=0,然后烧录MicroPython固件。 设置完成之后,连接电脑,设备管理会出现一个DFU设备 ?
support/man/docs/jlink/jlink_trace_itm_viewer.htm 嵌入式软件开发中的一个基本需求就是能通过终端来输出调试信息,一般可通过2种方式实现:一种是使用串口线连接板上的...,跑printf比较吃力, 但是STM32这种32位单片机跑printf就很容易了,而作为一种调试手段,printf十分方便、直观。...下面以STM32F4Discovery开发板+GCC为例说明。 根据这里的方法,也可以把printf定位到其他外设。...PS:IAR在编译选项里自带了printf via SWO的功能,就不需要外加设置了。...利用这个函数把信息输出到SWO口之后再打开St-Link Utility, 在菜单里找到ST-LINK→Printf via SWO Viewer就会弹出一个窗口, 设置System Clock为单片机内核频率
输入AT+HELP 获取帮助信息,查看当前支持的AT指令集,如下所示 3.1.2.1.2 修改网关连接的LoRaWAN服务器地址 在PC端的串口调试窗口输入AT+PKTFWD来设置LoRa网关连接的服务器地址与端口号...-cn470prequel.bin 更新固件 先给 LoRa网关板供电,然后通过USB连接线插入电脑 Nucleo-F746ZG板载的ST-Link会识别成一个U盘 盘符:NODE_F746ZG(H:)...3.2.1 新建项目 点击 “开发中心” ->“新建项目”,在“新建项目”页面填入实际项目的相关信息 3.2.1.1 新建产品 点击上述已创建的项目,在弹出的“新建产品”页面,本文要加入的产品为NUCLEO_LRWAN3...在 TencentOS tiny 官方开源仓库 下载源码,进入目录,打开 TencentOS_tiny.uvprojx...LoRa Gateway 开发板接入腾讯云物联网开发平台 https://blog.csdn.net/iotisan/article/details/104852938 STM32 Nucleo pack
准备目标硬件(开发板/芯片/模组) TencentOS tiny目前主要支持ARM Cortex M核芯片的移植,比如STM32 基于Cortex M核全系列、NXP 基于Cortex M核全系列等。...本教程将使用STM32官方Demo开发板 NUCLEO-L073RZ进行示例移植,其他 ARM Cortex M系列开发板和芯片移植方法类似。...调试ARM Cortex M核还需要仿真器, NUCLEO-L073RZ自带ST-Link调试器,如果您的开发板或者芯片模组没有板载仿真器,就需要连接外置的仿真器,如J-Link、U-Link之类的。...CubeMX安装完成后,我们就可以使用CubeMX来给NUCLEO-L037RZ开发板生成裸机工程了,如果您的芯片不是STM32,而是其他厂商的ARM Cortex M系列,您可以根据产商的指导准备裸机工程...裸机工程生成完成,该工程可直接编译并烧写在板子上运行。
准备目标硬件(开发板/芯片/模组) TencentOS tiny目前主要支持ARM Cortex M核芯片的移植,比如STM32 基于Cortex M核全系列、NXP 基于Cortex M核全系列等。...本教程将使用STM32官方Demo开发板 NUCLEO-L073RZ进行示例移植,其他 ARM Cortex M系列开发板和芯片移植方法类似。...调试ARM Cortex M核还需要仿真器, NUCLEO-L073RZ自带ST-Link调试器,如果您的开发板或者芯片模组没有板载仿真器,就需要连接外置的仿真器,如J-Link、U-Link之类的。...CubeMX安装完成后,我们就可以使用CubeMX来给NUCLEO-L037RZ开发板生成裸机工程了,如果您的芯片不是STM32,而是其他厂商的ARM Cortex M系列,您可以根据产商的指导准备裸机工程...] 3.4 Pin设置界面配置串口 [ffd52f709fd148ba7e654c8ce320d0ad.png] 3.5 Pin设置界面配置GPIO [278977b909359db187519b8d6a9125d4
使用Arduino IDE对Nucleo-G071RB编写调试程序 arduino IDE作为一款比较方便的开发环境它的通用性还是非常不错的 它不仅能对Arduino开发板进行开发对其他的比如STM32...系列,ESP8266系列等 下面就以之前电堂送的Nucleo-G071RB开发板为例说说stm32系列的开发板怎么用ArduinoIDE开发吧 image.png 附加开发板管理器中添加项 查看Arduino...的支持开发板列表发现是支持该款开发板的 然后复制图中的链接https://raw.githubusercontent.com/stm32duino/BoardManagerFiles/master.../STM32/package_stm_index.json 接着打开Arduino IDE 在文件->首选项 中的开发板管理器的附加管理器网站中添加刚才复制的链接,重启Arduino 下载STM32duino...中的开发板 接着在保证网络良好的情况下打开Arduino点击 工具->开发板->开发板管理器 在开发板管理器中安装STM32 Core(由于网站服务器较远所以下载速度比较慢需要耐心等待) 上传程序
嵌入式开发相对来说需要有硬件和软件的基础知识,相对来说综合技能要求高,所以,在硬件方面没有模拟电路或者数字电路基础,软件没有C语言基础的同学建议把这三个课程补一补,然后开始嵌入式开发学习; 【公开课程】...硬件准备,需要一定的投入: 1、ARM开发板,主流的是STM32f1/STM32f4系列开发板,STM32F1系列的开发板相对要便宜很多,建议入门可以先选F1系列开发板, 可以在淘宝搜索STM32 nucleo...开发板,或者正点原子的STM32开发板等等,他们提供的配套学习资料还是非常丰富的; 2、J-Link 仿真器或者ST-Link V2调试器、USB-TTL、简单万用表(用来量个电压什么的),各种排线,烙铁等等...; 3、软件 Keil 5(单片机集成开发环境) STM32CubeMX(自动配置stm32编程的相关文件) 如果是j-link仿真器或者是ST-link调试器,则不用串口下载器 FLYMCU(stm32...--------*/ #ifdef __GNUC__ /* With GCC/RAISONANCE, small printf (option LD Linker->Libraries->Small printf
Clion 1.1 Clion简介 Clion 是一款专为开发C及C++所设计的跨平台IDE。它是以IntelliJ为基础设计的,包含了许多智能功能来提高开发人员的生产力。...STM32F103C8T6 工具安装: STM32CubeMX:https://www.st.com/en/development-tools/stm32cubemx.html OpenOCD:OpenOCD是用于对STM32...2.2 配置CubeMX项目工程 配置 SYS: 配置 RCC 配置引脚 设置 PC13 引脚为 GPIO_Output 来点亮 LED 灯。...配置串口 USART1 修改IDE 保存工程,使用原先的工程名称覆盖原先的工程 回到CLion,选择st_nucleo_f103rb.cfg 寻找st_nucleo_f103rb.cfg文件位置...: 最后使用串口程序烧录进开发板。
第一个工程 翻转引脚 上一篇文章我们详细介绍了 STM32F030 从复位时取得复位向量,系统初始化,然后跳转到 main( ) 函数的过程。...对于 STM32 Nucleo 这块儿开发板来说,板上资源很少,所以BSP只提供了相应的按键(BUTTON)和指示灯(LED)支持代码。...在芯片资源比较少时,可以通过选中 Options for Target->Target->Use MicroLIB 选项,使用简化版的库来实现 printf 等操作。...BSP 板级支持包 stm32f0xx_nucleo.c 针对 STM32 Nucleo 开发板的类型,宏定义,支持代码。...在主程序中调用库,只需要通过 main.h 包含下面这个头文件: stm32f0xx_hal.h 如果有 BSP 则包含 BSP 的头文件,在本工程是: stm32f0xx_nucleo.h 使用到哪个模块就在配置文件中打开使能该模块的宏定义
我使用的是F103RB-NUCLEO开发板,他的Flash一共128页, 每页1K.见下图: 以它为例, 我将它分为三个区.BootLoader区、 App1区、App2区(备份区)具体划分如下图:...流程图分析 以我例程的BootLoader为例: 我将App2区的最后一个字节(0x0801FFFC)用来表示App2区是否有升级程序, STM32在擦除之后Flash的数据存放的都是0xFFFFFFFF...具体的流程图见下图所示 程序编写和分析 所需STM32的资源有: 发送USART数据和printf重定向 Flash的读写 程序跳转指令,可以参考如下代码: /* 采用汇编设置栈的值 */ __asm...BootLoader的下载 BootLoader的代码默认是最开始的所以不需要特别设置代码的下载位置 按照下图, 修改擦除方式为Erase Sectors, 大小限制在0X5000(20K) 烧录代码...为什么永远不会有语言取代 C / C++ ? 干了12年硬件,转芯片原厂FAE,一如既往的打杂背锅
通过strongerHuang的教程,实现了SWO的两种调试方法, 1、在keil调试的过程中,使用debug printf viewer打印信息, 2、在STM32 ST-LINK Utility...几点信息:摘录自https://www.strongerhuang.com SWD:Serial Wire Debug,串行线调试 SWO:Serial Wire Output,串行线输出 SWV...Wire Viewer,串行线查看器 ITM:Instrumentation Trace Macrocell,指令跟踪宏单元 SWO串行线输出是单引脚、异步串行通信,可在Cortex-M3/M4/M7上使用...几点注意事项: 1、如果要在STM32 ST-LINK Utility的Serial Wire Viewer打印信息,应该是stlink下在hex才能运行,keil里面下载程序是无法在Serial Wire...2、如果直接在keil中调试全速运行的话,直接调试,运行,打开debug printf viewer即可看到打印的信息。 另外,keil工程中需要开启功能,添加printf的重定义,时钟频率要一致。
开发环境 NUCLEO-G071RB开发板一块 stm32cubemx,keil开发环境 用stm32cubemx生成MDK工程 新建工程并选择芯片 配置时钟 这次工程使用哦内部时钟源即可,...所以使用默认时钟配置即可 关于时钟配置可以看这篇:stm32时钟配置 配置引脚 硬件电路如下 这里使用PC8作为led的引脚,设置为输出脚 生成工程 配置好工程路径,开发环境后,就可以生成代码了...在MDK中编写代码 在main.c中找到主程序的while循环 添加代码 HAL_Delay(200); HAL_GPIO_TogglePin(GPIOC, GPIO_PIN_8); 下载程序 工程配置中
设置用户名和密码, ?...主要关注下目前micropython支持的ST开发板,和我们关系比较大的是H7系列,可以看到目前支持很多的ST芯片。 ? 3....编译程序 在源码根目录下输入命令make -C ports/stm32 如果不指定BOARD,则默认编译的是ports/stm32下的PYBV10板子,而我们需要的是能在H743上跑,所以需要裁剪移植一个对...因为我们是参照的NUCLEO_H743ZI,所以mpconfigboard.mk文件不用修改。...至此修改完毕,可以编译,在micropython根目录下输入命令 make -C ports/stm32 BOARD=BODEBOARD ? 等待编译完成。 ?
我使用的是F103RB-NUCLEO开发板,他的Flash一共128页, 每页1K.见下图: ?...流程图分析 以我例程的BootLoader为例: 我将App2区的最后一个字节(0x0801FFFC)用来表示App2区是否有升级程序, STM32在擦除之后Flash的数据存放的都是0xFFFFFFFF...程序编写和分析 所需STM32的资源有: 发送USART数据和printf重定向 Flash的读写 程序跳转指令,可以参考如下代码: /* 采用汇编设置栈的值 */ __asm void MSR_MSP...程序编写和分析 所需STM32的资源有: 发送USART数据和printf重定向 Flash的读写 串口的DMA收发 YModem协议相关 Ymodem协议 百度百科[Ymodem协议] 具体流程可自行查找相关文档...BootLoader的下载 BootLoader的代码默认是最开始的所以不需要特别设置代码的下载位置 按照下图, 修改擦除方式为Erase Sectors, 大小限制在0X5000(20K) ?
最近一些朋友在玩在线升级,所以这里bug菌挑选了一篇原理与实践结合的技术文章,在stm32上实现还是比较详细的,以前bug也跟大家介绍过这一块的设计方案: 【重磅】剖析MCU的IAP升级软件设计(设计思路篇...我使用的是F103RB-NUCLEO开发板,他的Flash一共128页, 每页1K.见下图: 以它为例, 我将它分为三个区.BootLoader区、 App1区、 App2区(备份区)具体划分如下图:...流程图分析 以我例程的BootLoader为例: 我将App2区的最后一个字节(0x0801FFFC)用来表示App2区是否有升级程序, STM32在擦除之后Flash的数据存放的都是0xFFFFFFFF...具体的流程图见下图所示 程序编写和分析 所需STM32的资源有: 发送USART数据和printf重定向 Flash的读写 程序跳转指令,可以参考如下代码: 1/* 采用汇编设置栈的值 */ 2_...BootLoader的下载 BootLoader的代码默认是最开始的所以不需要特别设置代码的下载位置 按照下图, 修改擦除方式为Erase Sectors, 大小限制在0X5000(20K) 烧录代码
HAL 库是 ST 为 STM32 最新推出的抽象层嵌入式软件,可以更好的确保跨 STM32 产品的最大可移植性。...ST 制作的中间件堆栈(USB 主机和设备库,STemWin)带有允许轻松重用的许可模式, 只要是在 ST 公司的 MCU 芯片上使用,库中的中间件(USB 主机/设备库,STemWin)协议栈即被允许随便修改...一开始是固件的初始化 先看main文件里面的函数调用,基本上就是初始化+循环 值得注意的是debug的结构体就是这么简单。...引脚,没有搞懂是什么 PWM设置 初始化后继续设置初值 四个电机的定义 通道数?...具体看这里 至于这个Nucleo看上去是个开发板。
如下图: 图1 TrueStudio中的STM32CubeMX 接下来将分步骤介绍使用STM32CubmeMX及MDK、STM32CubmeMX及TrueStudio进行STM32程序设计。...一、新建工程(方式1 使用ST官方的开发板) 打开STM32CubmeMX,在主界面选择New Project,在弹出来的对话框中可以选择基于芯片创建工程还是基于特定开发板创建工程,如图2。...图2 芯片或者开发板选择 此处,我们选择Board Selector,并进一步选择我使用的开发板NUCLEO-F401RE,选中后如图3所示。...图5 ADC1警告 图6 ADC1具体冲突的地方 同样的,我们将鼠标光标放在 上,可以看到,图7所示提示。告诉我们I2C2不可用,因为PB3脚已经映射为SYS_JTDO-SWO。...二、项目设置 与很多软件一样,STM32CubeMX也可以进行工程的设置,通过菜单Project->Settings便可进入图8所示工程设置对话框。
领取专属 10元无门槛券
手把手带您无忧上云