我当时学51时也是没有C基础的,连数组和指针都不会用。不过我还是坚持过来了。可以边学51边学c,想把c学好后再学51这个想法是不对的。对照例题,多敲代码,哪怕你不懂它的意思,把每个代码都要敲一两遍。敲代码时思考为何这样,找资料。实在不知道为何这样,就先跳过。只要坚持一个月,那么很多东西你自然就会明白是什么意思,为何这样。你也就基本可以上路了。切记切记:多动手!
c语言没搞定,不知道同学会不会汇编,51汇编也可以,还有就是看同学是玩玩,还是想深入,玩玩无所谓,深入就需要学内功不是招式,网上很多视频,弄块开发板烧几个程序,亮个灯其内部原理一点不谈,很多人学完,连最小系统都不会搭建。想深入,模电,数电不可少,这比较是硬件,c语言,汇编要懂,这是适合硬件的语言,建议看看微机原理,这是不可少的,很多专有名词你就懂了,不要连高位和地位都弄不清,不知所云。所以我开始就问楼主是玩玩,还是深入。深入需要的东西很多,玩玩无所谓。我大一开始玩单片机,以为自己会了,大二学微机原理,懂了很多以前不明白的东西比如P0口 00000001是那IO口哪位输出高电平,学了微机原理明白了高低位,就理解了,大三正式开始讲单片机,我们老师说:我们学的是内功,你们以前的都是招式。的确学了又有一种新境界,劝同学想靠这个吃饭,还是重基础,多深入。
既然都看不懂,当然要先学C。学C也不用多长时间,学精的话那就不是一时半会了。在这里你又不需要学的多精透。花点时间认真学C,1个月2个月左右就知道个七八了。磨刀不误砍柴工。除了学单片机必学的课程是 C,数字电路和模拟电路都很重要。
先学简单的C语言基础,再学51单片机会比较容易入门,因为现在所有8/16/32位(51系列,MSP430系列,ARM系列)都是使用C语言。
一、51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8004单片机,后来随着Flash rom技术的发展,8004单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。
二、单片机学习主要分三点:
1、完成单片机开发板的学习,理解单片机的工作,能看懂单片机程序。
2、能够照着照着芯片手册(datasheet)试着编写名类芯片的驱动程序。
3、掌握常见的低速通信协议(I2C、SPl等)和高速通信协议。
最好还得是吧C先学了,我是电子的,也学单片机,得先把C学了。我是看视频学的,我现在看的是夏老师的,感觉还行,最吸引我的的地方就是讲的一听就能听懂,而且不繁琐啰嗦,简明清晰,都是重点。之前看过郝斌金文什么的,康辉的也看了一点,感觉都讲的太高深了,而且听不出哪些是重点,有用没用的都讲,像我这样初学者都看的失去学的信心了。