首先打开 RT-Thread Studio,新建RT-Thread 项目:
目前支持 QEMU 模拟仿真的开发板有这些:
大家可以看到,其中包含了 GD32VF103、VEXPRESS-A9、STM32F4 系列的一些开发板
我们以 STM32F401 为例,新建项目后这样配置,注意系列一定要选对,要是上面支持 QEMU 模拟仿真的开发板系列,否则没有对应的 QEMU 调试器:
如果没有的话,就选择 “添加更多” 然后下载:
STM32F4 的芯片支持包在这里:
点击后,再点击页面下方的 “安装资源包”即可安装。
创建后我们得到这样一个工程:
查看 main.c 代码如下:
我们首先点击菜单栏的编译构建按钮,编译成功后再点击下载按钮运行 QEMU 仿真模拟(按钮位置如图中标注):
点击编译构建后的输出:
点击下载,进行 QEMU 仿真模拟后的输出:
可以看到正如 main.c 中写的,一直循环输出 “Hello RT-Thread!”。
以上就是手上没有开发板如何跑RT-THREAD STM32 应用的示例,希望能够帮助到大家。
关键字:开发板 RT-THREAD STM32
引用地址:
教你手上没有开发板如何跑RT-THREAD STM32应用
推荐阅读最新更新时间:2024-11-02 07:41
STM32 双DAC DMA TIM6输出正弦波例子
STM32F103有双DAC通道,利用DMA实现2个波形输出 #include stm32f10x.h //DAC1,2初始化 void dac_init(void) { RCC- APB2ENR |= RCC_APB2ENR_IOPAEN; //开启端口A时钟 RCC- APB1ENR |= RCC_APB1ENR_DACEN; //开启DAC时钟 GPIOA- CRL &= 0xff00ffff; //PA4,PA5模拟输入 DAC- CR = DAC_CR_TEN1 | DAC_CR_TEN2; //开启触发使能才能设置触发模式 //开启DAC,关闭输出缓存,TI
[单片机]
STM32ADC模块速度配置问题
简介:本文介绍了STM32单片机时钟配置问题以及精度和速度之间的关系 STM32F103xx系列称为增强型产品,增强型产品的最高时钟频率可以达到72MHz。增强型产品的英文名称为Performance Line。 STM32F101xx系列称为基本型产品,基本型产品的最高时钟频率可以达到36MHz。基本型产品的英文名称为Access Line。 根据设计,当ADC模块的频率为14MHz时,可以达到ADC的最快采样转换速度。 要得到14MHz的ADC频率,就要求SYSCLK的频率是14MHz的倍数,即14MHz、28MHz、42MHz、56MHz、70MHz、84MHz等;对于基本型产品14MHz和28MHz处于它的
[单片机]
STM32的USB中断说明
STM32的USB模块可以产生三种中断:USB唤醒中断、USB高优先级中断和USB低优先级中断,在STM32的参考手册中没有详细说明这三种中断对应哪些事件,现说明如下: 1)USB唤醒中断:在中断向量表中的位置是42。这个中断在USB设备从暂停模式唤醒时产生,唤醒事件由USB_ISTR寄存器的WKUP位标识。 2)USB高优先级中断:在中断向量表中的位置是19。这个中断仅由USB同步(Isochronous)模式传输或双缓冲块(Bulk)传输模式下的正确传输事件产生,正确传输事件由USB_ISTR寄存器的CTR位标识。 3)USB低优先级中断:在中断向量表中的位置是20。这个中断由所有其它的USB事件产生,例如正确传
[单片机]
STM32学习笔记(一)---基础知识
常识 1.所有芯片的引脚顺序都是逆序排列的 2.芯片主要由内核和片上外设组成。 存储器映射 存储器本身不具有地址,给存储器分配地址的过程就称为存储器映射。 给存储器再分配一个地址的过程就叫做存储器重映射。 寄存器映射 设计片上外设时,以四个字节为一个单元,共32bit,每个单元对应不同的功能,我们控制这些单元就可以驱动外设工作。 根据每个单元的功能不同,以功能为名给这个内存单元起别名,这个别名就是寄存器。 给已经分配好地址的有特定功能的内存单元取别名的过程就叫做寄存器映射 例子: GPIOF端口的输出数据寄存器ODR的内存地址为0x4002 1414(ODR寄存器32位,低16位有效,控制16个IO端口
[单片机]
STM32中使用printf打印串口数据
该方法适用于STM32,实现了使用printf等标准C流函数输出数据的办法,极大的减少了输出串口数据时所需要做的数据处理。 实现原理 在C库中,printf()等输出流函数都是通过fputc()这个函数实现的,所以我们通过重映射的方式,修改这个函数的定义使它输出在STM32的寄存器中,便可以实现使用printf()函数在STM32串口上输出数据的功能。 Keil环境 重映射 在STM32的Keil开发环境中,C的库函数有两种实现方式 使用标准的C函数库 就是我们平常在PC Window平台上用的C库函数,此库的的优点在于实现的功能全面。但是由于这个库基本上是专为PC设计的,故而如果在嵌入式芯片中调用时将会使得
[单片机]
基于STM32F100VBT6的32位MCU开发设计方案
STM32F100VBT6采用ARM Cortex™-M3 32位RISC内核,工作频率24MHz,集成了高速嵌入式存储器(闪存高达128kB、SRAM高达8kB)以及各种增强外设和连接到两条APB总线的I/O。所有器件提供两个I2C、两个SPI、一个HDMI CEC和多达3个USART标致通信接口以及一个12位ADC、两个12位DAC和六个通用16位定时器和PWM定时器。主要用在控制和用户接口、医疗设备、PC和游戏机外设、GPS平台、工业应用、PLC、逆变器、打印机、视频通信和HVAC等。 图1 STM32F100xx系列方框图 STM32F100xx简介 低/中密度、基于ARM的高级32位MCU,带有16 kB ~128
[单片机]
【菜鸟入门】stm32 之 pwm
这个pwm几天前就搞出来了,但是觉得不是很难,就没有写 今天jlink固件坏了,修了半天没有修好,现在就先扔着吧,先借大黄的用用,下面闲着木事,就把pwm写下吧 好吧,开始今天的pwm 还是老话,先附上一段代码:(由于stm的pwm有多个,每个又有多个通道,我们今天选TIM2_CH1来产生) /* * TIM2_CH1 */ int pwm_init(u16 arr,u16 psc) { RCC- APB1ENR = 1 0; //enable timer2 RCC- APB2ENR = 1 2; //enable GPIOA GPIOA- CRL &= ~(0xF 0); //Clear
[单片机]
STM32 产品唯一身份标识寄存器(96位) 闪存容量寄存器
产品唯一的身份标识非常适合: ● 用来作为序列号(例如USB字符序列号或者其他的终端应用) ● 用来作为密码,在编写闪存时,将此唯一标识与软件加解密算法结合使用,提高代码在闪存存储器内的安全性。 ● 用来激活带安全机制的自举过程 96位的产品唯一身份标识所提供的参考号码对任意一个STM32微控制器,在任何情况下都是唯一的。用户在何种情况下,都不能修改这个身份标识。 这个96位的产品唯一身份标识,按照用户不同的用法,可以以字节(8位)为单位读取,也可以以半字(16位)或者全字(32位)读取。 un=(*( u16 *)0x1FFFF7E0); //闪存容量寄存器 printf( The Flash size: %d KB\r\n
[单片机]