设计与开发

单片机c语言高级 单片机c语言基础知识,c语言必背100代码有哪些?

小编 2024-10-23 设计与开发 23 0

单片机c语言基础知识,c语言必背100代码有哪些?

我记得刚开始接触编程的时候,觉得太难了。

也很好奇,写代码的那些人也太厉害了吧?全是英文的,他们的英文水平一定很好吧?

他们是怎么记住这么多代码格式的?而且错了一个标点符号,整个程序都会有影响。

一个程序几千行,错一个标点符号都不行这也太难了吧?

带着新手的灵魂拷问,作为从业单片机编程10年的开发者,我来为大家拨开云雾。

看完以后你就会明白,其实他们也没那么厉害!即便你是初中文凭,也照样能编程。

对于c语言来说,要记得东西其实不多,基本就是几个常用语句加一些关键字而已。

你所看到的那些几千甚至上万行的代码,都是用这些语句和关键词来重复编写的。

只是他们逻辑功能不一样,另外的那些英文,都是程序员自己起的,比如说一些变量的名字,函数的名字。

如果你喜欢你定义成abc都可以,只不过为了程序大了以后为了方便阅读和维护,我们一般起跟要实现的功能相同的英文缩写代替。

比如说我要存储一个电压值,那你可以定义一个变量,名字叫VoltageValue,或者这两个词的缩写VoltVal。

所以,大家不要把这个想得这么神秘和高大上。

而从事单片机编程,需要的编程水平比做纯软件还要低一些,毕竟单片机的内存很有限,太大的程序也放不下。

单片机的c语言基础知识大家可以参考以下目录学习:

这个教程找无际单片机编程就可以拿到。

这是课程就是针对零基础的小伙伴学习的,先从认识单片机开始,然后再到计算机的存储和计算方式二进制、十进制。

学完这些基础,开始学习c语言的基本语法。

在学习过程中,大家一定要勤动手,多在单片机开发板上面做实验。

千万不要让知识点停留看懂的层面,看懂和自己能写出来区别还是很大的,请相信我!

如果你这些都学完了,可以在开发板上做个小实验,比如说电子时钟之类的。

这个步骤非常有必要,写的过程可以培养你的项目思维,以及代码整合能力。

如果这步直接跳过,后续学习更高级的stm32就会碰到很多问题,最大的问题就是你都学完了做项目还是无从下手。

单个功能都能实现,但整合起来就不知道怎么做了。

这就是缺少项目思维和代码整合能力导致的,不要一味地去追求学习高端的单片机,等你基础打扎实了,你会发现高端的也不过如此,就是外设多一点,资源丰富一点。

甚至说你会觉得高端的用起来比低端的单片机更加方便。

典型的就是stm32和51的对比,stm32单片机都是基于固件库开发,也就是原厂提供一套程序给你,你按照他们的函数调用就能把stm32单片机的资源用起来。

而51单片机就需要你去配置他们最底层的寄存器才能把资源用起来。

相对来说,stm32用熟了,开发效率会比51的高很多倍。

最后来聊下,有些新手说的c语言必背100个代码。

这纯粹是在瞎扯淡,c语言只是工具,不同的人用这个工具去实现同一种功能,他们的实现方法可能是不一样的,因为每个人的思维不同。

这不像我们课文靠背的,也没必要去背,看代码最重要的是理解这段代码实现功能的思路和原理。

通过功能和原理去理解代码,而不是通过代码去理解功能原理。

这个顺序搞不对,你一辈子都学不好编程。

想从事单片机工作,C语言要达到什么水平?

今天我来聊聊从事单片机开发工作,C语言要达到什么样的水平。

我用自己从入门到找到工作的经历来说或许更贴切点。

我是2011年毕业,非本专业,读的是电气工程,看到师兄那苦逼样决定转行。

实习期比较自由,我就开始自学,从入门到转行成功,前后花了4个月左右。

刚开始,我也很焦虑….

自己能不能学得会?学到什么程度能去找工作?

万一花了几个月时间学习,找不到工作怎么办?

过程虽然很曲折,不过最终还是转行成功了,还记录当时学习的一些笔记。

只要你肯坚持下去,有兵来将挡,水来土掩的魄力,结果都不会太差

最怕就是你碰到问题就退缩,就质疑,这样还不如别开始。

我是从51单片机开始学习的,在某宝上买了一块51单片机开发板。

开发板一般都有配套视频教程,跟着教程一步步走就可以。

我是基础电路、C语言、51单片机一起学得,一边学一边在开发板上看功能效果。

技术学习过程太枯燥了,如果得不到及时的成果反馈,很难坚持下去。

我建议大家也一定要这样去学习。

学完开发板的所有内容,每天坚持学几个小时,大概需要1个多月的时间。

这个时候你会碰到一个瓶颈期,就是单片机每个外设资源都会用了,但是还是无法独立完成一个项目的代码。

这是正常的,因为开发板的定位是让你学习单片机这个工具怎么用而已。

那个时候我只是把开发板都学完了,然后在开发板上做了电子时钟的功能就去找工作了。

前前后后差不多给20家公司拒绝过,那年找工作都是到人才市场,当场面试的。

他们主要拒绝我的还是没有项目经验,其次就是学历、非本专业。

后面,我又在某宝上买了智能小车的套件,自己组装把这个项目重头到位做了一遍。

明显感觉自己的能力提升了,比如说实现功能的思路,和编程水平。

最重要的是多了一个可以吹的项目。

后面再去面试,总共面试了5家公司都不到就成功了。

但是我的经历放在现在,可能比较难。

主要现在优秀的学生太多了,我们无际单片机编程挺多学员都是大学生,最小的大一都有。

大一就有学习的意识,如果你的知识水平还保留10年前的,肯定不行。

单片机开发这个职位,不是说非要你c语言达到一个高级的水平,一般你能修改别人的代码也可以。

刚进去公司也不会让你马上研发新项目,而是维护老项目,改改代码升级功能。

所以,我认为啊,你c语言水平能达到改别人代码水平,暂时也就够了。

主要还是要多做项目,做它3-5个项目,把单片机常用的外设都能应用到实际场景了,一般的产品你也能独立做出来了。

光靠书本和教程的内容,你c语言的水平想提升到高级是很难的。

我是怎么提升的?

从工作中,多看老工程师写的代码,多看一些权威的固件库、协议栈。

前期先模仿他们的写法,比如说他们的按键检测功能怎么写,LCD菜单怎么写。

模仿的时候,思考一下他们这样写有什么优势,有什么不好的地方?

从实际项目中来,到实际项目中去,反复实践。

慢慢地,你对编程的思维和经验都会有一个质的飞越。

我也是这样过来的,自己在19年还录制了一个程序架构的视频,算是对自己的一个总结。

这个架构可以直接移植到产品使用,继承了很多常用的功能,比如说任务管理,队列、LED特效、按键检测。

目前也是开源,找无际单片机编程拿就行,全网同名的。

到某个阶段,你或许就能感悟,任何编程语言都是工具而已。

最核心的还是去实现某种功能的思维是否最优。

相关问答

JAVA、 C C ++、Python同样是 高级语言 ,为什么只有 C C ++可以编写 单片机 程序?

菜农从1981年开始就涉足与嵌入式领域的编程,开始是汇编语言和宏汇编语言,后来是C语言及C++语言,其他语言可能有,但很少且无大出路。因为嵌入式领域的编程与...

要想弄好 单片机 C语言 要学到什么程度?

要想弄好单片机,C语言要达到熟练程度达到熟练水平C语言是一种结构化的高级语言,本着其优点可读性好,移植容易,已成为单片机学习中普遍使用的一种计算机语言...

51 单片机 c语言 关系?

单片机和C语言的关系,可以比如你手中的电脑和你使用的高级编程语言的关系,当然,你用你的电脑加汇编语言也能编出你要的东西。它们的语法、运算符和变量规则都...

单片机c语言 怎么写加法?

#include"stdio.h"voidmain(){inta,b,c;scanf("%d%d",&a,&b);c=a+b;...

单片机C语言 中一个字母,一个数字各占几个字节 - 懂得

字母a-z,数字0-9都是占一个字节。置于一个数值就是另一回事了,你可以定义:char一个字节,int两个字节,long四个字节,float四个字节字母占一个字节,...

单片机C语言 的优点有哪些?

C语言是单片机开发中常用的语言,它的优点如下:1)运算符丰富;2)丰富的数据结构;3)简洁、紧凑、灵活、方便;4)C是一种结构化语言;5)C语言应用范围...C语...

单片机c语言 编程点亮led灯?

用c啊,我想想:1、和硬件有点儿关系,这个你清楚么?2、假设led连接到p1口吧。第一个灯接到p1.0。阴极接io,阳极接5v。#includebitsecflag;unsignedchar...

bit用法—— 单片机C语言 ?

bitTimerout=0;这里的bit本质上和char、int一样的(功能一样,类型不一样),char是8位,int是16位,bit是1位。每个字节是8位,就可以包含8个bit,bit只有两个值.....

如何快速的学会 单片机C语言 编程?

多看,多写,多练,多思考!单片机有很多种,每种的侧重都有不同,在自己想深入的单片机方向选择一本经典教材,然后将心沉入教材,开始用功学习。切记不要只看...多...

51 单片机c语言 是指哪些?

单片机c语言编程是基于C语言的单片机编程。单片机的C语言采用C51编译器(简称C51)。由C51产生的目标代码短,运行速度高,存储空间小,符合C语言的ANSI标准,生...

猜你喜欢