原创 51单片机与PC机的串行通信到底有多难?

2010-9-14 15:28 10807 17 63 分类: 消费电子

本人从事单片机相关工作多年,刚开始学习串行通信时,没有老师指导,自己看完了好几本单片机教材,又上网查了很多关于单片机与计算机串行通信的文章,足足花了三个月时间才能够较自由的控制单片机的串口,当然包括做一个简单的属于自己的上位机界面,对于我们搞单片机的工程师来说,没有必要会做上位机界面,只要会用VB的 Mscomm控件做一个简单的就可以了。

学习是很艰苦的,但到底走了多少弯路呢?当然我是走了弯路:

第一、我认真的看完了好几本单片机教材的单片机串行口部分,每本都是大几十页,好几本,当然就是好几百页了。看得我头都大了。

第二、为了能看到效果,还得做一个上位机界面,如果像专业人士那样做,用VC编程,那是很难的,我首选VB,还是花了我不少的功夫(幸亏我好多年前就学习过用VB做界面,看过不少书,做过不少)。第三、在串口的控制方面也花了不少时间。

现在我有了设计经验,同时也有了学习经验,想告诉我的热心的读者,到底怎么学习做串口通信,才是捷径。

我个人认为主要有以下几点:

第一、必须会用定时器模式二(重点要了解定时器的TMOD)。

第二、至于单片机串口的多种工作方式中,只要了解通信协议、波特率设置就行了,其中只要知道SCON的设置就行了,当然这点的内容也很多,我们又只要知道串口的方式一就可以了。

第三、至于上位机软件,我们是在搞单片机的软件设计,不是在搞计算机的软件设计,只要用一个串口调试助手看看结果,或是用它从上位机往下位机发送几个数据看能不能控制就行了。完全没有必要去学VB、VC或是Delphi等软件。

本人认为,只要抓位了我上面提到的三点,就行了,如果要看下位程序实例,看看本人已经发表的相关的文章就绰绰有余了。

文章评论46条评论)

登录后参与讨论

用户1569010 2014-7-7 19:03

写得很不错,感谢分享!

用户1181216 2014-7-6 22:58

只看学习精神,最好也有好的过程.其实不是做底层应用开发的,仅仅是串口的单片机开发,应该费不了那么多功夫的.除非是在汇编语言上开发,如果采用C语言,这些都已经被写成标准函数,用起来还是较容易的.不过精神可嘉,支持这种态度.

用户1527847 2012-1-12 13:53

是啊,路子对了,会的就快

用户1406868 2012-1-2 09:41

如果单片机熟的话两者之间的通讯就很简单了,这类应用文章,应用程序太多了,不过不是这个题目本身有多难,但是对于一个初学者来说,具备不屈不挠的精神是值得提倡的。也是可敬的。如果遇到从来没有人做过的事情,或很少有人做的。这种学习精神就会发挥出来了,这就是科研精神。我支持你!

用户1632296 2011-12-21 11:26

呵呵,看了前辈您的题目,我对我的未来产生了质疑,看了各位大神下面的评价,让我这个未来的电子人士有了点信心

用户1451319 2011-12-15 09:23

有很多单片机编程的案例,有点计算机基础知识,并不难理解,读懂了就很容易上手。

用户1320631 2011-10-7 01:43

无语,使用个UART有这么麻烦么?分分钟就能搞定的工作,要几个月??真是入门没有找对师傅啊,那就更更别提那些通讯的冗余可靠性设计及更复杂些的协议了......要努力啊!!现在的新工程师都被所谓简单易用的Total解决方案彻底给废了......各个觉得自己自己牛B,却不明了,我们现在玩的一切,是人家30年前就玩残了的东东,还感觉就该拿多少多少......眼界太底了,汗ing。

用户1622216 2011-8-24 21:37

多多学习学习

用户1580664 2011-8-24 17:00

多动动手

用户1327798 2011-7-12 14:48

太牛了,我也想学,一直静不下心来
相关推荐阅读
用户1092547 2010-09-14 15:26
学习51系列单片机个人经验
本人从事单片机相关工作多年,首先是从51系列单片机开始学习的。自己想把学习经验写下来,与大家共同探讨学习单片机的捷径。 具体如下: 1、学习电子技术基础知识,如电路、模拟电路和数字电路。这是学习电类相...
用户1092547 2010-09-06 09:32
现在学会单片机到底要投资多少钱(学习单片机最廉价的方案)
               很多朋友问我,学习单片机到底要花多少钱,我的回答是肯定的:只要花很少的钱。                他们总是说:要买仿真器,编程器,还要买实验箱或开发板,还要买大量...
用户1092547 2010-09-06 09:18
51单片机C语言编程中对单片机绝对地址访问的两种方法
                  在进行8051单片机应用系统程序设计时,编程都往往少不了要直接操作系统的各个存储器地址空间。C51程序经过编译之后产生的目标代码具有浮动地址,其绝对地址必须经过BL...
用户1092547 2010-09-06 09:17
硬件仿真器会不会被淘汰
             谈起单片机的硬件仿真器,给我的第一印象便是非常的昂贵。像我这样想在不到十年就想学习用会市面上大部分流行的单片机的单片机爱好者来说,根本就不可能去花钱买那么昂贵的单片机硬件仿真...
用户1092547 2010-09-06 09:15
51单片机C语言头文件及其使用
               很多初学单片机者往往对C51的头文件感到很神秘,而为什么要那样写,甚至有的初学者喜欢问,P1口的P为什么要大写,不大写行不行呢?其实这样的问题,看过本文后,就会明白。其实...
我要评论
46
17
关闭 站长推荐上一条 /2 下一条