找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6515|回复: 39
打印 上一主题 下一主题
收起左侧

学习单片机之前要什么准备什知识?

  [复制链接]
跳转到指定楼层
楼主
ID:429951 发表于 2018-12-15 20:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
就学习C语言吗
本人懂电路基础  数模等。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:164602 发表于 2018-12-15 21:12 | 只看该作者
单片机对C语言要求不高,可以边学边学。但要做到高级的,计算机的算法语言是一定要学的,不然提不高。计算科学,真的很科学的。
回复

使用道具 举报

板凳
ID:171985 发表于 2018-12-15 21:21 | 只看该作者
可以先学下汇编的
回复

使用道具 举报

地板
ID:94031 发表于 2018-12-15 21:29 | 只看该作者
懂电路基础  数模等就可以开始学啦
回复

使用道具 举报

5#
ID:447003 发表于 2018-12-15 22:29 | 只看该作者
#看看微机原理和单片机原理的书吧 ,单片机汇编语言 ,C语言这两个都行
回复

使用道具 举报

6#
ID:123289 发表于 2018-12-16 00:23 | 只看该作者
依你的终极目标而定。
做高手,必须有良好的数学基础、逻辑基础。
回复

使用道具 举报

7#
ID:317383 发表于 2018-12-16 08:22 | 只看该作者
学习是循序渐进的,
基础是数电,模电,电分,C语言;然后,进一步学习,C++,嵌入式系统,组态软件
这些也是根据之后实际的需要,一步一步来,
回复

使用道具 举报

8#
ID:413632 发表于 2018-12-16 11:36 | 只看该作者
懂数电、模电,想必电路基础也会得八九不离十了,如果这三门课都入门了,那学习单片机就会轻松很多,C语言只是一个很简单工具,用着用着就会了,不用刻意去学,也不要把C语言想得很复杂
回复

使用道具 举报

9#
ID:447221 发表于 2018-12-16 14:15 | 只看该作者
本人觉得可以先不用学汇编,因为汇编比较难懂,可能会影响你的信心,边学一些C,跟着开发板做一些实验,慢慢的在进行单片机内在结构了解,循序渐进,坚持
回复

使用道具 举报

10#
ID:431737 发表于 2018-12-16 15:38 | 只看该作者
最好有计算机的基础知识
回复

使用道具 举报

11#
ID:155507 发表于 2018-12-16 17:20 | 只看该作者
刚开始,你可以不用急着写程序,你可以把什么是单片机这个概念搞懂,你可能已经看到过一块单片机开发板,记住:我这里强调的是单片机开发板,而不是单片机。单片机是由微处理器、存储器和I/O接口电路构成,同时它也有自己的内部资源:定时/计数器、中断源、优先级查询电路以及内部总线(C51是单总线结构),。单片机微处理器一般是8位的,存储器分为ROM和RAM,在C51中,有4K的ROM和128字节的RAM,它们各自的容量要根据不同的单片机型号而定,我认为现在的单片机的存储器相比以前已经拓展的很大了,例如STC12C5A 系列,他们的ROM已经是64K,RAM是1028B,相比传统的C51,你说这容量是不是很震撼。
回复

使用道具 举报

12#
ID:155507 发表于 2018-12-16 17:21 | 只看该作者
我想也是的。当然了,如果你足够牛,你也许会碰到这样一个情况:为什么我写个一个全板测试测序为什么在C51上下载不进去呢?因为你的程序大小已经超过了4K了,呵呵。。。。在刚刚介绍单片机的内部资源时,你也许已经发现了,为什么我没有把内部资源写的那么具体,因为不同单片机的内部资源是有所不同的,但是都是大同小异,所以当你拿到一个开发板时,首先就要看他的数据手册,看看它的内部资源是哪些,心中要有个数。。。。由单片机再加上外围设备(简称外设)就可以叫:单板机了,也就是人们常说的单片机开发板。

回复

使用道具 举报

13#
ID:155507 发表于 2018-12-16 17:22 | 只看该作者
外设是很活的东西,因为外设的添加不是那么固定,这要根据开发单片机板子的工程师怎样设计了。。。但是现在基于C51内核的单片机开发板,其添加的外设都是差不多的,例如用于时钟的DS1302,温度传感器18b20,数码管,显示器1602和12864以及TFT彩屏,还有大多数基于IIC总线的PCF8591、EEPROM,键盘(独立和矩阵)等等。。

回复

使用道具 举报

14#
ID:155507 发表于 2018-12-16 17:23 | 只看该作者
这时候,你可以不用着急忙于学外设,你主要的任务是掌握单片机的运作过程,当实现一个小功能的程序时,你可以想想这个程序涉及到哪些硬件资源,这个资源怎样工作的?

即使不太懂也不用着急,毕竟这个时期主要是掌握单片机内部原理,具体的思路你可以结合“模拟电路”,“数字电路”“计算机组成原理”“汇编语言”的知识获得,学习单片机我认为是一件很幸福的事,为什么这样说,它本身就可以看做是一个早期的“电脑”,你可以知道各个指令的运行实质(结合计算机组成原理中的“指令执行过程”),这样当你在写代码的时候,心里不会感觉那么“虚”。。。。。

回复

使用道具 举报

15#
ID:155507 发表于 2018-12-16 17:25 | 只看该作者
说的有点远了。说说汇编吧,我认为学习汇编目的也就是为了更好地了解单片机里面的内部资源:寄存器。因为C语言里面涉及到寄存器编程的很少,但是汇编就不同了,它对寄存器和物理地址都要掌握才能够编程,这点对于单片机的学习还是很有好处的,因为你可以对“控制”这个概念有个很好的感性认识。。。

说到现在,就是要告诉你,掌握单片机原理。但是难点还是有的,例如中断响应部分,各个I/O口结构的特点,这方面在编程时会涉及到,有时候你忽视它,可能会造成不是自己想要的结果。当然了,在这个阶段,你不光要掌握单片机原理,还要把数字电路和C语言回顾一下。。。。。。
回复

使用道具 举报

16#
ID:16806 发表于 2018-12-16 22:35 | 只看该作者
学习的单片机,建议边学边做,进而再掌握相应的开发技巧。
回复

使用道具 举报

17#
ID:16806 发表于 2018-12-16 22:36 | 只看该作者
学习单片机,建议边学边做,进而掌握开发技巧。
回复

使用道具 举报

18#
ID:440938 发表于 2018-12-17 08:21 来自手机 | 只看该作者
就我学校老师说的应该需要汇编语言学好,学过了单片机后学镶入式也变简单了。
回复

使用道具 举报

19#
ID:420031 发表于 2018-12-17 09:38 | 只看该作者
我也觉得先学汇编好,因为是直接针对单片机内部各部分进行控制的指令语言,能更好的理解单片机工作原理和流程,特别是对硬件设施的了解是有好处的。在这个基础上学习C编程或许会更容易些,C语言比较通俗易懂移植性好,汇编呢,自己编的自己懂,别人要弄明白你的汇编程序就比较难了,所以一些较复杂的通用的程序相信C语言有优势
回复

使用道具 举报

20#
ID:438182 发表于 2018-12-17 09:54 来自手机 | 只看该作者
学习好c语言很重要
回复

使用道具 举报

21#
ID:370231 发表于 2018-12-17 10:18 | 只看该作者
学习单片机的八大步骤

学习使用单片机就是理解单片机硬件结构,以及内部资源的应用,在汇编或C语言中学会各种功能的初始化设置,以及实现各种功能的程序编制。

第一步:数字I/O的使用

使用按钮输入信号,发光二极管显示输出电平,就可以学习引脚的数字I/O功能,在按下某个按钮后,某发光二极管发亮,这就是数字电路中组合逻辑的功能,虽然很简单,但是可以学习一般的单片机编程思想,例如,必须设置很多寄存器对引脚进行初始化处理,才能使引脚具备有数字输入和输出输出功能。每使用单片机的一个功能,就要对控制该功能的寄存器进行设置,这就是单片机编程的特点,千万不要怕麻烦,所有的单片机都是这样。

第二步:定时器的使用

学会定时器的使用,就可以用单片机实现时序电路,时序电路的功能是强大的,在工业、家用电气设备的控制中有很多应用,例如,可以用单片机实现一个具有一个按钮的楼道

灯开关,该开关在按钮按下一次后,灯亮3分钟后自动灭,当按钮连续按下两次后,灯常亮不灭,当按钮按下时间超过2s,则灯灭。数字集成电路可以实现时序电路,可编程逻辑器件(PLD)可以实现时序电路,可编程控制器(PLC)也可以实现时序电路,但是只有单片机实现起来最简单,成本最低。定时器的使用是非常重要的,逻辑加时间控制是单片机使用的基础。

第三步:中断

单片机的特点是一段程序反复执行,程序中的每个指令的执行都需要一定的执行时间,如果程序没有执行到某指令,则该指令的动作就不会发生,这样就会耽误很多快速发生的事情,例如,按钮按下时的下降沿。要使单片机在程序正常运行过程中,对快速动作做出反应,就必须使用单片机的中断功能,该功能就是在快速动作发生后,单片机中断正常运行的程序,处理快速发生的动作,处理完成后,在返回执行正常的程序。中断功能使用中的困难是需要精确地知道什么时候不允许中断发生(屏蔽中断)、什么时候允许中断发生(开中断),需要设置哪些寄存器才能使某种中断起作用,中断开始时,程序应该干什么,中断完成后,程序应该干什么等等 。

中断学会后,就可以编制更复杂结构的程序,这样的程序可以干着一件事,监视着一件事,一旦监视的事情发生,就中断正在干的事情,处理监视的事情,当然也可以监视多个事情,形象的比喻,中断功能使单片机具有吃着碗里的,看着锅里的功能。 以上三步学会,就相当于降龙十八掌武功,会了三掌了,可以勉强护身。

第四步:与PC机进行RS232通信

单片机都有USART接口,特别是MSP430系列中很多型号,都具有两个USART接口。USART接口不能直接与PC机的RS232接口连接,它们之间的逻辑电平不同,需要使用一个MAX3232芯片进行电平转换。

USART接口的使用是非常重要的,通过该接口,可以使单片机与PC机之间交换信息,虽然RS232通信并不先进,但是对于接口的学习是非常重要的。正确使用USART接口,需要学习通信协议,PC机的RS232接口编程等等知识。试想,单片机实验板上的数据显示在PC机监视器上,而PC机的键盘信号可以在单片机实验板上得到显示,将是多么有意思的事情啊!

第五步:学会A/D转换

MAP430单片机带有多通道12位A/D转换器,通过这些A/D转换器可以使单片机操作模拟量,显示和检测电压、电流等信号。学习时注意模拟地与数字地、参考电压、采样时间,转换速率,转换误差等概念。使用A/D转换功能的简单的例子是设计一个电压表。

第六步:学会PCI、I2C接口和液晶显示器接口

这些接口的使用可以使单片机更容易连接外部设备,在扩展单片机功能方面非常重要。

第七步:学会比较、捕捉、PWM功能

这些功能可以使单片机能够控制电机,检测转速信号,实现电机调速器等控制起功能。 如果以上七步都学会,就可以设计一般的应用系统,相当于学会十招降龙十八掌,可以出手攻击了。

第八步:学习USB接口、TCP/IP接口、各种工业总线的硬件与软件设计

学习USB接口、TCP/IP接口、各种工业总线的硬件与软件设计是非常重要的,因为这是当前产品开发的发展方向。
回复

使用道具 举报

22#
ID:274129 发表于 2018-12-17 11:56 | 只看该作者
基本的C语言知识和基本的模电数电知识
回复

使用道具 举报

23#
ID:446674 发表于 2018-12-17 15:19 | 只看该作者
嵌入式这门学科是比较综合的很多嵌入式工程师到后期发都发展成了全栈工程师,但对于新手而言个人建议熟练掌握C语言,掌握开发逻辑和一些经典的算法就暂时够用,之后在学习中会循序渐进的教会你全方面的知识
回复

使用道具 举报

24#
ID:449435 发表于 2018-12-19 22:41 | 只看该作者
学习是循序渐进的,
基础是数电,模电,电分,C语言;然后,进一步学习,C++,嵌入式系统,组态软件
这些也是根据之后实际的需要,一步一步来
回复

使用道具 举报

25#
ID:363042 发表于 2018-12-20 00:40 | 只看该作者
C语言是基本要求,懂数电模电就可以学了。当然要多实践。
回复

使用道具 举报

26#
ID:457618 发表于 2018-12-28 21:50 | 只看该作者
需要,基本的C语言需要了解
回复

使用道具 举报

27#
ID:447180 发表于 2018-12-29 10:09 | 只看该作者
不用那么麻烦,从例子开始。无非是延时,循环,顺序三大结构
回复

使用道具 举报

28#
ID:264304 发表于 2018-12-29 10:45 | 只看该作者
计算机操作,isis7  电子cad 软件的使用   c++ SUblime  kill 软件的使用 最好是自己买块开发板 根据里面的教程边学边做,还可以多看看郭天祥的51单片机视频教学,最主要的是你必须得有兴趣
回复

使用道具 举报

29#
ID:426284 发表于 2018-12-29 10:49 | 只看该作者
从最简单的51开始学,直接在网上买个开发版,多多练习,既然懂电路  数模,学习起来会很简单的
回复

使用道具 举报

30#
ID:457892 发表于 2018-12-29 11:15 | 只看该作者
数字电路,微机原理,汇编语言
回复

使用道具 举报

31#
ID:413157 发表于 2018-12-29 11:46 | 只看该作者
我之前一点都没接触过电路基础,单片机上手简单,多看教程,多练就挺好的
回复

使用道具 举报

32#
ID:458028 发表于 2018-12-29 14:27 | 只看该作者
基础的电路知识肯定是必须的,然后可以学学c语言或者汇编语言
回复

使用道具 举报

33#
ID:458047 发表于 2018-12-29 14:45 | 只看该作者
c语音并不占很大部分,都是些基本的操作
回复

使用道具 举报

34#
ID:364241 发表于 2018-12-30 08:56 | 只看该作者
c语言或者汇编语言的一种
回复

使用道具 举报

35#
ID:454778 发表于 2018-12-30 10:40 | 只看该作者
会一点C语言就好,对其他的要求不是很高
回复

使用道具 举报

36#
ID:451718 发表于 2018-12-30 13:17 | 只看该作者
再补一个可以让你快速入门的教程
http://www.51hei.com/bbs/dpj-140702-1.html
回复

使用道具 举报

37#
ID:459956 发表于 2019-1-3 14:23 | 只看该作者
好好学习汇编语言
回复

使用道具 举报

38#
ID:459956 发表于 2019-1-3 14:24 | 只看该作者
汇编语言很重要
回复

使用道具 举报

39#
ID:459956 发表于 2019-1-3 14:24 | 只看该作者
杨凌霄老师编的单片机原理不错
回复

使用道具 举报

40#
ID:460873 发表于 2019-1-3 15:41 来自手机 | 只看该作者
我是大四学生,大三学的单片机,参加了一些大赛,个人认为学单片机首先把单片机课本熟读两遍,这可不能拖太长时间,对单片机的内部资源理解。外围电路能熟练。 模电、数电不好也不要紧,不懂时再回去看看不就好了。 汇编不用学的太好,但起码你能用汇编把课程设计做完。然后得话就学c吧。 学c不是说拿着c语言书,而是做些小制作之类的。在设计中学。 没单片机基础的话,先学c51吧。 不要听别人说51不行,学51是为了以后学别的更方便,更快。以后可以学arm等更高级的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表