前言:
不说废话只讲有用的。
如果你是完全在此之前没有这方面的基础的话。可以先从学习c语言(指针,结构体)等部分先进行一个初步了解以后再开始学习,这样会更好接受。
对于学习顺序的话,我是先上手的32,然后Arduino,最后是开始进行Linux的开发。51的话没有很仔细的研究。虽然有人说先学51然后开始学习32会轻松一些。但我感觉这个因人而异。
本章开始包括以后的内容都会采用寄存器的方式在keil上运行。但个人感觉在对stm32有一定了解以后,可以多去尝试库函数的书写方式,以及使用eclipse来编译。会发现更加方便。
1.背景:
STM32系列微控制器的核心是ARM Cortex处理器,具有高性能、高代码密度的Thumb指令集,以及高效的中断处理机制。例如,Cortex-M0主要用于低功耗和混合信号处理,Cortex-M3则在性能和能耗之间实现了良好平衡,而Cortex-M7则专注于高性能控制运算领域
对于新手学习建议,通常建议从STM32F0或STM32F103(属于F1系列)开始入手,因为它们的学习资源丰富,开发板和社区支持较好,同时也足以应对大多数入门级别的项目需求。
2.流水灯的实现:
接下来我们在keil上实现对于stm32最基础功能的实现,流水灯功能的实现。这里还是使用的寄存器的方法来完成
#include "stm32f10x.h"
/**
* @brief 微秒级延时
* @param xus 延时时长,范围ÿ