在我接触的学51的人里,不少人是通过看视频教程入门的,而这其中为数不少的又是看的 郭天翔 的教程。
郭天翔的大名早就耳闻。
在我大三刚刚开始自学51的时候,我在网上看各种51相关的帖子,资料。
关于前景,关于现状,关于学习方法和所需条件等等。
有天晚上,我在网上看到一个郭天翔写的自述学习51单片机的帖子。帖子写了他如何接触51,并在实验室里写了好些时日的汇编程序的经历。
和我们不同,他当时并不知道可以用C写51,所以他用汇编写了不少可以想象比较大的程序,自然也就有了对51更深的理解。
而他的经历和故事,也给了我很大鼓舞。大概其他看过他故事的人是否如此吧。
这些年,网上流传的51教程,最著名的,我知道的 除了 郭天翔,就是杜洋,还有救火车——我前不久在版主群里无意遇到他,才知道他原来曾经也是我们论坛的某个版块的版主。
三个人里,杜洋可能是最有特色的,因为他强调创意,网上的教程相当多,但他可能是唯一一个想到用面包板,乃至芯片卡座构造一个51开发板,下载线的人。
至于救火车,尽管我后来跟他在QQ上遇到,但其实我没看过他的教程。
因为我大三有开这门课,虽然讲的都是很基础,同时那时候我还在学校,图书馆里,这一类的书我基本都翻遍了,说句难听点的就是——是驴是马,都没少见。
但是,因为我见过不少写的很是“恶劣”的代码,我问过几次谁教你这么写的,他声称,我是看 郭天翔 的教程的。
我当时就很奇怪,因为郭天翔停留在我心里的印象是一个高手。
后来我就看了一下郭天翔的视频。
不得不说,那些人果然没说错,因为郭天翔的确就是这么写的。
只能说,郭天翔的汇编是相当了得,但他的C51却实在不怎样,甚至可以说,有很多地方足以看出,他连基本的C语法,概念都不甚清楚。
我曾经在看完郭天翔的十天视频教程里的几个例程以后,在一个群里说到这事,结果马上被反诘,那你说该怎么写(我当时的确费了不少唇舌,说了几个很明显的点)
在这里我想说的是。
我之所以发这个帖子,无意卖弄——我说的东西其实都很基础。
更没有贬损 郭天翔 的意思。前边说了,从某种程度上来说,他是我的入门老师之一。我之所以硬着头皮写这个帖子,主要是两点考虑:
1 太多的人是看郭天翔的教程入的门,入门第一步真的很重要,最初的编程习惯都来自于此。
2 我希望,我能够为郭天翔老师擦拭掉他教程里的一点蒙尘。
这些问题,其中不少是一种概念上的不清晰造成,偏偏最恐怖的是,运行起来基本没有问题——调试过程序的人都会明白,这种潜藏的BUG才是最恐怖的——而我想,也正因为如此,郭天翔才没有发现这些问题。不然以他的能力和韧性,老早就解决了,不至于让我在此饶舌。
这类问题最明显的也是我最早发觉不对劲的 “#define uchar unsigned char”问题
我在百度上搜了好一会,没搜到什么可以下载的文字版的例程整理,只有一个百度文库,可惜我没分,这里给一个链接,没有例程的朋友们可以参考着看,我将从下一个帖子开始分析几个我认为不太妥当的地方,如有不对,敬请指出。