微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 谈谈自学C51单片机的一些见解仅作参考

谈谈自学C51单片机的一些见解仅作参考

时间:11-30 来源:互联网 点击:
学习C51有半个月多了,在这短短的半个月里,虽说没有每天都在学,都是至少投入的时间还是跟天数成正比的。幸运的是有C语言和汇编的知识做基础,学习 C51还是满上手的。在这半个月中,通过不断的学习基础知识和练习例子,到最后还是取得一定的成功,从什么都不会到会写一个简单的跑马灯程序,再到花样流水灯,电子琴设计,数码管显示,按键扫描,点阵输出,中断,定时和串口初步设计,最后到LCD1602驱动程序设计,DS1302时钟电路驱动程序设计,那种渐进的感觉真的会让你充斥着一种无比的自豪感和成就感,让你忍不住想把这种感觉带给别人,让别人看到你的成就。

说真的,当你学会C51,我想你不会再用汇编编程了,这种现象足以说明C语言相对于汇编的优越性,举个简单的例子,叫你用汇编语言和机器语言写个跑马灯程序,你会选择哪一种?

我想每个人都会选汇编吧,再笨的人也不至于笨到放着汇编不用,用机器语言写01串,写到最后你未必看得懂,都是0101的字样,看得懂我觉得你应该可以当机器了。而C语言是一种高级语言,相对汇编正如汇编相对机器语言有优势。这里并不是说汇编没有用,只是C语言编程比汇编来得简单的多,比如你写一个发声的程序,用C语言只要四条指令就够了,而汇编要写很多条。而且,在设计大型的项目时,用C语言会有一种清晰的思路。但并不是说C语言什么都好,在某些时候,用汇编设计会比c语言简单的多,就拿我遇到的例子来讲,你要写一个延时程序,用C语言写的话,延时的效果并不精准,用汇编会好些,当然排除你用定时来写。还有用C语言来写你不知道运行结果会发生什么,有可能发生不可预知的错误,而汇编则是可预知的,这是C语言最大的缺点。这是我对C语言和汇编的见解,仅作参考。

总的来说,要想学好学精单片机,你最好把汇编和C都学好,汇编每一条指令都可以让你清楚地控制单片机的IO口,通过了解单片机的内部结构和外围部件,可以清晰的编写自己所要的程序。用C语言编写较大的程序思路会比较清晰,学好c语言通过外围模块时序的学习,很容易就能编出该模块的驱动程序。就拿 LCD1602来讲,在我空间日志有专门一篇写LCD1602的驱动程序,从这篇来看,只要我们清楚LCD1602的工作时序,设计一个程序就比较简单。设计LCD1602无非要写这些内容:读忙,延时,写数据,写指令,初始化,显示。要了解LCD1602各个引脚的功能,比如RS为寄存器选择,高电平为数据寄存器,低电平为指令寄存器,RW为读写信号线,高电平为进行读操作,低电平为写操作,E为使能端,当E端由高电平跳变低电平,液晶模块执行命令。写到这里,估计你对C51有初步的认识吧。

还有学习单片机还要掌握模电,数电,和电力电子技术,protel 99se,wave,stc-isp,keil ,isis.有些我没有学好,也要努力咯,因为对于电路的设计和程序下载,这些必不可少的。最后一点,是多上机操作,实验是检验真理的唯一标准。兴趣是学习的老师,有兴趣你会学的很快的。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top