学什么单片机好?学单片机怎么样?能赚钱吗?有前途吗? 学好单片机有前景吗?

作者&投稿:鄣虞 (若有异议请与网页底部的电邮联系)
  • 学什么单片机

  • 单片机的型号那么多,如何选取一款合适的进行学习?就从最基础MCS-51开始,指导老师到处是,公司的工程师,同学,都可以,只要你耐心虚心的不耻上问,相信他们都会帮你解答问题。如果你跟着学习的导师,你也会有得天独厚的优势,直接跟着学就行了。其实单片机型号虽然多,但是用法大同小异,学会一种,再上手其他的就很快了。

  • 步骤阅读

  • 2

    如何学习单片机

    学射箭,你得去拉弓,整天只摆造型肯定不行;学游泳,你得下水扑腾,整天在岸上做模仿活动不行;学开车,你得坐车上去开,坐沙发上肯定学不会。同样的道理,学单片机,整天盯着单片机看肯定不行,你也必须得亲自动手去练。

    没有不下水就学会游泳成为游泳健将的,没有不到车上练就能成为赛车手的,这点大家都清楚,可为什么总是那么多人学单片机的时候,总是要抱着一本书看呢。第一,我们小学中学甚至大学的学习模式都是如此,学什么东西主要都是靠看书;第二,很多人想实践不太清楚该怎么去实践。

    步骤阅读

  • 3

    单片机学习的准备工作

    第一、足够的信心、恒心和耐心。

    第二、教材和教程。

    第三、电脑一台,吴鉴鹰单片机开发板一块。

    步骤阅读

  • 4

  • 单片机开发软件环境搭建

  • 单片机开发,首要的两个软件一个是编程软件,一个是下载软件。编程软件我们用Keil  uVision4的51版本,也叫做keil C51,不做过多介绍,先直接讲如何安装。



这是单片机初学者经常问的问题。
对于这个问题,我想没有人敢下定论。因为每一种单片机各有所长,都适用于其所能充分发挥作用的领域,不存在优差之分。学单片机应该先学51单片机,学会了51单片机再去学其他单片机,这是学习单片机过来人的同感,也是公认的学习方法。为什么要先学51单片机?因为51单片发展最早,应用最广泛,特别是I/O口的操作非常简单,而且相关的学习资料最多、教材最成熟,学习起来得心应手,入门很快。有了这个基础再去学习其他单片机那就是小菜一碟了,只是对着芯片数据手册设置寄存器罢了,快则一两个星期,多则一个月就能掌握另一种单片机了。如果一开始就选择非51单片机学习,那将是路漫漫其修远兮,你将艰难而求索!
那学51单片机用C语言还是汇编语言好?当然是C语言了。
易提网因为:1.C语言是高级语言,代码移植性好,易于维护;2.编程灵活,随心所欲;3.语言层次分明,思路清晰,可读性强。4. C语言是目前最流行的单片机编程语言,例程代码多,便于参考,单片机技术发展之快,应用之广,学习群体日益庞大,这和keil C51开发环境的问世是分不开的。5.C语言是大众编程语言,是其他编程语言的基础,学会了C语言,对于进一步深造的选择就很自由了。汇编语言是早期单片机学习使用的语言,优点是执行指令比C语言稍快外,其他方面笔者不敢恭维。
学会51单片机以后,就可以根据你从事的工作或者你的目标选择以下一种或多种继续深造。
1.AVR单片机-----速度快,一个时钟周期执行一条指令,而普通的51单片机需要12个时钟周期执行一条指令。当然,Atmel公司出品的AT89LP系列单片机也是一个时钟执行一条指令,但目前还未普及。AVR单片机比51单片机多了USB通信模块、SPI通信模块、I2C通信模块、PWM模块、AD转换模块等,但在C语言编程方面对I/O的操作比51麻烦得多。
2.PIC单片机------品种齐全,应用领域广泛,片内资源也很丰富,也是很受欢迎的单片机。比51单片机多SPI通信模块、I2C通信模块、PWM模块、AD转换模块等片内资源。4个时钟周期执行一条指令,速度看似比51单片机快,事实上并非如此,PIC单片机最高时钟频率一般为8MHZ,而51单片机最高时钟频率可达到33MHZ 。速度上PIC单片机并不占优势,而抗干扰能力则也比51单片机略强。C语言编程方面对I/O的操作要比51麻烦。
3.MSP430单片机-----16位单片机,速度快,一个时钟周期执行一条指令,超低电压低功耗,适合用于电池供电设备。
4.Motorola单片机-----抗干扰能力极强,适用于恶劣环境,这是以降低速度为代价的。
5.DSP技术------用于音频、视频、通信等快速数字处理领域,速度超快,编程算法也比较复杂。
6.FPGA技术------难度和单片机差不多,应用领域逐渐广泛。
7.嵌入式系统-----应用于非PC机控制以外的复杂的智能控制系统,以及智能通信设备、掌上电脑、学习设备、娱乐设备等,应用领域也很广泛。学习难度也较大,需要有操作系统、硬件、驱动原理等方面的知识。山寨版的手机、掌上电脑等满街泛滥都是嵌入式系统发展惹的祸。
8.其他单片机,如德州仪器单片机,合泰单片机,NEC单片机等。
要说学哪一种单片机最有前途,笔者也不敢妄加断言。不管选择那一种,前途光明与否都由你的造诣深度来决定,精则兴,不精则废。

1、首先我们来谈谈C基础,单片机程序开发,基本上用的是C语言,你的 语言学的怎么样了,对于关键词的使用是否已经融会贯通了,对于语法规则是否已经掌握。这是一门实践行的知识,没有实践你的C语言等于0,他的功能可不是书上那些例子,输个数做个加减乘除把结果输出。利用他的关键字及语法规则,勾画出无限的生产力。对于C语言的基础知识你要达到那种水平了,当你的想法出现的时候,功能要求已有,你能立刻用C语言描绘出来。C语言只是工具,实现我们的想法的工具,对于工具的使用要信手拈来,例如:把一个字节数据高底位一一兑换、把脉冲数转换为时间及检测出按键的连续两次按下等等,看到问题的时候具体的实现代码在老海呈现了没。

2、工具用熟了以后,我们该学习什么了了?对语法熟练以后就应该重点学习程序设计的方法,请大家分清两个概念,C语言只是工具,会C语言并代表你会设计程序,程序设计能力可分为,首先是能将复杂的功能要求拆分为若干个细小功能,用C语言描述实现,再将这些小功能用你的C语言工具串起来组成我们所需要的复杂功能。整个过程下来C语言都只是实现你想法的工具。看到这里你是否还敢用“玩”、“精通”来形容单片机吗,当真正进入单片机殿堂的时候你会感觉这是一个浩瀚无边的宇宙,你会越发感觉自己的渺小,只有更好,没有最好。

总结几点个人的学习的经验:

C语言与程序设计的学习是相辅相成的,他们共同进步,就如同你的两只脚,谁都不能超过谁很远。学习单片机之前请先学习C语言,请不要相信什么零基础也能学好,至少20天,要把基础知识掌握,在进入单片机学习,视频网上一大把,学会操作基础模块,在这个阶段你可以在网上寻找知识学习,将你开发板的模块程序都练一遍。

当你开发板学完了, 这个时候该这么办了,这就是我今天重点要的。

如果你就是浅尝辄止,那么你可以说自己入门了,如果你想有所造诣那么你还远着了,对于走过了这个阶段以后,我对我的学生的要求就是“背程序”,就如同别人学习英语背文章增强语感。我说所的“背程序”,并非死记硬背,属于一种重复强化训练,围绕几个主题,①、按键读取;②、数码管显示(重复计算显示代码) ;③、LCD1602液晶显示;④、AT24C02读写;⑤、DS1302读写;⑥、DS18B20读写。每个项目从建工程到下载成功在20分钟以内,最好练到在10分钟左右。对于代码需要精简而又有内涵,当你做好以后能增强你的语感及常规程序设计能力。最后以同样的方式训练一个综合项目——多功能数字钟,这个项目可能需要一个上午才能做好。这个过程的目的很简单,增强C语言工具的使用能力,在单片机编程这块,对于基础模块的程序设计能力,完成从感觉自己什么都懂,可要写点什么东西时又不知如何下手到实现一些简单功能程序能迅速写出来的转变。这个方式枯燥乏味但是效果还可以,可以借鉴借鉴。

完成了上述工作,紧接着多练习综合项目,这个时候这能靠自己,学程序没有别的,只能多练,多想。用你的开发板编写:计算器、电子日历、电子密码等各类能把你开发板上的资源综合起来用的程序。假想就是在做项目,要对自己提出苛刻的功能要求,切记不多说差不多了,要做到完美。

再往下走,完美要回过头学习单片机原理,去学习汇编,学习单片机的运行原理对你编程有极大的帮助,再把你的C语言书拿出来,细细的看前几章节,是时候该去看看指针了。在程序中简单的使用指针。 就这样往下练吧,估计至少得年吧时间。

再往下走,你应该去研究指针了,将指针应用到你的程序当中,它可以给你解决以往你所遇到的很棘手的问题。

讲到指针,该想到结构体了,我们应该去学习链表了,我们要将简单数据结构应用到单片机了。这个期间你如果能去学习在操作系统上的编程是很有必要的。如在VC上做简单功能界面,Linux系统编程。这可以让你看看别人优秀代码,从中吸取经验,就算看不到源代码,也可以从别人的函数所具备的功能上思考的自己的函数设计,改善自己的函数,我的很多函数功能设计方式就是这么来的。

差不多又是一年时间过去了。真心希望你坚持下来了,到这个时候你基本上已经能独立解决很多问题了。

这个时候我们该去学习什么了了,该去学习“易经经”——C语言描述数据结构与算法分析。在程序的世界里,它就是最高的内功心法,能在里面学的一招半式,就可以行走江湖了。这本书目前我也只是研究过几个章节,在这里面你会看到操作系统的具体实现,文件系统的设计思想等等,各类大型程序设计设计思想。

先学51单片机,可以看看学习视频,对于每个人来说,多学习一种技能 可以拓宽 就业渠道,

单片机学习可以先学习一些仿真示例,如

#include<reg51.h>

#define uchar unsigned char

uchar temp;

int key1,key,disbuf;// 此表为 LED 的字模 0 1 2 3 4 5 6 7 8 9 a b c d e f

unsigned char code LED7Code[] = {0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};

unsigned char ledx[8];

uchar t,j,i;

bit  s0,s1;

void scan()   //要是按键了,扫描键盘编码值

{

P1=0xF0;

for(j=0;j<250;j++);

temp=P1;

switch(temp)

{

case 0xe0: key1=0;   //

break;

case 0xd0: key1=1;   //

break;

case 0xb0: key1=2;   //

break;

case 0x70: key1=3;   //

break;

}

P1=0x0f;

for(j=0;j<250;j++)

temp=P1;

switch(temp)

{

case 0x0E: key=key1+0;

break;

case 0x0D: key=key1+4;

break;

case 0x0B: key=key1+8;

break;

case 0x07: key=key1+12;

break;

default : key=-1; 

}

if((key1+1)&&(key+1)) disbuf=key;

}

void ejjc()  //判断是否按键

{

P1=0xF0;

if(P1!=0xF0) { scan();s0=1;}

else { s0=0; s1=1;}

}

void main()

{

TMOD=0x51;           // T1 外部计数

TH0=(65535-2000)/256;

TL0=(65535-2000)%256;

EA=1; 

ET0=1;               //开定时器0中断

ET1=1;               //开定时器1中断

TR0=1;               //启动定时器0

TR1=1;               //启动定时器1

while(1)

{

ejjc();

if(s0==1  && s1==1)

{

s0=0;s1=0;

for(i=0;i<8;i++)

{ ledx[i]=ledx[i+1]; ledx[8]=disbuf; }

}

}

void timer0() interrupt 1

{

TH0=(65535-2000)/256;

TL0=(65535-2000)%256;

P0=0xff;

switch(t)

{

case 0: P2=LED7Code[ledx[0]]; P0=0xfe;break;

case 1: P2=LED7Code[ledx[1]]; P0=0xfd;break;

case 2: P2=LED7Code[ledx[2]]; P0=0xfb;break;

case 3: P2=LED7Code[ledx[3]]; P0=0xf7;break;

case 4: P2=LED7Code[ledx[4]]; P0=0xef;break;

case 5: P2=LED7Code[ledx[5]]; P0=0xdf;break;

case 6: P2=LED7Code[ledx[6]]; P0=0xbf;break;

case 7: P2=LED7Code[ledx[7]]; P0=0x7f;break;

}

t++;

if(t==8) t=0;



学单片机有前途吗?~


在中国搞技术赚大钱?省点力气吧,除非你真的很牛,要是只是想满足温饱还是可以的,去了企业里跟着做做产品能学到的也很多,但是要赚大钱,唉~不要为了钱去学什么单片机,你这样的驱动是不稳定,而且你会很累!

单片机开发板哪个好?学习单片机有前途吗?
答:单片机:技术比较成熟,运用在工控领域比较多,但进行嵌入式应用显得太庞大,因而派生出ARM单片机进行高端应用,可以进行操作系统的移植,但是现在一些高端单片机也可以移植操作系统,单片机跟ARM并没有什么本质的区别。DSP:是数据处理的缩写。也可以做控制运用,它的优势是运算,主要用在运算量大的领域,如数...

新手学习单片机选择哪种单片机好?
答:1、新手学习单片机最好选择51系列的单片机,这个系列的单片机有关的学习资料比较多,网上也比较好找,也比较容易上手,只要学会了51单片机,其它的单片机如AVR、ARM等就好学了。2、51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8031单片机,后来随着Flash rom技术的发展...

单片机哪个好?哪个适合初学者学习选择?_百度...
答:5.单片机在医用设备领域中的应用 单片机在医用设备中的用途亦相当广泛,例如医用呼吸机,各种分析仪,监护仪,超声诊断设备及病床呼叫系统等等。此外,单片机在工商,金融,科研、教育,国防航空航天等领域都有着十分广泛的用途。

初学者学什么单片机好呢?
答:🤔学习难点学习单片机困难的地方在于每种单片机的指令和汇编格式几乎都不同,比如8051的与MOTOROLA 68XXX不同,就连MOTOROLA 6800、6805、6809、6811等等相互的指令格式也不同。💻软件编程当然如今的单片机也不一定非用汇编语言,很多也可以通过相关的软件而让我们直接使用C语言编程,对单片机进...

请问学习51单片机买哪款单片机比较好?
答:51单片机学习的话目前说实话还就是宏晶的STC单片机比较合适,毕竟他和标准51兼容,另外支持串口下载比如STC89C52标准51带的东西他都有,容量什么的也一样。完全可以用来学习做实验 尤其是下载方式采用串口,如果你电脑自带串口的话,自己加个MAX232电平转换芯片,接上电源和晶振就可以下程序做实验了。比较简单...

学什么单片机最有前途
答:学单片机应该先学51单片机,学会了51单片机再去学其他单片机,这是学习单片机过来人的同感,也是公认的学习方法。为什么要先学51单片机?因为51单片发展最早,应用最广泛,特别是I/O口的操作非常简单,而且相关的学习资料最多、教材最成熟,学习起来得心应手,入门很快。有了这个基础再去学习其他单片机那就...

学习单片机有什么好的建议吗?
答:📚学习建议学单片机建议从51单片机学起,先学汇编,再学C51语言。学第二种单片机,你可以直接学C语言,而没必要非得慢慢地学习汇编来掌握,因为你已经掌握了51单片机的汇编,没必要非得再学其它单片机的汇编,除非你时间很充足,或者是你想把基础打得更扎实。👨‍💻VB上位...

现在市面上用的单片机都有哪些?各自的市场占有率大概多少,学哪种前途比...
答:主要是价格便宜。SST单片机质量最好,经常仿真器就用它,烧录次数多最不易坏,功能也强大。如SST89C58内存很大,内置E2存储.WINBON公司的WINBON77系列,WINBON78系列功能都很强。AVR单片机功能更强大,速度也更快。ARM是属于嵌入式,它功能最强大,已基本不属于单片机范畴了,它可以运行操作系统。

学单片机学那个芯片比较好?未来趋势那个芯片比较抢手?
答:学单片机的话学51或者AVR是最抢手的.但各有各的好处(51学的资料太多了,avr能力强)但未来的话这两个都不是工业工控方面的主流。自己做点东西还好。真正主流的工业单片机比如东芝什么的我们学习是学不起的,倒不是单片机贵或者资料少,单片机学习的话只要通一种,其他的都有类似,看datasheet都行。...

单片机学哪种最有前途?
答:单片机其实差距不大,可以先学51,再stm32,之后嵌入式或者FPGA,如果能力强可以跳过51.