初学者应该以什么态度来学单片机,一些很不端正的态度必须纠正
带过那么多学生,有一部分人会觉得8位机真的太简单了,感觉自己已经入门来就想着准备要学嵌入式,玩ARM,弄Linux,在这些人眼里看来,会单片机并不等于会嵌入式,在这里纠正一下各位“大神”的观点,它们实际上是两个不同的概念,并且问问你的内心,会用单片机就等于真的能用单片机了吗?毫不犹豫的说还差很远,无论是8位机还是32位机,这些都只是我们解决问题的一个工具而已,很多人都说自己会用C语言,但是有有几个人真的能用C语言写出Linux和uCOS呢?
所以对于初学者来说,你们的态度很重要,不要飘在空中,要脚踩地,搞哪一款单片机并不重要,重要的是需要精通且擅长一款,基础通用款原理都是差不多的,精通来一款之后再用其他公司的那都是小菜一碟,然后再进而学习32位的处理器也是轻松自如,游刃有余,反之,每个单片机对你来说永远都是处于入门状态。
51单片机应用的比较多,对于新手来说更容易上手,而且51单片机算是鼻祖,学会它之后再弄其他型号的都不是问题,分享一些51单片机串行通信的基本概念,它通常是指的是单片机和计算机之间,或者是单片机和单片机之间信息的交互,通常是下位机和上位机之间的通信,下位机一般指的是单片机,也就是说做一些简单的一些数据的采集,或者一些控制,或者是一些线下的仪表,上位机经常是指的是PC机或者计算机,可以和下位机之间进行串行通信做一些数据的传输,或者是一些控制命令的传输。
单片机与单片机之间做信息交互的时候通常使用的是串行通信,另外单片机的系统构建的时候一些外围的器件,或者外围的芯片,或者一些模块和单片机之间做接口时也通常使用单片机的串行口,比如蓝牙模块,或者无线的CP模块,和单片机之间做接口的时候通常也是用的串行通信接口,有的是用485接口,还有一些仪器仪表,一些智能化的传感器,一般会以标准的485接口,要想通过485做一些数据的接口,单片机还是要使用串行通信,要用接口芯片把它转成485的接口。
单片机内部的串行通信相对比较重要,在做系统构建的时候,或者一些调试程序的过程当中也经常会使用单片机的串行口来作为调试的输出窗口,把在程序调试过程中的一些参数或者一些数据能够通过串行口传输到的计算机,比如用串口调试助手来查看程序的运行的一些过程,或者调试的程序来排除一些问题经常也会使用单片机的串行口,需要对单片机的串行通信做一个简单了解。
使用单片机的串行通信接口通信,一般有并行通信和串行通信两种形式,在单片机系统当中,目前经常使用的就是这两种形势,并行通信指的是在同一个时刻可以传输多个比特位,比如一个字节同时传输就要占用八个比特位,数据线就需要八根线,同时还需要一些控制线,如果同一时刻传出16个比特位,就需要16根线,需要传输32个比特位,就需要32根线,所以并行通信数据线会比较多,也就带来了它的物理会比较多,硬件成本会比较高,传输距离一般比较近,容易受到外部的干扰。
并行通信就不再过多的来介绍了,现在,经常使用的都是串行通信,包括计算机系统都是USB的接口就是串行通信接口,以往的并行接口现在很少使用,包括计算机的内部,以往老的计算机打开主机箱会发现内部会有很多排线,就是用扁平电缆连接在一起的排线,比如硬盘和CPU和主板之间进行连接的时候,都是用一排排线,可以看排线会非常的多,有几十根,现在的主机箱再打开之后,会发现计算机的主机箱内部非常简洁,就只有几根线比较简单,都是采用了串行接口,不再使用并行的通信接口。
串行通信在同一个时刻只能一位一位的来传输,把一个字节的数据要分成一个位一个位的来传,它需要一根数据线就可以做数据的传输,并行通信需要多根数据线才能够进行数据的传输,跟八车道和单车道是一样的,八车道同一时刻可以传输八辆车,单车道同一时刻只能过一辆车,但是如果每辆车之间过的速度比较快,它的速率能够满足应用系统的要求也是可以的,现在串行通讯的技术层次发展的比较快,很多场合都在使用串行通信,它的速度已经可以达到很高,例如现在的移动硬盘都不再使用并行接口,用的都是USB的串行接口,了解一下并行通信和串行通信之间的区别。
串行通信的制式主要分成这么三种类型,单工,半双工和全双工,51单片机的串行通信是全双工,实际上通信制式主要是数据的传输流向是单向的还是双向的,单工就是单向的,比如广播喇叭,广播的人把需要广播的信息传送出去,接收端只能是接收信息,80年代的BB机,BB机只能接收信息,显示信息之后,要想给发信息的人来进行沟通得去回电话,也就是说它们实际上是一种单工的制式,到了后来就有半双工的一种方式,就是说收发双方,都可以发送和接收数据,但是不能同时进行,也就是说A端也想把数据发送给B端,或者说B端要把数据发送给A端都是可行的,但是A端在发送的时候不能接收,在接收的时候也不能发送,B端也是同样得道理,对讲机就是如此,在说话的时候就不能收听,在收听的时候就不能讲话,这个就是半双工,收发不能同时进行,只能是分时进行,485通信基本上使用的就是半双工的一种制式。