学习STM32的思路和关键步骤

发布者:快乐的成长最新更新时间:2024-03-26 来源: elecfans关键字:STM32  Ucos-II  移植 手机看文章 扫描二维码
随时随地手机看文章

首先设定一个的两周入门计划:

所谓的“两周”,根据每个人的时间安排不同而不同。这里列出一个思路,仅供参考。


步骤一:安装完STM32学习的软件

步骤二:挑选部分例程的HEX,比如LED灯的例程HEX文件,下载到芯达STM32开发板中,观察两个LED灯的闪烁情况。

实际上,以上两个步骤,是为了熟悉要使用的工具软件而已。属于找感觉的阶段。

步骤三:准备几个常用的文档,比如《STM32的用户手册》,《STM32固件库使用手册》等文档,用于平时查阅。

步骤四:开始查看例程的编写,看看例程是如何写的,自己可否修改下例程,达到自己想要的效果呢?

步骤五:Ucos-II的移植,是否需要试一下?

恭喜你,至此,你已经可以自如进行独立的开发了。最后一步,给自己一个目标(项目),把它实现出来!再次强调,以上只是一个学习STM32的思路,供大家参考。下面列出了前面关键的步骤,希望大家能尽快入门。

1. 第1步:熟悉调试软件

对初学者来说,我们至少需要安装两个软件:J-Link驱动软件、MDK(就是原来的Keil)软件。

2. 第2步:GPIO编程

GPIO本身的编程实际上很简单:

1、设置GPIO口的引脚为输入或者输出模式。我们在进行点灯代码的时候,一般设置为推挽输出模式。

2、操作寄存器,往寄存器里置1或者清零操作——这个步骤,固件库已经提供了专门的GPIO_SetBits函数和GPIO_ResetBits函数,我们只要去调用即可实现对IO口的置1和清零。

3、实现多种花样的LED闪动,使得自己熟悉GPIO的编程过程。

该步骤要达到的目标:熟悉调试软件,如烧写HEX出现问题,可简单判别问题所在,并独立解决。

3. 第3步:开始全新的STM32深入研究

经过以上调试软件的熟悉和GPIO口的编程调试后,相信您已经对STM32有一定的了解。

至少知道如何利用STM32的固件库去写一个代码。在这个阶段,将要接触到串口编程、TFT液晶屏驱动编程、定时器编程、串行外设接口SPI编程、存储器编程、SD卡与文件系统移植、USB读写、UCOS移植等,有精力还可以研究其他外设。


关键字:STM32  Ucos-II  移植 引用地址:学习STM32的思路和关键步骤

上一篇:如何使用KeilMDK以及标准外设库创建STM32工程
下一篇:STM32单片机的时钟源和时钟树的简介

推荐阅读最新更新时间:2026-03-19 05:16

ucos-ii在MC9S12XDP512上的移植
搞了几天,总算把ucos-ii移植到MC9S12XDP512上了。做个简短的笔记。 ucos-ii版本:2.52, 编译器:Freescale CodeWarrior5.9 芯片:MC9S12XDP512 移植步骤: 1. 根据向导建立新的工程,芯片选择MC9S12XDP512,其余默认配置; 2. 将ucos-ii通用源文件复制到工程的Sources目录下下:OS_CORE.C,OS_DBG.C,OS_FLAG.C,OS_MBOX.C,OS_MEM.C, OS+MUTEX.C,OS_Q.C,OS_SEM.C,OS_TASK.C,OS_TIME.C,uCos_II.H,os_
[单片机]
UCOS-II中OS_CPU_IRQ_ISR移植过程分析
简介:在讨论ARM的移植过程中,我觉得首先应该搞清楚每一种情况下CPU的工作模式,同时搞清楚寄存器的特殊性,同时搞清楚中断处理的一般过程。 在uc/os-II的移植过程中存在一个通用的irq中断处理函数,其中的实现过程如下: OS_CPU_IRQ_ISR STMFD SP!, {R1-R3} ; We will use R1-R3 as temporary registers MOV R1, SP ADD SP, SP, #12 ;Adjust IRQ stack pointer SUB R2, LR, #4 ;Adjust PC for return address to task MRS R3, SPSR ; Copy
[单片机]
uCOS-II在MSP430上的移植1——准备工作
学习uC/OS-II有一段时间了,下了上百兆的资料。网上可以找到很多移植好的工程,参考别人的,稍微修改下,编译调试通过了,用起来始终觉得不是很踏实,毕竟不知道别人修改了哪些地方。静心整理了下思路,决定自己动手,从最原始的文件修改,把uCOS-II移植到MSP430F169上。 一、准备工作 (1)μC/OS-II中文教程.CHM ——《嵌入式实时操作系统uC/OS-II(第2版)邵贝贝译》一书的电子版。也可在网上查找相关的电子文档。作为工具手册,在移植过程中碰到不理解的可以随时查看. (2)μC/OS-II操作系统的源代码,版本为V2.86。 官方下载地址: http://www.micrium.com/pro
[单片机]
LPC17XX 学习之 uCOS-II 移植实例
1. 知识准备 要想对ucos-ii的移植有较深的理解,需要两方面知识: (1)目标芯片,这里是lpc17xx系列芯片,它们都是基于ARMv7 Cortex-M3内核,所以这一类芯片的ucos-ii移植几乎都是一样的,要想了解Cortex-M3内核,推荐《ARM Cortex-M3权威指南》(宋岩译); (2)ucos-ii内核原理,推荐《嵌入式实时操作系统uC/OS-II(第2版)》(邵贝贝译)。 2. 下载文件 ucos-ii移植过程主要涉及三个文件:os_cpu.h, os_cpu_a.asm和os_cpu_c.c 实际上,一般情况下,我们想要移植的目标芯片前辈们都已经移植成功过了,我们需要做的就是下
[单片机]
uCOS-II优先级任务调度在PowerPC上的移植和优化
μC/OS是Jean J.Labrosse开发的实时多任务内核,最初是为Motorola 8位处理器68HC11写的。在后来的相关著作中,作者将代码移植到了PC上,以便于更多的读者学习。μC/OSII继承了μC/OS的算法,有执行效率高、占用空间小、实时性强和可扩展性好等特点,被移植到几乎所有类型的CPU上,成为在嵌入式领域非常有影响力的RTOS。然而,由于该实时内核是为8位CPU设计的,对于那些具有优先级算法硬件指令的CPU,仅做移植是很不够的。 1 基于优先级的任务调度 一个基于优先级的实时多任务内核的任务调度机制需要实现下面三个核心的处理功能: ◆ 将任务置于就绪态; ◆ 将任务取消就绪态; ◆ 找出最高优先级的就绪态任务
[单片机]
<font color='red'>uCOS-II</font>优先级任务调度在PowerPC上的<font color='red'>移植</font>和优化
GD32代码移植STM32(一)
GAIWEI例子:GD32F103移植STM32F103 使用相同FLASH和管脚数量相同的芯片,例如GDF103C8T6移植STM32F103C8T6程序。虽然两个款芯片的寄存器地址以及架构基本相同。但是需要注意的是GD32F10x主频是108兆,但是STM32F10x主频是72兆。所以需要针对以RCC时钟进行修改。 1.先将芯片的选项进行修改:查找对应芯片。 2.将STM32的启动文件替换成GD的启动文件。 3.修改时钟相关配置。 打开stm32f10x.h文件,#define HSE_STARTUP_TIMEOUT ((uint16_t)0x0500) /*! Time out for HSE start up
[单片机]
GD32代码<font color='red'>移植</font><font color='red'>STM32</font>(一)
STM32下uIP移植问题
就我个人认为在uIP的移植中除了驱动之处有以下几点需要注意: 1.uip_timer 时钟要加入到中断中去。 2.各种appcall实现。如在tcp_client_demo.c 有如下语句 if(uip_len 199) { ((u8*)uip_appdata) =0; } strcpy((char*)tcp_client_databuf,uip_appdata); 这样在处理数据长时都是以tcp_client_databuf 数组的长来处理,这样不灵活,client从网络中接收到的数据长本来就是用一个全局变量uip_len来存储的。
[单片机]
uCosII移植STM32触发中断、任务切换的汇编学习
STM32汇编关键字含义: IMPORT OSxx ;//IMPORT声明了OSxx在外文件定义 EXPORT OSxx ;//EXPORT声明OSxx可以被外文件使用,相当于全局性声明 LDR R0,=label ;//这是ARM的RISC指令下一个用于内存和CPU寄存器交换数据的指令,用法比较复杂。具体百度。 ;//这里的含义就是把label的地址值赋值给R0,和 LDR R0,label 不同,没有'='的是取其地址的值传递给R0 ;// LDR R0,label ;//取label其地址的值传递给R0 LDR?R0,0x12345678 ;//就是把0x12345678这个地址中的值存放到r0
[单片机]
小广播
最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

厂商技术中心

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2026 EEWORLD.com.cn, Inc. All rights reserved