51如何学习单片机编程问题

您所在位置: &
&nbsp&&nbsp&nbsp&&nbsp
《51单片机C语言编程入门(详讲版)》.pdf 83页
本文档一共被下载:
次 ,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
《51单片机C语言编程入门(详讲版)》.pdf
你可能关注的文档:
··········
··········
中国科学技术大学业余无线电协会编
§1 前言…………………………………………………………………………………………
§2 单片机简介…………………………………………………………………………………
2.1 数字电路简介……………………………………………………………………………
2.2 MCS-51单片机简介………………………………………………………………………
2.3 Easy 51 Kit Pro 简介…………………………………………………………………
2.4 Easy 51 Kit Pro 电路功能分析………………………………………………………
§3 MCS-51单片机的 C语言编程………………………………………………………………
3.1 汇编语言…………………………………………………………………………………
3.2 建立你的第一个 C 项目…………………………………………………………………
3.3 生成hex 文件…………………………………………………………………………… 12
3.4 Keil C 语言……………………………………………………………………………… 14
3.5 单片机 I/O……………………………………………………………………………… 18
3.6 中断……………………………………………………………………………………… 25
3.7 定时器/计数器…………………………………………………………………………
3.8 定时器的应用举例……………………………………………………………………… 29
3.9 外部中断………………………………………………………………………………… 34
3.10 串行通信………………………………………………………………………………
3.11 定时器 2………………………………………………………………………………
3.12 看门狗…………………………………………………………………………………
3.13 空闲模式和掉电模式…………………………………………………………………
§4 MCS-51单片机 C 语言编程应用进阶……………………………………………………
4.1 扫描式键盘……………………………………………………………………………… 51
4.2 EEPROM 芯片AT93C46 的读写…………………………………………………………… 55
4.3 Keil C 的高级使用……………………………………………………………………… 63
§5 编写高质量的单片机 C 程序……………………………………………………………… 64
5.1 文件结构………………………………………………………………………………… 64
5.2 程序的版式……………………………………………………………………………… 66
5.3 单片机程序命名规则与变量选择……………………………………………………… 70
5.4 表达式和基本语句……………………………………………………………………… 73
5.5 函数设计………………………………………………………………………………… 77
5.6 单片机程序框架………………………………………………………………………… 79
附图:Easy 51 Kit Pro电路图(最小系统板)……………………………………………
附图:Easy 51 Kit Pro电路图(学习板)…………………………………………………
51 单片机 C 语言编程入门——Easy 51 Kit Pro 配套学习资料
什么是单片
正在加载中,请稍后...51单片机真的过时了吗_百度经验
&&&&&&朋友51单片机真的过时了吗
百度经验:jingyan.baidu.com到这个问题,相信大家很多人都在问,也有很多人想知道,还有很多人有自己的看法,今天我在这里发表一下自己的观点。& && &现在在大学里,51单片机仍是电子类专业必修的课程,然而这几年随着ARM的火爆,很多51的学习者有了专业一个疑问:既然大家都在用ARM,我们为什么还要学51?而且找工作的时候人家也比较关注有过ARM使用经验的。& && &为了解决这个疑问,我们首先需要分清下面几个概念:单片机、ARM、DSP、FPGA/CPLD,这几个关键词是学习电子的人常见的几种芯片(我不知道该统称什么,姑且这么叫吧)。这几个词要分类的话首先要把FPGA/CPLD和其他的分开,因为FPGA/CPLD的原理和单片机、ARM、DSP不同。& && &FPGA/CPLD 是通过硬件实现功能的,FPGA是Field-Programmable Gate Array的缩写,即现场可编程门阵列;CPLD是Complex Programmable Logic Device的缩写,即复杂可编程逻辑器件。通过名字可以看出,二者都是可编程的逻辑器件,即实实在在的硬件,通过对硬件编程以实现某种特定功能。说直白 一些,二者就是一个与非门或者或非门阵列。由于所有的逻辑式子都可以变换成与非结构或者或非结构,因此所有的逻辑功能都可以通过FPGA/CPLD实现, 编程后的芯片相当于一个数字芯片,如加法器,移位寄存器等。二者的区别在于FPGA是基于RAM结构的,CPLD是基于ROM机构的,这些不是本次讨论的 重点,不再赘述。& &&&再说单片机和ARM及DSP的关系,单片机是“单片微型计算机”的简称;ARM是Advanced RISC Machines的简称,它只是一家微处理器设计企业的名字,因此ARM是他们设定的微处理器的统称;DSP是Digital Signal Processing的简称,即数字信号处理。了解了这些,我们可以说单片机是所有所有MCU(微型控制单元)的统称,ARM是DSP只是他们的一 种,ARM属于用公司名称的一种称呼,而DSP则是根据功能(数字处理)命名的一种称呼。但是,在行业内,单片机一般特指8位或16位的MCU,在本文中 仍采用大家熟悉的叫法,把单片机和ARM放在并列的位置。& &了解了这些,我们还需要了解一个问题,什么是51单片机。这个问题本不想说,可是 看到有人说51是AT89C51的简称,所有觉得有必要提一下。1980年,Intel推出了首款单片机8051(这个8051有可能是公司内部的设计编 号,我没有找到为什么叫这个),之后又陆续推出了与8051指令完全相同的、8052等系列的单片机,初步形成了MCS-51系列。 1984年,Intel出售了51核,此后,世界上出现了上千种51单片机,如爱特梅尔、飞利浦,华邦,还有国内的宏晶等。51单片机泛指所有兼容 8051指令的单片机。当然,一些公司购买51核后增加了一些功能或者寄存器等,增加的这些东西是不兼容的。于51单片机处于并列关系的有AVR系 列,PIC系列等,他们的区别在于虽然都属于8位机(PIC系列的有16位的),但所使用的指令集不同,这也就是区别一个单片机系列的一种方法。& &51 单片机过时了吗?要了解怎么一个问题,首先得搞清楚51单片机在市场中的应用情况以及将来的发展情况。众所周知,自从ARM出现以来,短短的几年内便出现 了ARM7、ARM9、M3、M4、A8、A9、A10等等多个系列,其性能也得到了飞速发展,以其高性能,低价格,低功耗等优势迅速占领了MCU的江 山,比起当年的51有过之而无不及。作为32位机,其性能是毋庸置疑的,即便是相同的时钟速率,32位机的处理一些数据的速度也要快于8位机,如一个32 位的加法运算,8位机至少需要4个周期,而32位机只需要一个周期即可完成。ARM的优势在于较高的处理速度,还有丰富的外设资源,还有就是较大的数据和 程序存储空间。相比之下,51单片机就没有优势了吗?当然不是,51单片机的优势在于小巧的内核,成熟的技术(其实现在ARM的技术也很成熟),还有就是 位操作。在相当多的应用场合,我们并不需要ARM如此强大的处理功能和速度,而是只需要简单的控制,51单片机已经完全可以满足实际的需求,这样一 来,ARM的优势便显的不再重要,而51的位操作则是ARM达不到的,也许你会说ARM同样可以实现位操作,但如果你了解的比较深的话会发现,ARM的位 操作是通过移位,与或等操作之后实现的,而51单片机则又位寻址空间,是真正的位操作。再一个就是价格,在价格上最便宜的ARM好像已经降到了0.5美元 (可能是这个价格,记不清了),而最便宜的51可能是0.5RMB。但一些中档的ARM则要比高端的51单片机便宜了。十几或者几十RMB的ARM的性能 是同价格的51单片机无法比拟的。此外,由于51内核简单,一些高端的51增加的功能使得他们的51单片机操作起来变得异常复杂,而且不同厂家的操作完全 不同,这样就增加是使用的难度。综合看来,在高端或者中端应用方面,51单片机已经没有了任何优势,其市场主要是一些老产品或者不想学新东西的老工程师在 支撑,其消亡也是必然的。然而在低端应用方面,51仍然可以占有一席之地,除了操作和价格上的微弱优势,其更大的优势在于学习简单。.& && &从学习角度来讲,衡量是否学会一个MCU的标准应该是你写的程序你应该知道他是怎么执行的,应该具体到某一个指令所涉及到的寄存器,看到一个指令之后脑子里应 该是一串01运算才行,而不是可以简单的应用了。虽然现在很多公司推出的新产品都给出了固件库,可以使工程师更快的进行编程使用。但是,这样的结果是使更 多的硬件工程师变成纯软件工程师而已。你会对一个芯片编程,但你并不了解他。也许有人说,反正我能用了就行了,干嘛非要了解它呢。其实这样想就错了,要想 真正的用好一个芯片。不了解他是不行的,甚至不深入全面的了解都是不行的,一些硬件上的简单改动有可能使系统的性能发生很大的变化。因此要想设计一个比较 好的产品,必须对芯片本身有一个深入的了解。在这方面,51单片机由于内核简单,很容易上手并容易深入了解。学习起来比较简单。熟练掌握了51,再学习其 他的芯片,如ARM也是很简单的,因为所有的微控制器的功能结构框架都是一样的,了解了一种之后再学习另一种很简单。相比复杂的ARM结构,51结构就显 的很简单了,甚至可以认为,ARM是在51的结构上增加的许多功能模块构成的,虽然二者的结构并不真的相同。& && &前几天在论坛里 看到有人呼吁,别学51了,改学ARM吧。我觉得这样的人应该属于二者都没有学好的人,二者的区别和联系肯定不清楚才这样喊的,同时有过51和ARM学习 经验的人应该知道,学精了51再学ARM所用的时间只不过是看一遍芯片手册的时间(有些夸张),而直接以ARM作为MCU入门的话则要费很大的劲。对于一 个从来没有接触过单片机的人来说,面对复杂的ARM手册往往会感到无从下手。可以这样比喻一下,学ARM是一口气登上一座高山,而学51相当于到了半山 腰。在半山腰上的风景虽不及山顶,却仍可有所作为。而再从半山腰的高度上山,难度自然减小了。至于有人抱怨说找工作的时候没人要只会51的,我觉得应该这 样看这个问题,学51和学ARM并不存在冲突,了解了51只后当然可以再学ARM。& && &&&我觉得,即便将来51的应用没落了,学习51仍是一种不错的入门手段,就行学计算机的一直在学X86一样。我不反对直接选择ARM入门,但却反对那些不了解51就呼吁大家放弃51的人。作为电子产品的设计者,如何在种类繁多的MCU中选择自己合适的一款才是最重要的。& && &&&虽然不可否认51单片机越来越多的被高端产品,尤其是ARM所替代,但我仍觉得51单片机没有过时,学习51单片机也没有过时!经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。作者声明:本篇经验系本人依照真实经历原创,未经许可,谢绝转载。投票(65)已投票(65)有得(0)我有疑问(0)◆◆说说为什么给这篇经验投票吧!我为什么投票...你还可以输入500字◆◆只有签约作者及以上等级才可发有得&你还可以输入1000字◆◆如对这篇经验有疑问,可反馈给作者,经验作者会尽力为您解决!你还可以输入500字相关经验01000热门杂志第4期光棍:过节PK脱&光&220次分享第1期婚姻保鲜膜516次分享第1期这样的告白很浪漫795次分享第3期赶走你的抑郁839次分享第5期星座男女的爱恨347次分享◆请扫描分享到朋友圈0}{else}no-cache{/if}" />
51单片机应用中5个常见问题总结
本文就51单片机应用中一些常见问题作个总结,这都是我实际碰到过的,因为文章篇幅所限,这些问题远远不足以表达单片机的常见问题。希望对初学者有所帮助,文中不完善的地方务请指点。谢谢!
1:C51编译器如何区分位地址和字节地址
是靠预定义实现的,比如:sfr P0 = 0x80; sbit P0_0 = 0x80;前者声明了P0端口地址位于0x80,后者说明了P0端口的bit0,即P0.0位于位地址空间0x80处。这2个0x80具有完全不同的含义,靠关键字sfr和sbit来区别。这样当程序被编译时,编译器会依此编译成相应的汇编语言。例如:
C51语句: P0 = 1;
P0声明为sfr,因此编译成:mov 80h,01h,将把0x01数据送入0x80单元,由于0x80单元物理上对应P0端口,因此,P0.0脚将输出高电平(其实是呈现高阻态,P0口独有的),其他.1-.7脚输出低电平。
C51语句: P0_0 = 1;
P0_0声明为sbit,因此编译成:setb 80h,这将把位地址空间的0x80地址的bit的值置1。这个位正是P0口的bit0,执行后,P0.0将输出高阻态。而P0.1-.7不会变化。
2:C51为什么要嵌套汇编
51单片机一个显著优点就是指令执行时间固定,因此可以适应时序要求严格的场合。例如符合ISO7816协议的cpu卡的读写,对时序要求比较严格。其实就是用io脚做出来的同步半双工串口。支持cpu卡的程序一般比较庞大,需要用c51来组织,但是由于c编译的不确定性,必须把底层程序封装成汇编语言模块嵌入到工程中。这就带来几个问题:如何声明函数、参数如何传递等。限于篇幅,不能说得很细。下面举例:
汇编程序单独保存一个文件,加入到工程中,函数如下:
用c语言在.h文件中声明: extern unsigned char proc_a(unsigned char val);
调用时形如: retvalue = proc_a(0x11);
a:汇编程序如果带参数,则需要在汇编程序前多加一个下划线。而声明它的地方不用加(伟福编译器这么要求的)。
b:函数的形参中第一参数用R7传递,函数返回值用R7返回,这是C51的通用规范。其他参数都有相应规定。函数可以返回一个位,用psw的c位返回。c:上面的语句,执行顺序是把0x11给R7,然后跳转子程序,子程序将它加1后送回。
d:函数跳转到汇编程序时,本区的R0-R7,A,B,PSW,DPTR等寄存器可以供子程序使用,不必考虑调用后是否要恢复这些常规资源。上例中,A的值被函数使用了,编程者不必恢复调用前的值。
3:51单片机的P0口特殊之处
许多新手都碰到这个问题,其实很简单,这涉及到芯片的io脚是怎么做出来的。这对硬件工程师来说十分重要。TTL的io脚模型:
P1,P2,P3口都可以理解成左图,注意vcc下面有个电阻,因此可以理解成:引脚输出1的能力弱。地那边没有电阻,可以理解成引脚吸入电流能力强。而P0口,可以理解成右图。这就是集电极开路输出,也叫OC输出。可以看出,当CTR=1时,三极管导通,引脚被接地;当ctr=0时,三极管截止,引脚浮空,也叫三态。这个端口这么做的目的是考虑P0口肩负读写数据和地址复用,这个关系要仔细看懂cpu时序图。因此,P0口要加合适的上拉电阻,绝不要加下拉电阻。上拉电阻的选择要看外部负载情况。
4:P1-3口如何输入输出
从上节的左图可以看出。做输出时,ctr=1则输出强信号0,ctr=0则输出弱信号1。当io脚做输入时,应使ctr=0,这样三极管截止。外部信号如果是1,则上拉电阻加强了这个1,单片机就会读到1。当外部信号为0时,注意,必须将上拉电阻的上拉作用全部抵消,才能在引脚上得到0。
因此,对于程序来说,把io脚置1就处于接收状态,当然也是输出1状态。程序置io口为1,读取的信号是不是1就依靠外部电路了,如果外部电路没有&吃掉&上拉电阻的电流,则读取得到1,反之,虽然程序置io脚为1,但是读取得到的就是0。
因此,如果用io脚的高电平驱动外部电路时,要小心外部电路把这个1&吃掉&从而输出不了1。而作为输入时,为0电平的外设必须足够有能力将io脚拉低。所以,用io脚直接点亮led的时候,最好用反逻辑,就是输出0,让led亮。这样能保证驱动能力。就是io脚接led的负端,led的正端过电阻接vcc。
因此,io脚输出1时,外部电路将它强行接地是没有关系的,而io脚输出0的时候,外部电路强行接电源就会把io脚损坏。所以,程序加电之后,一般把所有io口都写成1:MOV P0,0FFH。
P3口引脚复用,必须引脚都处于输出1状态。例如,把RXD脚输出0,则它什么数据都读不进来了,笔者早期曾调试一整天才发现串口收不到数据是没有把RXD置1的原因,把时间都浪费在外围了,当时很是汗颜。
5:有关晶振
单片机的晶振在内部可以简化成一个反向器。当晶振输入脚XI刚过坎压、被认为是1的一瞬间,输出脚XO就输出0,这个0会带动晶振使XI电压下降,当降低到坎压被认为是0的一瞬间,输出脚XO就输出1。这样周而复始。
因此,用示波器观察正常工作的晶振输入脚XI时,得到的是一个不高不低的近似水平线。而XO则是幅值很大的正弦波。测量晶振输入脚XI时,示波器表笔要打在X10档上,否则,表笔就能把晶振弄停。
因此布线时,晶振输入脚XI要尽量靠近晶振,而XO脚可稍远。同时XO具有一定的驱动能力,某些芯片可以用它驱动其它时序电路(不推荐这么做,因为系统可靠性下降)。
写到这里,才发觉51单片机的问题太多了,这篇文字简直就是沧海一粟。
文章来源专栏
加载更多评论
后参与评论为什么同一个程序单片机能运行出不同的效果
[问题点数:50分]
为什么同一个程序单片机能运行出不同的效果
[问题点数:50分]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
匿名用户不能发表回复!|STC51的各种程序烧写下载失败原因总结【51单片机吧】_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:58,041贴子:
STC51的各种程序烧写下载失败原因总结收藏
STC51的各种程序烧写下载失败原因总结
开发宝为广大单片机编程电子工程师提供一个自由的网上交易平台,保障交易双方权益.单片机编程选择什么平台?开发宝-靠谱的电子产品研发众包平台.认准开发宝.
相信大家大都是玩STC51单片机入门的,但是很多人都在给STC51单片机下载程序时遇到过各种问题没能下载成功,这里我就总结一些别人走过和自己遇见过的失败原因自己解决方法,也希望贴吧里的大神能分享一下你们遇到过的下载失败的解决方法
接触51单片机已经一年多了,期间玩过的51单片机从AT89C2051到STC89C52,紧接着又接触过增强型内核的STC15系列和STC8系列(例如STC15F2K60S2,STC15W408S,IAPW413S,STC15W104,IAP15W4K58S4,STC8A8K64S4A12,STC8F2K60S2,STC8F2K16等等)。一年内玩过那么多的STC15单片机肯定没有学到什么皮毛,但是却遇到过非常多奇奇怪怪的单片机程序下载问题。对于一个刚入门的51新手来说,下载程序也可能出现各种各样的问题导致下载失败,于是学习的积极性也就没有了。STC串口下载程序失败的原因非常多,所以对于新手也很难马上排除问题所在,从目标文件到电脑通信到数据线到单片机本身以及单片机外围电路供电电路,每一个环节都有可能出现问题,但是每一个环节出现问题都会导致下载失败。
为了能让遇到这些问题的新手门能尽量快的解决遇到的下载问题,那这里我就汇总各种STC51单片机的程序无法下载程序的原因以及解决办法,方便大家更快入门。。
1.单片机焊反插反,接线错误,短路断路的硬件问题,晶振没能正常工作(如果使用外部晶振的),这些问题就不重点重复强调了。如果没有犯这些低级错误,那就请往下看吧。
2.没有冷启动,STC单片机的ISP在线下载是需要冷启动的,STC单片机的启动后运行的程序有ISP程序区以及用户程序区。如果需要通过ISP下载程序,那么单片机就要从ISP程序区启动,这样才能下载程序,对于STC51单片机下载程序的重新启动,按复位建是没有用的,必须冷启动。冷启动下载的具体操作是,先点击下载,然后给单片机彻底断电,然后再上电,此时单片机从ISP程序区启动,此时如果检测到串口有合法的ISP下载命令就会开始下载程序,如果在适当的时间里没有合法的下载命令那么单片机就会转到用户程序区启动。
3.单片机型号是否选对了,在群里面见过几个下载失败的原因都是单片机型号选错,最常见的就是没有区分”STC89C52”和”STC89C52RC”的区别,其实这是两个不同的型号,但是有些人以为这两个芯片型号是一样的,就导致芯片型号选错导致下载失败
4.驱动没有安装好或者没有选对串口号,这类问题一般都会导致下载软件提示找不到串口或者打开串口失败,解决方法就是安装对应的USB转串口芯片的驱动,然后打开设备管理器查看要打开的对应的串口号,在下载软件中选中对应的串口号就可以了。
我说几个,没插晶振,单片机插反,单片机型号没选对,下载程序时没冷启。tx,rx线反了,串口死机,烧录程序死机,下载器损坏,电源电压不对,板子上有电容也容易造成失败,板子上有9110等芯片偶尔也会失败,其他楼下补充。
5.USB数据线问题,如果用到数据线连接单片机到电脑,那么有可能把USB电源线当数据线使用,也有可能因为使用的数据线接触不良导致连接失败,还有可能是使用的数据线有好几米长,那么就有可能因为线太长导致容易受干扰,因而导致数据传输失败。
6.接线问题,串口接线的正确接法是,USB转串口的RX接单片机的TX,USB转串口的TX接单片机的RX,以及USB转串口的地要和单片机的电源地(负极)相通,不然无法传输串口信息。此外与数据线一样,如果串口线接错或者接触不良等问题也有可能导致下载失败,串口线过长也有可能导致数据传输失败。
7.波特率过高导致数据传输失败,当在下载软件中设置波特率过高就有可能导致数据传输失败,因为波特率过高导致数据传输失败的原因有可能是波特率高容易受干扰也有可能是因为USB转串口芯片接受不了波特率过高导致失败。个人用过的USB转串口芯片有PL2303以及CH340,这两个USB转串口芯片对比的话,会发现传输数据几乎不出现误码的情况下,CH340的最大波特率要比PL2303高。所以波特率过高也有可能失败,如果拿不准的话,保守一点可以设置为9600或者4800.
8.芯片问题,以前入门时打算做个小项目,后来想节省成本,使用的是翻新的芯片,结果经过很多次尝试都无法下载程序,后来也就放置了一段时间,再经过测试才发现了问题,翻新的芯片里面有几片是坏的,所以建议还是使用可靠的芯片才能避免问题。如果经过多次尝试都没能解决问题那就要考虑换芯片测试了
11.不懂是电脑原因还是软件原因,当电脑USB同时连接两个CH340的时候,那么下载程序时不论选中两个中的哪一个串口号都无法检测到芯片,奇怪的是当拔掉其中一个CH340的USB转串口电路时就一切正常了,但是我记得很久之前这个是可以正常操作的,至于后来为什么不行了就是一个未解之谜了,这个问题是最近才发现的。
12.增强型单片机不能正常内部复位的问题,很多人都知道下载前要冷启动复位,也就是把单片机的供电断掉再接上就解决了,并不需要管串口线,但是以前的一个项目中是使用的是STC产的IAP15W413S单片机,原本可以正常下载程序,但是一次测试中把单片机的掉电模式打开以及外围电路供电关闭后就不能下载程序了,经过排查,最终通过把串口线断掉经过彻底断电之后就可以正常下载程序了。经过分析,个人觉得是因为串口线的微弱电流通过内部IO的保护二级管给单片机继续供电,此时单片机又把整体的功耗降到最低,微弱的电流已经可以维持单片机继续工作,于是就导致了无法正常复位使得程序下载失败。
13.还有一个问题是我见过的最难排查的问题了,由于很多新的增强型单片机最小系统都是个人自己焊接电路自己搭建的,在搭建一个IAP15W4K58S4的最小系统的时候,在焊接完电路之后下载程序发现可以检测到单片机,但是一直都是开始下载后就停留在调节频率的过程中,最终因为调节频率失败导致最终无法下载程序,理论上能检测到单片机没有理由是电脑还有软件的问题,数据连接到USB转串口电路肯定也没有问题,但是就怎么也找不到问题,虽然已经直接排除了通信的问题但是还是把上面说过的各种问题都考虑或者检查了一遍,都没有能解决问题,驱动没有问题,接线没有问题,甚至可以用来下载别的单片机,问题应该在单片机以及其外围电路的问题,后来继续查找问题,最终经过用万用表测量发现单片机的供电电压只有三点几V,虽然查数据手册这个型号的单片机供电2.5~5.5V是范围内的,但是我设计的电路预期供电电压是5V,实际只有三点几V,后来才发现是自己设计的断电电路不合理导致的供电不足问题,经过重新设计焊接,解决问题,最终一次就通过下载,忙活了一两天才发现的问题终于解决了,之前怎么也没有想到会是供电的问题,不过令我好奇的是数据手册写了2.5~5.5供电的,按理说三点几V也应该不会出问题的,这里就不是我要深入了解的地方了,现在写出来分享一下
好了,玩了那么久的单片机也总共就遇到过那么多问题了,希望大家也分享以下你们遇到过的奇怪的问题
哪里有那么多下载失败的原因啊,总体来讲就1个字,不认真。买1送2
我来说一个单片机内部51内核被掏空,所以下载失败
登录百度帐号

我要回帖

更多关于 怎样学习单片机编程 的文章

 

随机推荐