写AVR已经两年了。如果初中时候玩Arduino也算的话,就是6年。

两年以来,我用AVR单片机完成了两个大项目:

  • AVR单片机教程,一时兴起写的,效果不好;

  • MEDS,参赛用的课题,半完成,比赛都结束了就放弃了。

以及若干小项目,AVR×C++、光立方、摇摇棒等,还有未完成的USB下载器、升级版光立方和摇摇棒等。

尽管还有未完成的项目,我对AVR已经有点厌倦了。这有很多原因:

  • AVR性能实在不行,自编程单片机系统感觉很悬(可能是我好高骛远);

  • 我接触到的AVR单片机都是十多年的型号了,新的ATmega4809感觉很不错但是买不到,我吃不到葡萄说葡萄酸;

  • AVR社区环境不好,至少我感觉不好,Arduino玩家跟我不在一个频道上;

  • 答辩的时候被问到为什么用I²C不用CAN,我根本不懂CAN,感觉自己too young;

  • 前两天有人问我硬件学习相关的,涉及到物联网,我又不懂了,感觉自己too simple;

  • 之前去交大电院感受过STM32,感觉很牛逼。

总之我主观地得出一个结论,AVR整不出什么名堂。我深知AVR是我的舒适区,于是我又把该结论扩展到所有8/16位机,逼自己跳出舒适区,学STM32。

说来也巧,STM32开发板和下载器我手边都有。之前买电子元器件的时候看到一块开发板降价,想着以后肯定要用就买下了,STM32F407VET6核心板,42.9元。下载器呢,以前捣鼓STM8的时候买了ST-LINK,8.8元。

不花现在的钱就等于不要钱。至于开发工具和教程等,网上都有免费的,很容易找到。于是我成功地0元踏上STM32之路。

现在环境已经搭建好了,写了两个简单的程序,STM32CubeMX+HAL非常友好,我不知道我为什么现在才跳出舒适区。

其实我还有一块F103核心板,还有另一种下载器,400多元的开发板也在购物车躺了很久了,这些都侧面反映出STM32的草已经种得很深了。现在非常后悔,为啥之前一直不肯跳出舒适区,把大把时光都浪费了呢?

之前写AVR的文章,定位是教程,教程要求准确无误,不能误导读者,这给了我很大压力,要有据可考,要旁征博引,要尽量全面地分析。

本系列的定位是学习笔记,可以错,甚至可以抄。但我还是尽量保证准确,并加入自己的理解。我自认为我对编程的理解比大多数人深刻,我希望这一点能继续保持。

我不期待本系列会有读者,权当唱独角戏了。当然如果你愿意看我的笔记的话,我会很开心的;如果你能有收获就更好了。无论如何,用博客记笔记是一种好习惯。

写这篇文章,就是为了督促自己学习,争取周更。如果做不到,我就把这篇文章放在这里,嘲笑一个井底之蛙,或是一个浅尝辄止的人。

STM32学习笔记——序言的更多相关文章

  1. STM32学习笔记——OLED屏

    STM32学习笔记--OLED屏 OLED屏的特点: 1.  模块有单色和双色可选,单色为纯蓝色,双色为黄蓝双色(本人选用双色): 2.  显示尺寸为0.96寸 3.  分辨率为128*64 4.   ...

  2. STM32学习笔记——点亮LED

    STM32学习笔记——点亮LED 本人学习STM32是直接通过操作stm32的寄存器,使用的开发板是野火ISO-V2版本: 先简单的介绍一下stm32的GPIO: stm32的GPIO有多种模式: 1 ...

  3. stm32学习笔记----双串口同时打开时的printf()问题

    stm32学习笔记----双串口同时打开时的printf()问题 最近因为要使用串口2外接PN532芯片实现通信,另一方面,要使用串口1来将一些提示信息输出到上位机,于是重定义了printf(),使其 ...

  4. stm32学习笔记——外部中断的使用

    stm32学习笔记——外部中断的使用 基本概念 stm32中,每一个GPIO都可以触发一个外部中断,但是,GPIO的中断是以组为一个单位的,同组间的外部中断同一时间只能使用一个.比如说,PA0,PB0 ...

  5. STM32学习笔记(四)——串口控制LED(中断方式)

    目录: 一.时钟使能,包括GPIO的时钟和串口的时钟使能 二.设置引脚复用映射 三.GPIO的初始化配置,注意要设置为复用模式 四.串口参数初始化配置 五.中断分组和中断优先级配置 六.设置串口中断类 ...

  6. STM32学习笔记-NVIC中断知识点

    STM32学习笔记-NVIC中断知识点总结 中断优先级设置步骤 1. 系统运行后先设置中断优先级分组 函数:void NVIC_PriorityGroupConfig(uint32_tNVIC_Pri ...

  7. STM32学习笔记之一(初窥STM32)

    怎么做好学习笔记? 答:自我感知-->学习知识-->归纳总结-->自我升华(真正属于自己的知识是,抛开书本,运用时,你还能记得的思想) 自我感知--看到知识概念,先自我感觉那应该是个 ...

  8. STM32学习笔记(一)——点亮一个LED

    引言 最近报名了2017全国大学生电子设计竞赛,我们学校是第一次参加这个比赛,由于8/9月份就要比赛了,所以现在准备是比较晚的了,指导老师说只能做控制类的题目了,让我们学习一下STM32单片机,51到 ...

  9. STM32学习笔记(二) 基于STM32-GPIO的流水灯实现

    学会了如何新建一个工程模板,下面就要开始动手实践了.像c/c++中经典的入门代码"hello world"一样,流水灯作为最简单的硬件设备在单片机领域也是入门首推.如果你已经有了一 ...

随机推荐

  1. Qt项目的发布

    Qt项目的发布 (1)首先将项目调为发布版 (2)找到缺失的DLL文件 发布好了后,双击生成的exe文件可能会出现如下的问题 像这样的错误警告可能会弹出好几个,对于这种错误有2种解决方案. 第一种:配 ...

  2. Codeforces Round #657 (Div. 2) B. Dubious Cyrpto(数论)

    题目链接:https://codeforces.com/contest/1379/problem/B 题意 给出三个正整数 $l,r,m$,判断在区间 $[l,r]$ 内是否有 $a,b,c$ 满足存 ...

  3. UESTC 360(1425) another LCIS

    这道题是CD老OJ上面的一道题,现在在新OJ上的题号是360,开始在VJ上做的提交一直RE(囧).后来才知道OJ移位了. 这道题是一个简单的成段更新+区间合并的线段树的题,1A还让我小激动了一下 这道 ...

  4. Codeforces Round #697 (Div. 3) F. Unusual Matrix (思维,数学)

    题意:给你一个矩阵\(a\)和\(b\),你可以对\(a\)的任意一行或任意一列的所有元素xor\(1\)任意次,问最终是否能够得到\(b\). 题解:由\(a\ xor\ b=c\),可得:\(a\ ...

  5. 【noi 2.6_8464】股票买卖(DP)

    题意:N天可买卖2次股票,问最大利润. 解法:f[i]表示前 i 天买卖一次的最大利润,g[i]表示后 i 天. 注意--当天可以又买又卖,不要漏了这个要求:数据较大. 1 #include<c ...

  6. Codeforces Round #646 (Div. 2) C、Game On Leaves

    题目链接:C.Game On Leaves 题意: 给你一个n个节点的无根树,你每次可以删除一个叶节点.如果谁先删除x号节点谁就赢了.两个人轮流操作 题解: 如果x号节点本身就是一个叶节点,那么谁先走 ...

  7. JavaScript——匿名函数和闭包

    匿名函数就是没有名字的函数 闭包就是一个函数中的另一个函数 函数可以不加分号,但是语句要加!! 可以把匿名函数的返回值赋值给变量!! box()时返回里面的函数,再加一个()就会返回里面那函数的值(浅 ...

  8. Chapter Zero 0.2.1 执行运算与判断的CPU

    目录 执行运算与判断的CPU CPU效能比较的指标 CPU的工作频率:外频与倍频 32位与64位的CPU与总线[宽度] CPU的等级 超线程(Hyper-Threading,HT) 网上摘下几张主板图 ...

  9. vue中获取元素并控制相应的dom

    1 在标签中使用ref="xxx" 2 在methods中调用this.$refs.xxx this.$refs.xxx.$el获取dom 注意1:大多数情况下为了复用方法,将xx ...

  10. STM32F107移植LWIP

    STM32F107上移植LWIP2.0.3 因为最近需要在STM32F107上实现TCP/IP协议栈,所以网上查了一下,准备使用LWIP,虽然大多数用的是1.4.1版本但是官方说2系大版本修复了1.4 ...