精华内容
下载资源
问答
  • 大话STM32-学习STM32

    2015-03-17 21:52:22
    这是一本关于学习STM32的不错的书籍,用生动的语言带领学习者一步步的学习关于STM32编程的知识
  • 好多人学习stm32 就是看视频,我的意思也不是看视频不对,看视频的确能够快速的让我们用上stm32的那些功能,即使我们不会懂其中的原理,但是当你着你就感觉越来越恼火了,没有那些参考就不知道如何来处理,为...

    如何学习stm32

    好多人学习stm32 就是看视频,我的意思也不是看视频不对,看视频的确能够快速的让我们用上stm32的那些功能,即使我们不会懂其中的原理,但是当你学着学着你就感觉越来越恼火了,没有那些参考就不知道如何来处理,为什么呢?

    不知道有没有小伙伴有没有这样的感觉,就是看人家写代码就知道怎么按某些步骤写下去,但是到了自己就不知道怎么办了,完全没有头绪…
    在这里插入图片描述
    eg:STM32f103PC13脚。
    就像开启一个GPIO,来点灯

    1. 开启对应gpio的时钟
    	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
    
    1. gpio初始化,初始化前你学要定义好结构体GPIO_InitTypeDef
        GPIO_InitTypeDef GPIO_InitStructure;
        
        GPIO_InitStructure.GPIO_Mode =GPIO_Mode_Out_PP;
        GPIO_InitStructure.GPIO_Pin  =GPIO_Pin_13;
        GPIO_InitStructure.GPIO_Speed=GPIO_Speed_2MHz;
    
    1. 然后初始化GPIO.
    	GPIO_Init(GPIOC,&GPIO_InitStructure);
    	GPIO_SetBits(GPIOC,GPIO_Pin_13);  //这句可以不要
    

    4.然后在主函数调用初始化函数,对其进行初始化。
    5.最后是使用 GPIO_ResetBits(GPIOC,GPIO_Pin_13);就可以点亮一颗灯了。
    具体如图:(图中没有把它点亮,在主函数中加入led_on();就可以点亮灯了)
    具体文件

    看到这里,小白觉得,哇!这么简单就点灯了!大佬觉得这么简单你也说,这么简单谁学一下也会啊!关键和标题有啥关系,标题党,死狗,想盘我!

    重点来了

    • 上面看着简单,但是我们不禁会想:他到底是怎么实现的?
    • 为什么我们要开启时钟。
    • 为什么我们要初始化GPIO。
    • 结构体里的那些值怎么来的,不同值有什么不同?
    • 那个 GPIO_ResetBits(GPIOC,GPIO_Pin_13);又是哪来的???

    很多教程都教你这么干,说配置时钟,配置寄存器…但是连你自己都没有试试没个的下效果,建议你去试一试。

    1.首先必要的基础你应该了解

    • GPIO是什么。
    • 寄存器是怎样的。
    • RCC_APB2PeriphClockCmd,时钟线的来源
      时钟树
      (有人回想为什么是APB2呢?这是你就需要查stm32Fxxxx参考手册了),那前面的那些不用初始化吗?时钟有几个?怎么了处理??其实前面的系统函数已经完成了,具体在哪看下面。
         /*进入主函数前已经完成微控制器时钟设置, 这是通过从启动调用的SystemInit()函数完成的文件(startup_stm32f10x_xx.s)之前分支到应用程序main。要重新配置SystemInit()函数的默认设置,请参阅system_stm32f10x.c文件*/
    

    可以看到,SystemInit比mian先run。
    启动文件中
    在SystemInit()函数中,设置了相关的时钟,
    SystemInit
    。。。。。。。。。。。。。。。。。。。
    point
    讲这么多,我就是想表达一个意思:

    点灯要点的有意义,弄懂基本概念与原理,为什么要这个样子。一步步慢慢来,不然你永远就只有复制代码,能实现但是不懂为什么是这样子的。

    2.那我们如何一步步的去弄明白呢?

    1. 时不时看看基础 c语言.
      C语言学习网站

    2. 前面已经说了一个《参考手册》,必备资料。
      参考手册

    3. 库函数手册
      库函数

    4. 还有一个最重要的那就是:stm32f10x_stdperiph_lib_um.chm(很多人都没有在意这是啥?这就是你们下载的标准库里面的说明文档,就是教你如何使用的,虽然是英语的,但是这个教你如何去使用每一个外设。)
      stm32f10x_stdperiph_lib_um.chm

    5. 百度,和论坛。

    6. 多看看别人的代码,多自己敲敲代码。写代码要规范

    7. 从创建工程开始,每一个驱动函数最好自己上下手。(创建工程也要规范弄清楚每个部分)eg:

    文件夹中布局
    文件夹布局
    keil中布局
    keil中布局

    1. 观看视频,一定要动手撸代码
    2. 干几个项目,这样才能逼着你成长。

    以上代表个人的看法,可能我写的没那么好,但是请记住:

    知其然,更要知其所以然。
    

    最后

    st官网下载资料

    DJI Robomster 嵌入式交流

    固件库详细解析

    电子发烧友

    stm32是挺恼火的吗,但是我们chinese people so niubi 。在新的佩奇年里,我们会更好。为伟大中国梦而奋斗!
    佩奇加油

    展开全文
  • stm32和51单片机的区别,先学51还是先学stm32?.pdf
  • 稀里糊涂学stm32

    2015-04-06 14:58:04
    给想要学习stm32而无从下手的同学一个学习的好办法,亲测好用
  • STM32新人的建议——如何开始学习STM32

    千次阅读 多人点赞 2019-04-27 14:43:07
    很多人从51或者Arduino学习完,准备开始接触其他单片机的时候,都会听说STM32的大名。STM32是一款32位的单片机,目前来说应用市场很广泛。不过初次接触可能会有很多的不理解,下面说说我自己的心得。 一、首先你...

            很多人从51或者Arduino学习完,准备开始接触其他单片机的时候,都会听说STM32的大名。STM32是一款32位的单片机,目前来说应用市场很广泛。不过初次接触可能会有很多的不理解,下面说说我自己的心得。

    一、首先你可以试着接触STM8,接触一段时间的STM8之后再学习STM32就变的更容易理解了。stm8不需要复杂的工程和多文件

    二、工程结构:关于stm32的工程在我的另一篇博文里有说明,感兴趣的可以去看看。先弄明白这么多的.c和.h是干什么的,才能理解这些工程的原理

    三、不建议接触正点原子:不知道大家有没有这种体会,正点原子的程序工程都写的特别乱。

           我给初学者的建议是从led的工程里逐渐增加按键,延时,定时器等功能。但是正点原子的工程拆分性极差:大部分工程都必须用到system里面的三个程序(delay、sys、usart),各种库文件里面掺杂着液晶,串口等程序。初学者很难单独调用一个.c和.h的库(比如下图SIM90A.c调用了一大堆的头文件,给人感觉极乱)。这一点野火就做的比正点原子好。而且,正点原子的教程并没有教大家如何使用标准的固件库,而是教大家学习他们自己的程序,这样脱离了正点原子很多人就很难独立编程了。当然,正点原子的板子质量还是不错的。

     

    一个库文件调用了十几个外部程序

    四、推荐一本书:《疯狂的stm32实战讲学录》这本书是今日头条的粉丝推荐的,语言通俗易懂,最关键的是它会教你使用标准的库函数去写程序。而不是各种xx原子自己的风格。需要的留言我给你们发,我有电子版的。

    展开全文
  • 详细的讲解了关于STM32的一些例子。学习STM32的人可以看一下这部资料。还不错
  • 基础学stm32

    2014-08-21 16:21:46
    文档中详细讲解了怎样学习STM32,对于没有接触过得初学者来说相当适合。
  • 稀里糊涂学STM32

    2013-06-14 11:30:18
    稀里糊涂学习STM32文档,非常好的入门教程
  • 【转载】如何学习STM32STM32入门学习经验总结

    千次阅读 多人点赞 2019-03-05 17:12:05
    但是什么时候能心潮澎湃地、相当着急地开始学STM32?日子在一天一天过去!你开始行动了吗?没有行动的思索,永远都不可能入门!把这些时间用来看书吧,效果能好一万倍。 大家可能是从51单片机过来的,回想一...

    一、入门总结

    1.1为什么要把时间花在“犹豫”上?

    每当我们在入门之前(ARM是这样,DSP也一样),总会有很多疑问,会有很多顾虑。我们渴望知道学习STM32前景如何?需要啥基础?难不难?适不适合我?但是什么时候能心潮澎湃地、相当着急地开始学STM32?日子在一天一天过去!你开始行动了吗?没有行动的思索,永远都不可能入门!把这些时间用来看书吧,效果能好一万倍。

    大家可能是从51单片机过来的,回想一下,我们之前学单片机时如何入门呢?实际上都是先看书(理论),再玩板子(实践)。严格地说,应该是模仿实验。熟悉之后才会自己写程序代码实现某个功能。因此,如果你正在咨询STM32;如果你正对STM32心潮澎湃;如果你想入门STM32;那么,从现在开始,不要犹豫了,不要想再详细地了解STM32的前景了。做一个可能影响你一生的决定吧!不用咨询,不用兴奋,开始看书籍(文档)吧!!每个人都是这么走过来的。

    1.2看资料需要计划、耐心和速度

    这里所谓的“资料”包括STM32书籍、文档。因为STM32有个特点,datasheet很多都是中文的,有些同学就没有去买书籍,直接看STM32的用户手册,也是可以的。但是不管看书籍还是文档,我们是需要计划的。不是今天看3页,明天看5页。一本书看了两个月,还在磨蹭。请记住,你学的不是寂寞,是STM32!

    看书或文档不是用来消遣时间的。背水一战吧,给自己规定一个底线:两周内把一定粗略地过一遍!不要求都看懂,事实上,不可能都看懂。但我们必须理解基本知识,对难度高的知识有一个印象,至少以后碰到问题的时候,我们会似曾相识,感觉在哪里见到过,于是翻资料上网找答案——带着问题的时候,效率才是超高的。

    两周过去了,STM32的知识你过一遍了吗?没看完?那么,你应该考虑这些天中,你是否尽力了?是否真的想学STM32?或者还是看到STM32人气很高,也想跟下时髦?是不是碰到问题没法解决就想放弃了?现在是你做第二个决定的时候了,请决定你是否继续攻读STM32。如果是一时冲动想跟时髦,请马上放弃——你已经浪费两周时间了,你还想再浪费14天吗?如果想吃得苦中苦,方为人上人,OK,请继续往下看:)

    1.3学STM32必备开发板

    稍微了解一些理论知识后,现在摆在你面前,有两条路:

    第一,自己画PCB制板、焊接、调试。

    第二,购买一套性价比高的开发板。

    笔者之前做过几次PCB设计,而且当时在实验室可以报销所有费用,就自己做了一个PCB板。建议有报销条件的同学自己设计一块板子学习。毕竟2层PCB的设计不是很难。无法报销的同学,可以选购一款开发板来学。

    总之一句话,选购的开发板一定要性价比最高的,最实惠的,而不是最贵的。实际上,大多数同学选购的开发板是用来学习的,不是用来项目开发的。因此,能让你上手STM32,目的已经达到了。

    1.4熟悉开发板并试图写程序

    这时的你,不能再停留在理论上了。你现在的心情,应当是:看到开发板,马上就有一种说不出的兴奋!但是,心急吃不了热豆腐!请耐心把厂家配套的开发板使用手册浏览一遍,熟悉你买的开发板。按照使用手册,把开发板上的相关测试、操作步骤,都动手做一遍,你会发现,原来开发STM32是如此简单!那么就让我们开始STM32的开发之路吧!

    如何进行真正入门STM32,请看下面《STM32入门方法谈》。

    二、STM32入门方法谈

    2.1拿到开发板我该做什么?

    国内用户有一个普遍现象:用户拿到开发板后,不知道如何下手。由于没有自己的思路,又是初学者,也没有好的突破口,因此,买来开发板后,开机,看看触摸屏,感叹“好漂亮”的屏幕显示,然后就迷茫了。开发板是不会告诉你如何使用它的。开发板的光盘?光盘里放置一大堆资料——我该先看哪个?后看哪个?总之,我如何开始STM32的入门学习??

    从拿到开发板后需要了解如何安装J-Link、MDK(keil)调试软件,一直到STM32上的UCOS移植,配合专门的教程,会在学习STM32的过程中少走许多弯路,提高学习效率了。

    2.2我的时间如何安排?

    笔者做任何事情前,习惯写一个计划——可能是在公司的时候,每天、每周、每月必写计划和总结养成的“毛病”,呵呵。正如在上一节中提及:我们要用一个月内上手STM32!我们开始考虑,如何更好地利用好这一个月的时间呢?

    我想起了第一天公司入职的情景。我的工作导师让我先领一台PC,安装必要的软件,然后告诉我近一个月的任务是什么。当时我很不屑,因为刚参加了公司组织的培训,以为自己啥都会,但是失败了。原因:盲目进行项目,没有一个计划。

    没有计划的日子会很惨。就像每天早上醒来睁开眼睛,却不知道自己今天要干啥。闲话不说,我们谈一谈计划和时间安排。

    笔者认为,学习STM32,实际上也是进行项目的过程。进行项目,就必须有项目进度文档,至少需要预计项目的耗时。虽然没有那么规范,但建议大家至少要给自己一个时间表:告诉自己从2012年x月y日至2012年m月n日,必须能够进行独立的项目开发。比如定为30天,把这个时间分三个阶段:

    第一阶段:找感觉——谈及STM32,立即反应到调试的方法如何。

    第二阶段:修改例程——按自己的意愿修改例程,让自己有点成就感。

    第三阶段:主动攻击——给自己找一个小项目,把它实现出来。

    每个阶段有一个目标后,再细化该目标到每天,写出每天要完成的任务。注意,每天的任务不可太多,否则时间太紧,完成不了当天的任务,反而会进入恶性循环,导致第二天、第三天,以后的任务也将无法完成。最终导致整个计划的失败。

    每天的任务需要根据自己的具体情况来定。如果有充足的时间,可以安排多一些任务。如果每天只有2个小时,切记,宁可少安排任务,也不可追求加快项目进度。当然,心中有事情后,每天自然就会忙碌起来!你的学习生活会更加充实!

    2.3碰到问题怎么办?

    学习难免会遇到问题。在公司参加培训的时候,学员被告知:困难即机会。

    所以希望大家坦然面对问题,不能逃避。一小部分同学在遇到问题的时候,总是想:能否避开走另一条路?比如调试程序,某一个程序的语法不太懂,就想用另一种表示方法来代替,或者直接注释掉。——这是很可怕的。因为你现在一旦放过一个问题,可能意味着你一辈子可能都没有机会去碰这个问题。那么你的技术无法进入最高境界。我们是为学习而来,说难听点,我们现在的付出,是想以后能有更好的回报的。

    此外,碰到问题,不能马上就到处求助。

    原因:

    1、这个问题可能是你的疑问,但它还不具体,你无法用最好的语言让别人接受、理解,并且回答它。很多网友看到模凌两可的问题,是不会回答的。比如Linux如何移植?这个问题,如果详细说,需要用半本书来解释——没有人愿意花两三个小时告诉你如何移植。所以这时候,你要做的,是先去查资料,自己试图解决它。当碰到某一个具体的步骤,实在想不通的时候,比如Linux移植过程中,文件挂载打印卡住了。这个现象,可能对有经验的人来说,一句话就能点破。而你因为有先前研究的基础,一听即可知道哪里出问题。这样的方式,学习效率是最高的。

    2、CPU是相通的,相信大部分的同学都学习过单片机,是有一定基础的。如果你碰到问题,去尝试了,自己把问题解决了,你会很有成就感!!因为这是你独立思考的结果!!当然,你应该写一个总结文档,收藏在PC中备忘。也可以把总结文档发帖到论坛上,这样的原创文档,跟帖率是最高的。慢慢地,你在这个领域,有了网络知名度。——这绝对是一笔财富。

    当然,笔者在此并不是不让大家使用别的方式讨论问题。相反,我提倡大家踊跃发言讨论。刚才是就事论事,也是笔者自己的一点小经历。经历了,才发现如何做才更有效率。

    三、STM32学习步骤

    在第二章,我们已经谈及到学习需要计划。那么,在这章节,我们就来详细地阐述这个计划——仅供参考。

    3.1关于STM32文档学习

    本期教程,我们假定大家已经对STM32的书籍或者文档有一定的理解。如不理解,请立即阅读STM32的文档,以获取最基本的知识点。

    STM32的学习与ARM9的学习有一个很大的区别。ARM9的学习一般是需要购买书籍的。比如三星的S3C2440,官方的文档都是英文的,大部分工程师只能去看国内出版的书籍。英文好的同学,请不要以为你很牛,可以只看英文文档。毕竟你是中国人,你最熟悉的,理解最好的还是中文。看英文的速度还是比看中文慢一些,我们要的是最短的时间,而不是追求短时间内记住所有细节。当然,如果是一篇论文,建议看英文原版还是有好处的。

    STM32处理器进入国内市场时候,ST官方(或者第三方)的推广工作做的非常好。翻译了大量的英文文档,迎合了国内的很多工程师的思维。所以现在大部分STM32F103xxx的用户datasheet都有中文版。因此可以不用去购买书籍,看电子档即可。当然,有雄厚经济条件的朋友可以购买本书籍哈~

    学习的时候,关注两个比较重要的文档:《STM32F103xxx参考手册》,《STM32固件库使用手册》。ST官方的所有中英文文档,在ST的中国大陆区网站可以下载到:http://www.stmicroelectronics.com.cn/stonline/mcu/MCU_Pages.htm

    该网址,是针对有充足的时间、精力的同学,建议去下载需要查阅的文档,以获取更多信息。阅读《STM32F103xxx参考手册》,一定要注意,不需要全部阅读——没有时间的。建议选读,但是前几章必读。存储器和总线架构、电源控制、备份寄存器、复位和时钟控制,通用和复用功能I/O,中断和时间等等部分一定要花时间阅读。后面章节,讲述的是具体的功能模块设计。如果我们用到哪个模块,就可以去阅读哪个模块。比如在使用AD的时候,就需要去阅读第10章ADC。其他不举例。相信每个初学者都有自己的研究方向和判断。

    阅读《STM32固件库使用手册》,主要是为了简化编程。STM32给我们提供了一个非常好的固件函数库,我们只要去调用即可。当然,我们也可以不去碰这些固件库——传说使用它会使得代码效率变低,是有道理的。网络上也出现了很多网友自己写的代码,没有使用带固件库函数。如何取舍,在于您的选择。这里我主要强调的是,阅读《STM32固件库使用手册》的时候,前面几章也是必须阅读的。比如第一章文档和库规范中的命名规则,编码规则,这些都是需要注意的。第二章是最关键的,希望大家熟读。第二章描述了固件库的架构,我们如何去使用固件库的步骤等。有了第二章的基础,我们就可以借助固件库写出自己的代码了。第四章开始之后,就可以根据大家的需要来阅读。实际上,后续的章节,都是描述某个模块有什么什么函数,每个函数如何使用等。

    关于后面的章节,建议对GPIO库函数、中断部分库函数、复位和时钟设置的库函数要比较熟悉,因为平时经常会用到。

    以上提到的这两个文档,已经足够您看的了,呵呵。希望您能从中获取大量的STM32基础知识。

    3.2 30天上手STM32计划

    (1)这里所谓的“上手”,指的是能理解并掌握一些常用的STM32外设,真正想掌握一款处理器,30天根本说明不了什么问题。只能说,你已经入门了。但是,这对我们初学者来说已经足够了。

    (2)这里所谓的“30天”,根据每个人的时间安排不同而不同。

    如果您每天有充足的时间学习,那么可以规定自己尽快地能独立地进行简单的STM32开发。如果您每天只有业余时间来学习STM32,建议根据您的具体情况安排时间。毕竟计划时间如果安排太紧,反而收不到良好的效果,只能进入恶性循环,这是我们要避免的。

    但是建议,不管您有无充足的时间,都必须给自己做一个计划!

    我这里列出一个思路,仅供参考:

    步骤一,安装完STM32学习的软件,比如J-Link、KeilforARM(MDK)、ISP(如果需要从串口下载的话)。这些软件安装的详细步骤,可以参考我们推出的相应教程进行。

    步骤二,挑选部分例程的HEX,比如LED灯的例程HEX文件,下载到STM32开发板中,观察LED灯的闪烁情况。这部分的操作,可以参考我们推出的相应的教程进行。

    实际上,以上两个步骤,是为了熟悉要使用的工具软件而已。属于找感觉的阶段。其实我们还没开始STM32的学习呢!

    步骤三,准备几个常用的文档,比如《STM32的用户手册》,《STM32固件库使用手册》等文档。用于平时查阅。这些文档,在光盘中的芯片手册目录中均可找到。

    步骤四,开始查看例程的编写,看看例程是如何写的,自己可否修改下例程,达到自己想要的效果呢?芯达STM32开发板的光盘中为大家提供了丰富的例程代码,可以参考。您一定可以修改出更精彩的例程!

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

    恭喜你,至此,你已经可以自如进行独立的开发了。最后一步,给自己一个目标(项目),把它实现出来!

    再次强调,以上只是一个学习STM32的思路,供大家参考。下面列出了前面关键的步骤,希望大家能尽快入门。后续的每个模块的编程,请参考我们的芯达STM32入门系列教程。

    3.2.1第1步:熟悉调试软件

    对初学者来说,我们至少需要安装两个软件:J-Link驱动软件、MDK(就是原来的Keil)软件。这两个软件,用《乡村爱情》里的一句话“必须的!”

    如何验证自己已经熟悉调试软件的操作了呢?很简单, STM32开发板光盘里附带了很多HEX格式的文件,可以选择一些HEX文件,来观察运行结果。

    比如LED灯的例程HEX文件,下载到芯达STM32开发板中,观察LED灯的闪烁情况。灯在闪烁,就说明你刚才的操作已经把HEX文件烧写到闪存中了。

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

    3.2.2第2步:GPIO编程

    这是第一次接触固件库的编程,一定要硬着头皮去了解固件库。建议大家尽量去用固件库。而不是避开固件库自己写代码——这样只能在学习中才会发生。实际的项目中,代码成百上千个,如何一个一个自己写?调用固件库中的函数来完成,才是王者之道。

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

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

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

    3、实现多种花样的LED闪动,使得自己熟悉GPIO的编程过程。但是在调用固件库的时候,我们还需要有GPIO结构声明,结构成员初始化,系统时钟配置等等注意事项。该步骤要达到的目标:熟悉调试软件,如烧写HEX出现问题,可简单判别问题所在,并独立解决。

    3.2.3开始全新的STM32深入研究

    经过以上调试软件的熟悉和GPIO口的编程调试后,相信您已经对STM32有一定的了解。至少知道如何利用STM32的固件库去写一个代码。OK,下面我们将开始全新的STM32深入研究。在这个阶段,将要接触到串口编程、TFT液晶屏驱动编程、定时器编程、串行外设接口SPI编程、存储器编程、SD卡与文件系统移植、USB读写、UCOS移植等,有精力还可以研究其他外设。

    原文标题:想转学STM32?这里有你需要的高手总结和学习步骤
    文章出处:【微信号:mcu168,微信公众号:玩转单片机】欢迎添加关注!文章转载请注明出处。

    展开全文
  • 单片机新手学STM32还是学51?

    千次阅读 多人点赞 2020-06-05 19:34:11
    单片机新手学STM32还是学51?先说我的答案第一点第二点第三点 先说我的答案 如果你之前只是接触计算机方面的东西,对单片机的内部结构,以及供电,外设,传感器,相关控制硬件,驱动硬件,保护电路等还没什么了解...

    单片机新手学STM32还是学51?

    先说我的答案

    如果你之前只是接触计算机方面的东西,对单片机的内部结构,以及供电,外设,传感器,相关控制硬件,驱动硬件,保护电路等还没什么了解或者没什么概念的话,我建议(只是建议)你从51开始。

    第一点

    这里并不是说学习stm32需要丰富经验,而是说学习嵌入式这个领域本身就是既要由浅入深,又需要经验与积累,更要不断从中获得探索的兴趣与乐趣的。

    学习51不浪费时间,相反,手册简单易懂,资料多如牛毛,不用管STM32中各种库的互相学习和混合编程,51的操作寄存器方式又相当有助于理解单片机的来龙去脉,既然都说了是学习,为何不用?

    等到了真正能够干活,做大东西的时候,简单用用stm32很快能上手,一点也不亏

    第二点

    出来混的,迟早都要还的。
    17年,我有幸前往清华做切磋交流,一位大四学姐的话很有高度,与大家分享:

    “你会哪种单片机不重要,要看你要用哪种单片机。”

    到了后来,我们已不再论单片机称英雄,因为你该会的都得会!一个东西要你接手查查bug调调程序,主控是51,你总不能和老板说这活我干不了我不会51。那此时,你会的stm32也就没什么用了。

    第三点

    由浅入深,培养模式与方法,这样能够更深入的抓住不变的东西,不容易劝退而对整个行业感到无助与失望。

    新手学嵌入式难把握劝退问题。同学兴冲冲地买了开发板,结果弄了一下午灯都没点亮,也不知道是程序还是其他问题。我去帮他解决,发现他的LED没有串电阻,不是没点亮,而是已经烧毁了。他告诉我他很失望,东西这么脆弱,价格又这么贵(其实是他不清楚LED是非常非常便宜的器件,他只是看到整个实验套件要好几百)

    这件事做举例可能不太准确,毕竟所有单片机都可能面临这种情况,但其中的道理再适合不过了:

    1. 缺乏相关知识与经验:

      LED应该是最基础的外设,串1k对5v,串510对3v3怕是有点经验人的常识了。

      (不要说学过模电就好了,我们都是电信学院的当然学过模电,然而实践并不是书本,让没经验的人算算这个led要用多大电阻连接,电阻还得是标准阻值内的,怕是连datasheet都不好查)

    2. 没被现实暴打过:

      20%code,80%debug,半天时间就放弃有点快了,更何况这么简单的点灯,只要调试过嵌入式,都能很快锁定问题。

    3. 缺乏调试手段

      万用表没有,也没去网上找找为什么,只是盯着程序看了半天。这可能是新手都有的经历吧。(当然,找外援也是一种高妙的调试手段哈哈)

    我们不能完全避免这些,毕竟新手要是有经验了那就是老鸟了。
    但我们可以尽可能的控制这种劝退的发生,选择一个简单的单片机能尽量减少不该有的岔子和疑惑(后来那个同学被我安利去买了万用表等,并且先玩了arduino去了解基本经验,现在stm32也过渡过来了并且很厉害)


    三点讲完了,这里也与大家分享我学嵌入式的历程和感受。

    我六年级学习单片机是兴趣使然。启蒙是一块普中51开发板,北京旅游时中关村所买,印象极为深刻!这么多年过去,这块板子仍是知名型号,它也陪着我做了大大小小的作品和项目,至今仍可正常使用。

    最令我开心的是这个:

    全家福
    在这里插入图片描述

    第一版样机
    在这里插入图片描述

    第三版样机
    在这里插入图片描述

    大家不要笑话觉得丑,这可是我在高一的时候完全自己做的,连PCB和壳体哦~

    看吧,即使是51也可以玩出名堂来。

    看吧,想要个赞,也是不简单的哈哈~

    考上了同济后,时间就灵活而充裕起来,我开始学习更多的嵌入式系统的东西。

    STM32做的HID摇杆鼠标:
    在这里插入图片描述

    树莓派+DHT11+html5做的智能传感终端:

    在这里插入图片描述
    STM32+ESP8266做的温度遥测系统
    在这里插入图片描述

    i.mx6ull +Linux+Qt做频谱分析仪
    (这里有保密,所以不能放原版界面)

    在这里插入图片描述
    在手表上写androidx程序
    在这里插入图片描述

    飞思卡尔K60智能车
    在这里插入图片描述

    学嵌入式是个大活,一定要告诉自己水滴石穿,不要急功近利,而且一定要坚持。一天不行调两天,我调不行找外援,而且必须要有起因有结果,这样才能学到东西。

    另外,积累博客是个非常好的习惯,别人好的东西收藏,自己好的东西分享,大家互相进步。我一直保持写blog的习惯,可是csdn的忠实粉,哈哈!

    最后,作为一个爱国情怀很重的学子,顺便提一下,希望在学成之后多考虑国内的芯片,GD32不错,K210我也强推,ESP系列更是方便到家了,既然是工具,不妨大家支持下国之重器咯,只有给他们足够的关注与反馈,他们才能够茁壮成长不是?

    文尾声明:本文文字与图片均为本人提供,知乎“LED种子”作者就是本人,并非抄袭转载。

    展开全文
  • 开始学习STM32,第一步先制作STM32的最小系统,外设的话就用以前单片机的外设,虽说这些外设功能不是很强大,但入门总够了吧,至于入门之后搞点更高级的,那就是下一步的目标了。 单片机最小系统,也就是能够使得...
  • 稀里糊涂学STM32系列教材全集,作者以幽默的笔锋传授STM32的知识,通俗易懂且会让人获益匪浅
  • stm32和51单片机的区别,先学51还是先学stm32

    千次阅读 多人点赞 2021-06-19 14:10:24
    很多老鸟教唆初学者说51已经过时了,建议直接学stm32单片机。 如果新手信了他的邪,能学会才怪! 当他说出51过时的时候,我就知道这个人是个外行。 所以在信息爆炸的时代,如何学会去甄别哪些是对的,哪些...
  • 学习STM32最快的方法

    2015-05-28 07:46:02
    这是学习STM32最快的方法总结,是很多嵌入式工程师的经验总结
  • 学习STM32单片机,从菜鸟到牛人就是这样简单

    万次阅读 多人点赞 2017-11-29 11:09:34
     你问,如何系统地入门学习stm32?  本身就是一个错误的问题。假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习。  你要考虑的是, 我可以用STM32实现什么?  为什么使用STM32而不是8051? 是...
  • 学stm32感想

    千次阅读 2016-02-13 22:56:35
    自己学stm32也有1年的时间了,记得从51单片机过度到stm32用了不少的时间,当然也走了不少的弯路,不过我很幸运在学校有科协这个科创氛围很浓的地方,还有那么多的学长们耐心的帮助,在这里谢谢你们。stm32这个单片机...
  • “稀里糊涂学STM32”内容丰富,通过这本书可以进步对STM32的深入学习。
  • 希里糊度学STM32

    2012-09-26 22:02:16
    希里糊度学STM32
  • 刚开始接触STM32时,是使用MDK环境,用STD库学习的。后来不想用D版了,就改用EmBitz环境来了,EmBitz在使用时,库文件是自动复制的,不需要手工整理了,比较方便。但这个EmBitz在版本已经很老了,有几年没有更新了。...
  • 学stm32.rar

    2019-12-11 15:23:15
    STM32的入门教程,入门必读,希望可以对大家有所帮助。这是一本适合于STM32初学者的书籍,里面用生动的举例讲解
  • STM32由于资料丰富、稳定、性价比高深得广大工程师和企业的喜爱。 现在随便在招聘平台上搜索单片机开发或者嵌入式开发,基本都要求会STM32。 我用STM32也有很多年了,基本上是围绕着F103、F030系列来做产品,对这个...
  • STM32入门系列-学习STM32要掌握的内容

    千次阅读 多人点赞 2019-05-30 17:11:54
    STM32芯片架构 STM32F103系列芯片的系统架构如下: STM32芯片基于ARM公司的Cortex-M3内核,由ST公司设计生产,内核与总线矩阵之间有I(指令)、S(系统)、D(数据)三条信号线。内核通过总线矩阵与FLASH、SRAM、...
  • 稀里糊涂学STM32全集

    2018-07-31 07:36:01
    stem32入门级教程及参考,讲解到位易懂。适合刚接触stm32的朋友。
  • STM32CubeMx学习stm32; 使用cube配置,IAR或者Keil编程, 学习STM32定时器中断以及用STM32的定时器产生PWM;
  • 学习STM32单片机,从菜鸟到牛人就是这么简单

    万次阅读 多人点赞 2019-06-25 16:02:47
    你问,如何系统地入门学习STM32? 本身就是一个错误的问题。假如你会使用8051 , 会写C语言,那么STM32本身并不需要刻意的学习。 你要考虑的是, 我可以用STM32实现什么? 为什么使用STM32而不是8051? 是因为51的...
  • 论坛的stm32学习笔记中的比较好的新手教程。亲自整理。
  • 是先学STM8,还是学STM32

    千次阅读 2019-01-14 12:38:31
    置顶/星标公众号,不错过每一条消息! 有朋友问:我学习过51,接下来我是先学习STM8,还是STM32呢?1写在前面想要明白这个问题,其实就需要明白STM8和STM...
  • 里煳涂学STM32共6讲

    2011-10-20 14:21:57
    稀里煳涂学STM32,看了就没那么稀里煳涂了

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 36,286
精华内容 14,514
关键字:

怎么学stm32