欢迎来到天天文库
浏览记录
ID:52957828
大小:783.64 KB
页数:24页
时间:2020-04-03
《STM32学习笔记(初学者快速入门.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、STM32学习笔记从51开始,单片机玩了很长时间了,有51,PIC,AVR等等,早就想跟潮流玩玩ARM,但一直没有开始,原因-----不知道玩了ARM可以做什么(对我自己而言)。如果为学习而学习,肯定学不好。然后cortex-m3出来了,据说,这东西可以替代单片机,于是马上开始关注。也在第一时间开始学习,可惜一开始就有点站错了队,选错了型(仍是对我自己而言)。我希望这种芯片应该是满大街都是,随便哪里都可以买得到,但我选的第一种显然做不到。为此,大概浪费了一年多时间吧,现在,回到对我来说是正确的道路上来啦,边学边写点东西
2、。这里写的是我的学习的过程,显然,很多时候会是不全面的,不系统的,感悟式的,甚至有时会是错误的,有些做法会是不专业的。那么,为什么我还要写呢?这是一个有趣的问题,它甚至涉及到博客为什么要存在的问题。显然,博客里面的写的东西,其正确性、权威性大多没法和书比,可为什么博客会存在呢?理由很多,我非专家,只说我的感慨。我们读武侠小说,总会有一些创出独门功夫的宗师,功夫极高,然后他的弟子则基本上无法超越他。我在想,这位宗师在创造他自己的独门功夫时,必然会有很多的次的曲折、弯路、甚至失败,会浪费他的很多时间,而他教给弟子时,则已去
3、掉了这些曲折和弯路,当然更不会把失败教给弟子,按理说,效率应该更高,可是没用,弟子大都不如师。为什么呢?也许知识本身并不是最重要的,获取知识的过程才是最重要的?也许所谓的知识,并不仅仅是一条条的结论,而是附带着很多说不清道不明的东西?如植物的根,一条主根上必带有大量的小小的触须?闲话多了些,就权当前言了。下面准备开始。一、条件的准备我的习惯,第一步是先搭建一个学习的平台。原来学51,PIC,AVR时,都是想方设法自己做些工具,实验板之类,现在人懒了,直接购买成品了。硬件电路板:火牛板软件:有keil和iar可供选择。网
4、上的口水仗不少,我选keil,理由很简单,这个我熟。目前要学的知识中,软、硬件我都不熟,所以找一个我有点熟的东西就很重要。在我相当熟练之前,肯定不会用到IAR,如果真的有一天不得不用IAR,相信学起来也很容易,因为这个时候硬件部分我肯定很熟了,再加上有keil的基础,所以应该很容易学会了。调试工具:JLINKV8。这个不多说了,价格便宜又好用,就是它了。二、热身网上选购的,付了款就是等了。拿到包裹,端详良久,起身。。。。沐浴,更衣,焚香,,,,,总得先吃晚饭,洗澡,再点个电蚊香什么的吧。,拆包细细端详,做工精良,尤其那
5、上面的3.2吋屏,越看越喜欢。接下来就是一阵折腾了,装JLINK软件,给板子通电,先试试JLINK能不能与电脑和板子通信上了。真顺,一点问题也没有。于是准备将附带的程序一个一个地写进去试一试。一检查,大部分例子的HEX文件并没有给出,这要下一步自己生成,但是几个大工程的例子都有HEX文件,如MP3,如UCCGI测试等,写完以后观察程序运行的效果。因为之前也做过彩屏的东西,知道那玩艺代码量很大,要流畅地显示并不容,当时是用AVR做的,在1.8吋屏上显示一幅画要有一段时间。现在看起来,用STM32做的驱动显示出来的画面还是
6、很快的,不过这里显示的大部分是自画图,并没有完整地显示一整幅的照片,所以到底快到什么程度还不好说,看来不久以后这可以作为一个学习点的。一个晚上过去了,下一篇就是要开始keil软件的学习了。STM32学习笔记(2)本想着偷点懒的,没想到竞被加了“精”,没办法啦,只能勤快点啦。。。硬件调通后,就要开始编程了。编程的方法有两种,一种是用st提供的库,另一种是从最底层开始编程,网上关于使用哪种方法编程的讨论很多,据说用库的效率要低一些。但是用库编程非常方便,所以我还是从库开始啦。库是ST提供的,怎么说也不会差到哪里,再说了,用
7、32位ARM的话,开发的观念也要随之改变一点了。说说我怎么学的吧。找个例子,如GPIO,可以看到其结构如下:SOURCE(文件夹)-APP(文件夹)-CMSIS(文件夹)-STM32F10x_StdPeriph_Driver(文件夹)Lis(文件夹)OBJ(文件夹)其中SOURCE中保存的是应用程序,其中又有好多子文件夹,而CMSIS文件夹中和STM32F10x_StdPeriph_Driver文件夹中是ST提供的库,这样,如果要做新的工程只要将这个文件夹整个复制过来就行,其中APP中保存自己的代码。因为我们用51单片
8、机时一般比较简单,有时就一个文件,所以通常不设置专门的输出文件夹,而这里做开发,通常会有很多个文件加入一个工程中,编译过程中会产生很多中间文件,因此设置专门的文件夹LIS和OBJ用来保存中间文件。下面就将设置简单描述一下。将复到过来的GPIO根目录下的所有文件删除,因为我们要学着自己建立工程。用菜单Project-->NewuVi
此文档下载收益归作者所有