之前发过一篇文章,分享了一些入门心得,从那以后一直没有深入学习,这次借着全国电子设计竞赛的机会,好好学习了一下。给大家讲解一下STM32的初学方法。

第一步,建立开发环境。小编选择的是通用的MDK,也就是Keil5。安装完软件以后,要安装类似于芯片型号的库,就是新建工程时选择的芯片型号。
       第二步,准备一块开发板和丰富的资料例程。推荐选择最小系统板,个人感觉这样可以自己学会外围电路的搭建。避免依赖开发板的电路。(其实就是太穷,买不起开发板,哈哈)
       第三步,了解STM32。这个阶段可以看视频教程,一般教程都会有基本的介绍
       第四步,开始学习。推荐使用库函数开发的方法。这样很多底层的寄存器不需要自己配置,只要会用官方库函数就行了。配合库函数使用手册,可以清楚的查到每个函数的使用方法。
       很多初学者面临的难题就是不知从何入手。总想跟51一样弄明白基础的东西,又感觉太复杂。因此推荐先使用例程的工程文件,逐步学习如何修改。比如点亮流水灯的工程,对于IO口的操作并不太复杂,初始化完成之后通过Setbit和Resetbit这两个函数就可以实现高低电平的输出。然后,可以试着改一下亮灭,增加一个按键控制,中断延时,等等。然后可以逐渐增加工程里的文件。这样,有了初步的学习之后,就可以掌握库函数开发的方法了,以后的学习也就变得轻松起来。
       关于STM32的工程,很多人觉得复杂,其实没有这么复杂。它主要包括下面几部分:
       main.c:自己的主程序部分
       自己的子程序:stm32经常用到的一种编程方式。例如:led.c和led.h。led.c里面写#include“led.h”和       函数init_led()。led.h里面定义led.c里面的函数init_led()和引用的头文件。
       启动文件:例如#include “stm32f10x.h”,这些可以理解成stm32必须的一些库
       库函数:由于采用的库函数编程的方式,要添加一些官方的库文件

STM32初学自学体验,新手经验相关推荐

  1. 基于Proteus无实物零基础STM32入门自学教程(七)--定时器点亮LED

    简介:本项目为基于STM32F103R6为核心定时器点亮LED工程.在第一个任务里我们点亮LED是使用延时点亮.从这一讲我们开始学习真正的定时器使用方法,而这种方法是最接近实际应用的.实际应用中几乎不 ...

  2. 基于Proteus无实物STM32入门自学教程(二)--LED流水灯

    本教程面向新手,前期没有用到stm32的内部库,源程序尽量使用单文件.方便从51直接转过来的同学有个适应期.proteus仿真stm32总所周知没有51仿真的那么完美.笔者在51年代进行仿真时基本与实 ...

  3. python编程自学能学会吗-小白看看!本人自学Python编程经验分享。

    这篇文章我将以我自学编程的经历.自己遇到的坑.如何解决问题等方面,给初学者朋友们分享自己的经验,希望对正在自学编程的你有帮助.如果哪里说的不对,也望得到您的批评指正! 1.为什么要学习编程? (1)因 ...

  4. STM32的CAN总线调试经验分享

    相关文章 CAN总线简易入门教程 CAN总线显性电平和隐性电平详解 STM32的CAN总线调试经验分享 文章目录 相关文章 背景 CAN总线 CAN控制器 CAN收发器 调试过程 硬件排查 CAN分析 ...

  5. 新手快看,三分钟教你如何系统的自学python(经验分享)

    前言 Python是一个非常适合自学,0基础的话从入门到精通也只需要花3-4个月. 关于Python,我们不妨看看世界著名程序员.软件开源运动旗手 Eric S. Raymond 的建议: 如果你不懂 ...

  6. 高三/高考前可以回家自学吗?——211学霸高三在家自学一年经验分享

    Q1:为什么要回家自学?有什么好处? 因为我是一个很容易被外界干扰的人,思绪喜欢自我放飞,我想有些同学也会有这样的感觉.学校人太多了,周围人说的话传到我耳朵里就会像复读机一样刻意过一遍,导致很难集中精 ...

  7. STM32初学篇-推挽输出、开漏输出、复用开漏输出、复用推挽输出以及上拉输入、下拉输入、浮空输入、模拟输入区别

    有关推挽输出.开漏输出.复用开漏输出.复用推挽输出以及上拉输入.下拉输入.浮空输入.模拟输入的区别 最近在看数据手册的时候,发现在Cortex-M3里,对于GPIO的配置种类有8种之多: (1)GPI ...

  8. STM32 初学不知道外设对应的APB1还是APB2

    STM32参考手册搜索"系统架构"或者"系统结构",即可查看外设挂在哪个时钟下,也就知道开启哪个时钟了. 转载于:https://www.cnblogs.com ...

  9. STM32初学——OLED调试4-1 5-1/5-2

    串口调试advantage:借助强大的电脑来调试 点灯调试法 注释调试法 对照法 OLED_ShowChar(1, 1, 'A'); 显示一个字符 指定起始行,指定起始列,显示字符 OLED_Show ...

最新文章

  1. Codeforces Round #372 (Div. 2), problem: (B) Complete the Word
  2. 最低售价17999元,华为发布新一代折叠屏手机Mate X2,将首批升级HarmonyOS
  3. 找不到vtkIOImage文件解决方法
  4. Server.MapPath(path)的使用
  5. Linux Shell常用技巧(十)
  6. viterbi算法_序列比对(十四)——viterbi算法和后验解码的比较
  7. 数据驱动的软件开发者智能协作技术
  8. tolua打包Android后路径出错,unity+tolua 64位android崩溃排查过程记录
  9. svn 使用TortoiseSVN server搭建本地SVN服务器
  10. 阿里巴巴的26款超神Java开源项目!
  11. HIVE 面试题总结
  12. 计算机ps基础知识教案范文,ps基础教案
  13. 寒假2019培训:跳楼机(洛谷P3403)
  14. 我们不改需求了,给你们立字据!
  15. 1233850-99-1|2-(4-丙氧基苯基)咪唑[4,5f][1,10]邻菲啰啉|分子式:C22H18N4O-齐岳配体
  16. 2021年全国职业院校技能大赛 “大数据技术与应用”—模拟赛题(三)
  17. 2020幂次生长,GMIC开启下一个10年科技新浪潮
  18. 杰理下载器强制下载工具的使用介绍_AC695N696NAD14AD15全系列支持,看完此文就足够了
  19. LEADTOOLS V22.0 Patch
  20. 一阶低通滤波器和二阶低通滤波器

热门文章

  1. fMRI数据处理_预处理_1_流程及脚本
  2. ps转换html适应网页尺寸,【ps制作网页页面】ps图像如何生成html?如何将PS制作的网页效果图变成可用的网页?PC端UI设计尺寸规范?...
  3. MySQL编码格式统一为UTF8
  4. android 机车软件,机车党app
  5. KILL THE PHARAOH ACUPUNCTURE X 法老联乘系列发布
  6. Firebird中文社区已开通
  7. Google Play ASO 系列 - 用户体验一直为王
  8. Eclipse输入法无法输入中文
  9. 【通信电子电路】第11章 交流电路功率分析
  10. 墨西哥城新机场 | 一座来自未来的机场