单片机编程入门基础知识,c语言入门自学

http://www.itjxue.com  2023-01-17 15:05  来源:未知  点击次数: 

单片机必备基础知识

学习单片机需要一些相关的基础知识,要有电路、模拟电路基础,可以不精通,但是至少有这个概念。熟悉一些常用的基础元器件的用法,比如电阻、电容的作用,了解二极管、三极管的基本用法,能够理解单片机最先系统电源电路、晶振电路和复位电路的工作原理。

数字电路基础,单片机本身就是根据数字电路原理运行的,了解数字电路中的“0”、和“1”概念,了解数字电路的门电路,掌握真值表。

C语言也是学习单片机的必要知识,市场的单片机都是用C语言开发的,已经很少人应用到汇编语言。

有了上面的基础知识后,就要选择一款单片机平台入门。目前市场上有的单片机类型多种多样,大家一定要仔细挑选一款适合自己的。

选好单片机后安装单片机开放环境,熟悉单片机软件、下载器、开发板的使用。

学习单片机要哪些知识基础,要擅长哪些科目。数学?

【1】入门——理解CPU,理解内存,理解指令读取和运行过程,理解SFR。了解一点汇编,程序运行过程。了解单片机输入输出口的原理。需要掌握【计算机基础】知识和【数字电路基础】以及【单片机开发环境】汇编程序的编程、调试过程。(1个月)

【2】应用——能够根据设计要求,进行简单外围电路和C语言的设计。需要掌握【电子元件】及【电子线路设计】、【C语言设计】以及对应的各种【开发环境】。(6个月)

【3】提高——能进行产品的开发。熟悉系列单片机内置和各种外围硬件,熟悉产品的基本原理、使用方法、提高性价比、升级维护便利。成为该产品的系统应用专家。(一生)

单片机学习如何入门?

想学好单片机其实并不困难,单片机是一门实践性非常强的的学科,学习时要理论与实践并重量,现在网上学习单片机的资料比较多,你可到有关单片机的论坛上找找,再次就是有准备必要的学习单片机的一些基本的装备,电脑你肯定有,哪就准备一些实践用的工具器件,如:单片机、相关的电子元件,有备件时购一台单片机学习板,这样的学习板附带的例程非常多,你可以边看例程边实践,这样的学习方法入门比较快,等有了一定的基础后,可以自己动手焊的些简单的板子,检验一下自己的学习效果。学习过程中要学习一定的专业知识,比如数电和模电。单片机语言就学语言C,也可用汇编,根据自己情况而定;不管您要学什么型号的单片机51也好,AVR也好,可以先找一个小的项目例子,比如流水灯一类的做,以提高兴趣。总之学习单片机要持之以恒,不断实践,新手学习时注意以下几点:

1、学习理论知识,书的话新手建议看看__王云51单片机教程,结合书带的视频一起看好理解;

2、最好有一个开发板,在开发板上从最简单的功能开始实现,比如做一个流水灯、蜂鸣器音乐盒等;

3、实现简单的功能后,开始尝试更复杂的程序,例如LCD显示、数字时钟、串口通信、中断控制等;

4、在上述功能均可以实现之后,可以组合实现,做一个多功能的单片机系统了;

5、如果对硬件熟悉,可以自己尝试做一个单片机开发板!

学习单片机 需要具备哪些基础知识?

基本要一些数字电路的知识,模拟电路的也要一些。

重点是了解接口、中断这一类的知识,本科的课程里面如《计算机硬件基础》的基础知识也很重要。

可以自己在网上买一块便宜些的电路板,可以自己做实验的,慢慢学,挺好的。

C语言必须会,因为单片机是那个C语言写程序的,你可以到网上下载谭浩强C设计第三版,这个对初学51单片机是绰绰有余,硬件的话模电数电也要了解。

单片机的基础知识

本段仅针对硬件设计人员和软件设计人员,为了便于对硬件的理解要有一定的汇编语言基础。 这三者的本质都是一样的——数字,或者说都是一串‘0’和‘1’组成的序列。换言之,地址、指令也都是数据。指令:由单片机芯片的设计者规定的一种数字,它与我们常用的指令助记符有着严格的一一对应关系,不可以由单片机的开发者更改。地址:是寻找单片机内部、外部的存储单元、输入输出口的依据,内部单元的地址值已由芯片设计者规定好,不可更改,外部的单元可以由单片机开发者自行决定,但有一些地址单元是一定要有的(详见程序的执行过程)。数据:这是由微处理机处理的对象,在各种不同的应用电路中各不相同,一般而言,被处理的数据可能有这么几种情况:

1.地址(如MOV DPTR,1000H),即地址1000H送入DPTR。

2.方式字或控制字(如MOV TMOD,#3),3即是控制字。

3.常数(如MOV TH0,#10H)10H即定时常数。

4.实际输出值(如P1口接彩灯,要灯全亮,则执行指令:MOV P1,#0FFH,要灯全暗,则执行指令:MOV P1,#00H)这里0FFH和00H都是实际输出值。又如用于LED的字形码,也是实际输出的值。

理解了地址、指令的本质,就不难理解程序运行过程中为什么会跑飞,会把数据当成指令来执行了。 这里所说的开发过程并不是一般书中所说的从任务分析开始,我们假设已设计并制作好硬件,下面就是编写软件的工作。在编写软件之前,首先要确定一些常数、地址,事实上这些常数、地址在设计阶段已被直接或间接地确定下来了。如当某器件的连线设计好后,其地址也就被确定了,当器件的功能被确定下来后,其控制字也就被确定了。然后用文本编辑器(如EDIT、CCED等)编写软件,编写好后,用编译器对源程序文件编译,查错,直到没有语法错误,除了极简单的程序外,一般应用仿真机对软件进行调试,直到程序运行正确为止。运行正确后,就可以写片(将程序固化在EPROM中)。在源程序被编译后,生成了扩展名为HEX的目标文件,一般编程器能够识别这种格式的文件,只要将此文件调入即可写片。在此,为使大家对整个过程有个认识,举一例说明:

ORG 0000H

LJMP START

ORG 040H

START:

MOV SP,#5FH ;设堆栈

LOOP:

NOP

LJMP LOOP ;循环

END ;结束

我是一个单片机初学者,我想问一下我需要学哪些知识?

我觉得首先要看懂111条指令,懂意思就行,根本就不需要每一条都记住,因为常用的都只有四五十条罢了。那么多的指令意在可以用多种语句实现同一种功能。

还有就是一定要实际的编程,这一点是非常重要的,只有在实际编程中才能熟悉指令的应用,当然你或许会问自己什么都不懂怎么编程啊,这时候你不要着急,你可以你买一本书,有实际的例子的书,我也见过有这种书但是名字我忘记了,它每个例子是讲得十分详细,有汇编的代码,也有C语言的代码,而且每一行都有注释(名字我忘记了只记得那封皮是黑色的)你可以仿照它的代码写写看,再仿真一下,或者在实际的板子上试试看能不能实现功能,别人的程序修改了能用在自己的板子上那么就是自己的程序了。

至于仿真软件我建议用protues,专用的单片机仿真软件。

如果是自学,那么不懂的地方可以上网收索或者上论坛询问,这里有个单片机的QQ群,是官方建的你可以加上一起学习讨论群号是:7344883

还有在了解指令的同时你要了解你的板子的结构亦即电路连接才能写好你的程序。

当你学到一定程度的时候你可以学习一下单片机的外围电路设计比如液晶显示啊,A/D转换啊什么的....

总之,实际编程练习是学好单片机的唯一途径,至于它和汇编的关系,楼上的哥们儿已解释得十分清楚了的,就不多说了,免得啰嗦。

最后,祝你成功!!!

(责任编辑:IT教学网)

更多

推荐免费资源文章