社会的角落里,有一群正在为单片机很难入门而苦恼的人。

你身边如果有单片机入门者,动手能力比较强,请他帮忙,搭个简单的单片机最小电路,哪怕是控制一个 LED 闪烁的电路。只要在你眼皮底下经过电路设计、程序编写、程序下载都通过了,那你就要感谢他一辈子,因为你已经在入门了。对于他们来说,做个单片机的最小系统板是轻而易举,而对于初学者可就难多,中间的一层窗户纸破了什么都简单了。因为在这个过程中,你学会了如何下载程序到单片机内部,如何识别单片机,如何设计单片机最小电路。

为什么有很多电子和计算机专业的学生不好找工作,因为他们中很多同学在将自己简历设计的眉飞色舞的时候,他还没有见过单片机。

因为只有对硬件了解,才能熟练运用。 只有知道程序是如何被下载的,才会清楚为什么要写单片机控制程序,这个动力来自于哪里,来至于心里有底。

单片机编程就是与单片机对话,如果不知道对方谁,有没有再听,你还会有说话的冲动吗。 当然了如果没有这样的人,还是那句话,在网上多找几个最小电路电路原理图,在面包板上焊接就可以了。当然了这个也不会的,那建议你一定要买一块功能简单的实验板,以后单片机的学习实验及项目测试验都用的上。

如何迈入单片机开发世界

有了单片机实验板你就要多练习,最好是自己有台电脑,少下载几部电影,少网络游戏,把实验板和电脑连好,安装上必备的软件 (Keil Proteus STCisp) ,下载参考程序,并修改参考程序,从最简单的交通灯实验开始,等你发现你能控制交通灯,并了解交通的软硬设计的时其实你已经入门了,你会发现单片机是多么迷人的东西啊,这不是在学习知识,而是在提升自身的价值。

用途那么广的交通设计都不在话下,你还会为自己身无绝技而烦扰吗?还会觉得自己什么都不会吗? 计算机编程、电子技术的专业知识都用上了啊。

当你编写的程序按你的意愿实现时 ,比做什么事都开心,那种学习的收获感和成就感还有充实感是非常难得的。 然后让数码管亮起来显示你所需要的数字,都到这一步,你已经不能自拔了,你已经开始考虑你这辈子要走哪一行了。

入门入门,什么才叫入门,要对得起自己啊。

要求很简单,单片机是否入门只有三点:

1 、独立掌握 Keil+Proteus 两大软件的使用方法并设计出仿真版的交通灯。

2 、独立在面包板上搭接单片机最小电路,并通过下载器将控制一个 LED 闪烁的 HEX 文件下载进去看到效果。

3 、清楚自己单片机学的动力所在,并为自己的学习做一个规划。

但是在写程序的时候你肯定会遇到很多问题,而这时你再去翻书找,这其中你会找你之前学过的编程的书,还有数电模电的书,你会发现原来之前学的知识还是有用的。 遇到不懂再去找以前学过的书本查阅,这才是 “温故而知新,可以为师矣”的大道理啊。 知识必须用于现实生活中,解决实际问题,用单片机设计个简易的家电定时器、红外遥控器什么,这样才能发挥它的作用,好好想想,上了这么多年大学,探索了那么久,犹豫徘徊,天天上课,在课堂上学到了什么?、

是不是为了期末 60 分的考试而忙碌,侥幸靠了 90 分,很高兴啊,在别人面前吹自己专业知识如何如何学习的好, 殊不知,大学考试不像高中考试啊,拿到奖学金又怎么样。 下学期开学回来一想,所学的知识已经忘得一干二净。学到什么了?为什么要推荐学习单片机,因为单片机是工科生学的,集合计算机编程电子技术及多门控制语言为一体的学科,与其说是在学习单片机,不如说是在学习一个大学科。

五、学习单片机是汇编编程还是 C 语言编程

关于用汇编和 C 语言编程的问题。

这个问题困恼很多人,但是我觉得学习汇编语言和 C 语言就像一个人进入社会要学习方言和普通话一样。都要掌握,孰重孰轻自己把握。可能主要是学校教学和部分教材引导, 大一开了 C 语言编程,没等学生知道到底 C 语言有什么实际用途,马上其他的语言一下子过来了。即使开设了专门单片机课程,但是课程的内容与技术文档很相识,程序虽然很多,但完整的不多,所以学完了也不知道,到底为什么要学习编程。

很多同学大一就开设了 C 语言的课, 我也上过,但是那时就是天天几乘几,几加几啊,求个阶乘啊,用 C 语言去解决小学数学问题,每周两次上机,对着书本不停的敲打,完全在练习打字速度。下课了也不知道自己到底掌握了什么,掌握了这个有什么用途。学完了有什么用?

如果在面试的时候,老板问,你学过编程吗,你脑子里马上是什么“ C 语言 ,VC 什么 VB 。很多,什么 C 语言是基础是面向工程的,什么 VC 是高级面向对象的

”,但是老板又问,你能将你所学习的 C 语言应用到实际开发中,比如设计一个定时报警器的 C 语言。这下傻了,老师没教过啊。

单片机编程用 C 语言或汇编语言都可以,但是我建议用 C 语言比较好,模块化管理编程方便,移植性强,适合编写大程序。如果原来有 C 语言的基础那学起来会更好,如果没有,也可以边学单片机边学 C 语言。虽然很多人是从汇编语言开始接触单片机的,但是写小程序汇编语言还是简单的,如果要实现一些算法,那汇编语言就不简单了。虽说 C 语言编译以后代码量明显比汇编长,而且执行效率也没有汇编语言高,但是在以前单片机开发中芯片工艺的限制,及单片机主频的限制,很多单片机内部存储器小的可伶,主频也小得可伶。但是现在不一样了,芯片内部的存储器根不不在乎这点差别。主频也越来越高。

那汇编语言是不是不学了呢?不是的,一定要学习,有两方面首先入门单片机的时候要用汇编语言,它的语法简单。第二如果你要做单片机的程序的高级设计师,那汇编语言是非掌握不可的,很多像高级单片机 ARM 都是汇编语言作为引导代码的,还有就是很多新出品的单片机起先也是先有汇编语言编译器之后才有 C 语言编译器。所以,我觉得对于单片机学习汇编语言入门, C 语言精通,汇编语言再精通。

有句话很有道理“单片机 C 语言高手绝对是汇编语言高手,但是汇编语言高手不一定是 C 语言高手”

最后,对于单片机的学习,入门为先,入门了以后就要去关注市场,关注企业,企业需要什么样的人才,我想有了基础以后在面试之前了解下企业所需要的单片机类型,很快就上手了,毕竟学习是相同的。

本文源自转载,希望与广大单片机爱好者一起探讨更好的单片机学习之路…

面试要求精通单片机c语言,献给广大单片机爱好者,单片机初学者一定要看,...相关推荐

  1. 单片机c语言程序设计叶俊明,单片机C语言程序设计

    本书的主要内容有51单片机的芯片引脚和*小系统.Keil C51编写软件与Proteus仿真软件的使用.C51语言.51单片机的基础实践.51单片机的中断系统.51单片机常见的接口电路以及十个实验例子 ...

  2. 单片机c语言篮球比分_基于单片机的篮球比赛计时计分器的设计

    摘 要:本系统是采用单片机AT89C51作为本设计的核心原件.利用7段共阴LED作为显示器件.在此设计中共接入了2个7段共阴LED显示器,用于记录得分和比赛时间,显示范围可以达到0到99分,基本满足赛 ...

  3. 单片机c语言数码显示实验报告,单片机c语言版数码动态显示实验报告.doc

    单片机c语言版数码动态显示实验报告 数码管动态显示实验一.实验要求在Proteus软件中画好51单片机最小核心电路,包括复位电路和晶振电路在电路中增加四个7段数码管(共阳/共阴自选),将P1口作数据输 ...

  4. 单片机C语言稳压程序,51单片机的基于MC34063的5V稳压器的设计 -(原理图+程序)...

    题 目基于MC34063的5V稳压器的设计 研究现状:随着网络技术及通信技术的发展,便携式电子产品如个人数字助理(PDA).3G.4G手机.数码相机.笔记本电脑等个人设备的日益广泛应用,更多需求不断上 ...

  5. 单片机c语言必背代码_单片机编程用C语言还是汇编?

    单片机是一种可编程器件,单片机的出现使硬件设计变得更为简单,产品的功能也更强大,而程序就是单片机的灵魂.目前功能稍微复杂一点的电子产品,都是以单片机为核心,再加以不通的外设电路实现不通的功能需求.单片 ...

  6. 单片机C语言中的位运算符,单片机c语言教程第八课 运算符和表达式(位运算符)...

    学过汇编的朋友都知道汇编对位的处理能力是很强的,但是单片机C语言也能对运算对象进行按位操作,从而使单片机C语言也能具有一定的对硬件直接进行操作的能力.位运算符的作用是按位对变量进行运算,但是并不改变参 ...

  7. 51单片机c语言学习感想,学习51单片机心得体会

    在这里给大家分享一下学习51单片机心得体会: 1.我从不说51是基础,如果我这么说,也请把这句话理解为微机原理是基础. 2.对51单片机的操作本质上就是对寄存器的操作,对其他单片机也是如此.库只是一个 ...

  8. 51单片机c语言延时计算软件,51单片机精确延时程序大集合+初值计算工具

    在论坛上看到不少不错的延时程序,整理如下共同分享: 精确延时计算公式: 延时时间=[(2*第一层循环+3)*第二层循环+3]*第三层循环+5 ;延时5秒左右 DELAY5S:PUSH   04H;2个 ...

  9. 单片机C语言数据存储原理,介绍单片机中C语言的数据存储与程序编写

    一.五大内存分区: 内存分成5个区,它们分别是堆.栈.自由存储区.全局/静态存储区和常量存储区. 1.栈区(stack):FIFO就是那些由编译器在需要的时候分配,在不需要的时候自动清除的变量的存储区 ...

最新文章

  1. websocket中发生数据丢失_为什么事实上却发生了数据丢失,只有少部 分数据可以加载进来...
  2. 拖动物体的时候,防止鼠标按下的时候对象突然跳动一下
  3. Go 语言 Slice
  4. Windows平台下Makefile学习笔记
  5. 方舟手游服务器设置文件翻译,方舟生存进化手游界面翻译 方舟生存进化手机版中文对照翻译一览...
  6. java 调用祖父方法_在Java中调用祖父母方法:您不能
  7. oracle差异收集明细,Oracle收集表的数据与统计信息差异
  8. django-模型类关系
  9. 【Vegas原创】MagicAjax使用总结
  10. 2021北京民营企业百强榜单发布 美团、水滴等公司入选
  11. web服务-Axis2的安装
  12. java安装教程详细
  13. 计算机病毒的历史:1986-1993(译文…
  14. 网络基础知识汇总学习
  15. 《琅琊榜》里祁王为何必须死?
  16. 曹祖圣VB.NET视频学习工具
  17. 短网址跳转微信公众号
  18. python图像处理《数字图像处理与python实现》读书笔记二:空间滤波
  19. blg_统考,打印准考证 网页代码!
  20. oracle 获取第三行,Oracle 11g 第三章知识点总结——单行函数

热门文章

  1. 区块链防伪溯源系统,焕发电商行业新生机
  2. Maven中央仓库连接不上的问题解决
  3. 跨域问题的4种解决方案
  4. 了解CAP(一致性、可用性、分区容错性)
  5. python 利用win32com进行数据透视表绘制
  6. 解读浏览网页时出现的错误提示
  7. 手机删除的pdf文件怎么恢复
  8. uni-app输入银行卡识别
  9. 欧洲计算机视觉国际会议ECCR20最新论文整理分享
  10. 研发日记——海思HI3519A芯片环境搭建