自学32单片机两个周了,感觉非常懵逼怎么办?

2024-05-13 16:28

本文主要是介绍自学32单片机两个周了,感觉非常懵逼怎么办?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在开始前我分享下我的经历,我刚入行时遇到一个好公司和师父,给了我机会,一年时间从3k薪资涨到18k的,

我师父给了一些单片机学习方法和资料,让我不断提升自己,感谢帮助过我的人,

如大家和我一样需要我可以分享资料在评论区扣888或私我888初期的话电路部分往往很简单,有个高中物理知识算个电压电流,电阻电容什么的够了。

对于MCU学习来说,影响入门的重点往往不是电路如何工作的,而是程序如何实现对系统的控制的。这就需要了解微控制器的体系结构,以及常用外设,然后再去看外部电路。

当你有一块开发板,下载了一个hello程序后,你会发现这个程序仅仅是做了运算,并没有在现实世界“动”起来,这时候首选IO设备,流水灯入门能够感受到程序真实的“改变了”客观世界。

接着是IO读取,也就是让程序从真实世界获取信息,这里最重要的是IO中断,这有主意中断概念的建立,此时需要补充CPU工作原理的相关知识才能正确理解中断。

然后是UART通信,这是总线设备的基础,他也很简单,只需要两根线你就能在两个MCU间实现通信。也可以尝试中断式通信,再扩展UART+DMA,协同工作,此时学习DMA原理,当然也要配合CPU原理来学。

再之后就要扩展外部电路知识了,简单的二极管已经玩过了,没关系,可以玩SPI Flash,他也很简单,而且你有可以认识一种新外设了。

这些都做完以后,恭喜你已经入门了。此时你可以学习一些更复杂的电路及其控制,也可以学习实时操作系统知识,最后再掌握一些系统组件,比如文件系统或者以太网协议栈。34a96e7b57c92b14c182386fedd86996.jpeg

这篇关于自学32单片机两个周了,感觉非常懵逼怎么办?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/986217

相关文章

51单片机学习记录———定时器

文章目录 前言一、定时器介绍二、STC89C52定时器资源三、定时器框图四、定时器模式五、定时器相关寄存器六、定时器练习 前言 一个学习嵌入式的小白~ 有问题评论区或私信指出~ 提示:以下是本篇文章正文内容,下面案例可供参考 一、定时器介绍 定时器介绍:51单片机的定时器属于单片机的内部资源,其电路的连接和运转均在单片机内部完成。 定时器作用: 1.用于计数系统,可

Java面试八股之怎么通过Java程序判断JVM是32位还是64位

怎么通过Java程序判断JVM是32位还是64位 可以通过Java程序内部检查系统属性来判断当前运行的JVM是32位还是64位。以下是一个简单的方法: public class JvmBitCheck {public static void main(String[] args) {String arch = System.getProperty("os.arch");String dataM

零基础STM32单片机编程入门(一)初识STM32单片机

文章目录 一.概要二.单片机型号命名规则三.STM32F103系统架构四.STM32F103C8T6单片机启动流程五.STM32F103C8T6单片机主要外设资源六.编程过程中芯片数据手册的作用1.单片机外设资源情况2.STM32单片机内部框图3.STM32单片机管脚图4.STM32单片机每个管脚可配功能5.单片机功耗数据6.FALSH编程时间,擦写次数7.I/O高低电平电压表格8.外设接口

以canvas方式绘制粒子背景效果,感觉还可以

这个是看到项目中别人写好的,感觉这种写法效果还可以,就存留记录下 就是这种的背景效果。如果想改背景颜色可以通过canvas.js文件中的fillStyle值改。 附上demo下载地址。 https://download.csdn.net/download/u012138137/11249872

剑指offer(C++)--和为S的两个数字

题目 输入一个递增排序的数组和一个数字S,在数组中查找两个数,使得他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。 class Solution {public:vector<int> FindNumbersWithSum(vector<int> array,int sum) {vector<int> result;int len = array.size();if(

剑指offer(C++)--两个链表的第一个公共结点

题目 输入两个链表,找出它们的第一个公共结点。 解法一 两个链表一定有交点的话,方法是指向短链表指针先走完,然后指向长链表,指向长链表指针后走完,指向短链表。所以,第二次走过,一定会在交点相遇。 class Solution {public:ListNode* FindFirstCommonNode( ListNode *pHead1, ListNode *pHead2) {ListN

两个基因相关性CPTAC蛋白组数据

目录 蛋白数据下载 ①蛋白数据下载 1,TCGA-选择泛癌数据  2,TCGA-TCPA 3,CPTAC(非TCGA) ②蛋白相关性分析 1,数据整理 2,蛋白相关性分析 PCAS在线分析 蛋白数据下载 CPTAC蛋白组学数据库介绍及数据下载分析 – 王进的个人网站 (jingege.wang) ①蛋白数据下载 可以下载泛癌蛋白数据:UCSC Xena (xena

今天又有了别的收获。青云怎么这么厉害呢- -。。感觉无论付出多么大的努力,和他差不多就行~~

1.第一个收获就是一个宏这个宏第一个参数是函数的类型,第二个是名字,第三个其实就是setRow(),getRow(),两个方法,为的就是让我们得到对象。嘿嘿,收获不小~~ 2.比如我们定义了一个宏#define WC (6) 我们调用一个方法,suShi->m_imgIndex=rand()%WC  ;表示取0-WC-1的整数值。。 3.为了更好的适配各种环境在applicatio

加入了一个手游工作室~感觉超级棒的,人怎么可以都这么好的

嘿嘿,很幸运在大二下学期上到一半的时候加入了一个手游工作室,原来以为就是一个很商业的工作室,没有想到里面有这么浓厚的人文气息,感觉超赞的~~。这下学习就变得更有动力了,不只是为了找一份工作而去奋斗了,为的更多的还可以变为是为了这个大环境贡献出我所有的力量,今天就自己在这通宵啊,呜呜,人有点少啊,幸好自己订了一些目标,要不然还真的不知道该咋么办呢。

剑指offer—编程题7(用两个栈实现一个队列)

题目:用两个栈实现一个队列。队列的声明如下,请实现它的两个函数appendTail 和deleteHead,分别完成在队列尾部插入结点和在队列头部删除结点的功能。 代码如下: [java]  view plain copy print ? public class Test07 {       /**       * 用两个栈模拟的队列       *