大家好,今天小编关注到一个比较有意思的话题,就是关于单片机c语言入门自学的问题,于是小编就整理了4个相关介绍单片机c语言入门自学的解答,让我们一起看看吧。
谁能教教我怎么学单片机,先学什么,怎么入门?
我可以,单片机入门简单。你有c语言基础吗?简单的电路基础吗?有的话51单片机,两个星期就可以做出蛮好的小东西。
没有基础的话,先看看c语言,看到函数和数组就行,指针先放着。电路基础也看,看到能够认识简单的电路就行,最少电阻,电容,二极管,芯片要知道怎么看就行。
然后买一本书,最好买书送开发板。然后就练,装一个keil开搞。
熟悉51再挑战难度高一点的stm32单片机。原理是一样的,就是复杂一些。
然后再考虑arm系列,带操作系统的。不要急一步步来,先51。
C语言学到什么程度才能学单片机?
这个问题我可以非常合适的来回答。因为我现在依然在从事单片机编程工作。我的大学单片机课程考试,我的成绩是全班第一。我们专业是大三才开设的微型计算机编程,但是我大一就买了一个51单片机的学习开板。
首先单片机开发会用到汇编,C语言,但是谁在学习汇编呢?C语言当然是首选。而且单片机教程视频,源码都是C语言发布的。别人发一个汇编给你,我相信99%的人是懒得看那么枯燥的代码的。
单片机学习使用的是C语言,那么C语言却不是需要单独学习的。因为你跟着单片机教程学习点亮一个LED,跑马灯开始,你就已经在学习C语言了。
常用到的就是变量,声明,函数,for循环,while循环,if else判断。
也就是在学习单片机的过程之中你就已经掌握了C语言的大部分知识,其他的少部分知识是用的很少的,或者不需要用的。
奇怪是大三的课程老师交的是汇编,到那时候我才发现,学会了C语言编写单片机之后,汇编也不复杂,因为编程的逻辑都是一模一样的。汇编比较繁多而已,需要自己操作寄存器和内存变量。
所以,学单片机直接可以买学习开发板跟着教程来就行了,语言在自然中你就掌握了。当然提前了解C语言的基础知识点更好。提前熟悉了C语言的风格,格式,以及是怎么写的,有哪些概念,学单片机也会直接上手。
可以这样说,把学习单片机比喻成一款游戏。C语言就是这款游戏的游戏规则,你只需要了解主要的规则就可以,剩下的就是不断的闯关,打怪积累经验。遇到大boss打不过怎么办,那就上网找攻略,看看别人是怎么通过关的。当你通关的时候,C语言会了,单片机也会了。
作为一个单片机爱好者,由于教学工作需要我现在仍然在学习接触单片机。现在我来回答这个问题,单片机作为可编程控制芯片需要软件支撑才能进行控制,进行软件编程所用的编程语言也不局限于C语言一种,我还清楚的记得我最初学习单片机技术所使用的编程语言是汇编语言,因为我最早接触单片机是在大一的时候,那时学的有一门专业课叫计算机原理,里面所用的是计算机汇编语言,从那时起我第一次接触单片机,然后买了单片机仿真板,真正意义上开始学习了单片机。到了大二又学习谭浩强编写的C语言程序设计,才接触到C语言。在学习过程中我惊喜发现发现用C语言编写单片机程序比用汇编语言简洁许多, 移植性也很好。而汇编语言比较枯涩难懂,特别是编写复杂一点的程序,其完成的周期远远比C语言所用时间长!从此以后我[_a***_]都用C语言编写单片机程序。
从我的学习单片机经历中可以看出,学习单片机不需要一定先学习C语言,用汇编语言编程虽然比C语言编程麻烦,但先学汇编语言对你学单片机内部结构和各个寄存器的配置理解的更深刻。由此可知单片机学习与C语言之间没有必然的联系。随着现在单片机发展,涌现出了很多新型号单片机,例如PIC单片机用的是精简指令、AVR单片机、Arduino、树莓派等,为我们学习单片机技术提供了更多的选择空间。
学完C语言之后我才明白,不学汇编语言直接学习C语言也可以学习单片机,当你学习了一些基本的C语言赋值语句和基本语句后(例如switch、for、if、else)就完全可以学习单片机了!并不需要到达一定程度后才能学习。况且单片机C语言所涉及的并不难,对于指针、数组等比较有些“难度”的知识点,当用到时在学也不迟。先上来就学习如何用单片机控制发光二极管闪亮、8个LED流水灯单循环,反复循环、按键控制,数码管、蜂鸣器、液晶LCD1602等常用单片机外设,这些C语言知识基本够用。如果再深入学习,可以边学边练习编程,我认为效果会更好!
以上是我对学习单片机的看法!希望对学习单片机的朋友有借鉴作用,如果认为我说的你能有收获,请帮忙点个赞!
基本语法和基本关键字掌握就可以学习,后续学习中遇到不会的,再找资料学习,C语言是一种深度语言,没有特定的界限学到哪种程度,都满足自己的工作需求也行,如有时间可以再深入学习编译器原理等
我没学过单片机,有c语言基础,能直接学习stm32吗?
没学过单片机,有c语言基础,是能直接学习stm32的。因为STM32是基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-0内核而设计的,属于高级单片机,其可以使用汇编语言编写程序,也可使用c语言编写程序,而且很多使用stm32单片机的人都是使用c语言编写程序,所以通过一本详细讲解stm32的书籍直接学习是完全可行的。
没学过单片机,有c语言基础,是能直接学习stm32的。因为STM32是基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARM Cortex-0内核而设计的,属于高级单片机,其可以使用汇编语言编写程序,也可使用c语言编写程序,而且很多使用stm32单片机的人都是使用c语言编写程序,所以通过一本详细讲解stm32的书籍直接学习是完全可行的。
可以是可以,不过很痛苦。STM32是arm内核,直接学32位单片机很有难度。建议你从简单的8位单片机如51系列学起。原因很简单,单片机编程是建立在对硬件充分了解的基础之上进行硬件驱动,如进行I/O,串口通信,AD,DA转换,USB等等很多与***电路进行直接控制的操作,和在windows系统写程序是两码事,先学习51单片机,了解了基本的运行原理,学STM32的时候就容易得多
51单片机C语言需要学习哪些知识?
答主从事嵌入式、单片机开发工作有几年了,负责硬件电路的设计和程序的编写调试等,所以结合自身的情况给与回答。
单片机C语言和PC编程时存在很大区别的,单片机C语言编程是偏向于硬件的,在编程时接触更多的是单片机的寄存器的设置、硬件端口的控制、硬件逻辑的设计,这与PC编程区别很大。单片机编程所面对的对象是以单片机为核心的主控板、控制板,需要天天待在室,搭建测试环境测试代码。
要懂单片机的编程,首先要懂单片机。懂单片机的寄存器的配置方法,能从单片机的datasheet和编程手册上看懂寄存器如何配置才能实现自己所需要的功能。比如控制板要输出占空比可变的方波,如果用单片机的片上***实现PWM,需要配置相应的寄存器。可能涉及到时钟周期的设置、外设时钟的使能、GPIO复用功能的配置、定时器的配置、预装初值的计算等。
要懂单片机的编程,其次要懂硬件设计。前面提到过,单片机编程的对象还是以单片机为核心的控制板,控制板要实现功能需要硬件的支持。比如要设计一个单片机驱动电路,在编程时就要懂得给高电平继电器动作,还是给低电平动作。所以三极管或者mos管如何工作一定要清楚。用程序控制LED灯,该给高电平还是低电平?这些都要知道。
要懂单片机的编程,要懂常用的通讯协议。单片机要实现通讯功能,需要相应的硬件接口走相应的通讯协议,比如常用的IIC,SPI,RS232,RS485,CAN等,这些都是单片机系统中常用的通信方式,所以这些通讯方式的编程一定要有所了解。
要学好单片机C语言编程需要多加练习、多做项目、多调试。在初学阶段最好买一块适合自己的开发板,前期多学习配套的例程,之后要自己根据板子上的硬件***实现自己想要的功能。
到此,以上就是小编对于单片机c语言入门自学的问题就介绍到这了,希望介绍关于单片机c语言入门自学的4点解答对大家有用。