89c51,对于硬件工程师来说,已经是熟得不能再熟了,甚至很多资深硬件工程师已经非常讨厌这种芯片了。事实不然,我们每一个学硬件的从接触硬件的第一天开始,这个名字就深深地烙在心底,虽然他们后来大部分都转向ARM或者其他专业的芯片开发,但是,我不能不说正是89c51将我们带上硬件之路。
关于at89c51的资料很多,我就不啰嗦了,这里只挑重点说,毕竟我不需要对大家的考试负责,呵呵呵。
1、at89c51是一款很适合初学者入门硬件的芯片,标准的硬件结构,我们可以用它完成很多硬件项目,尽管它的速度是慢点,但是在实际应用中,有些项目对速度要求并不是那么高,就像文秘处理一篇文档并不需要i7一样。
2、纯正的c51编程语言可以很方便的让我们软件工程师轻松上手。c51指令简单,容易理解,稍微懂一些c语言的工程师基本上都可以上手。如果有一些汇编基础,也可以轻松编写89c51的汇编代码。
3、开发工具使用方便。89c51的开发工具非常多,我们经常用的就是keil,大家可以装一个,这个开发工具界面简洁,操作简单,调试方便。强烈建议大家用这个工具开发89c51。
4、仿真容易。搞硬件的都知道,如果能够仿真的话,在调试的时候就方便多了。老一代的软件工程师都知道,在上一个世纪末,调试软件程序可没有现在这种IDE里面的跟踪调试功能这么方便,那时候,他们都是在要debug的地方嵌入一句printf,让程序运行一遍,然后将结果打印出来,非常不方便。那现在硬件调试的一种方式也是这样,就是在开发板上弄个小灯,或者接上逻辑分析仪,看看程序运行结果。这种方式虽然仍然受老硬件工程师钟爱,但是新一代的硬件工程师已经都不太爱用这种方式,他们习惯高级的开发工具和仿真器,干起活来也非常高效。我也强烈建议大家能使用仿真器辅助调试的尽量使用,但是并不是所有的芯片都有仿真器,对于没有仿真器,我们仍然需要采用古老的方法进行打印调试。
5、一条建议,建议大家在进行开发之前,一定要抽点时间看看芯片手册,了解芯片的资源,了解最小系统的结构,强烈建议大家先在proteus上跑一遍,然后再去搭实际电路。
另外,有一点大家要注意,at89c51芯片有好多种样式,如果在面包板上用,一定要用直插的,就是芯片的脚很长,弯曲与芯片成90度,而且芯片很大。还有一种是贴片的,这种的芯片脚很短,且和芯片成水平方向弯曲,芯片也相对较小。此外,芯片有24脚和40脚的,功能基本差不多,只是端口少一些而已,价格也差不多,大概3~5元左右。除了老外生产的89c51芯片,我们国产的stc系列的芯片功能完全兼容at89c51,而且速度还比它快,大家也可以选择。
接下来,我会穿插结合proteus和面包板以及某些开发板给大家介绍at89c51的软件开发,欢迎大家阅读,谢谢大家!

【软件工程师学硬件】之 At89c51相关推荐

  1. 【软件工程师学硬件】之 PCB

    PCB?软件工程师肯定不知道.但是你说电路板见过吗?他还是见过的.那PCB就是电路板,说这个硬件工程师不同意了,说这两个可不是一个意思,是的,你说其他的意思人家不明白,说到电路板就明白了.既然是由兴趣 ...

  2. 【软件工程师学硬件】之 开关电源(5)—— 再谈Viper12a

    因为我这个系列主要针对软件工程师和硬件入门者,所以不免要重复和啰嗦几句.大家都看见过三极管,也看见过集成块,也就是我们经常说的芯片,别看有的集成块表面上和三极管长得像,实际上可不是一个量级的玩意,就这 ...

  3. 【软件工程师学硬件】之 时钟

    软件工程师写程序不会去考虑时钟,除非是涉及到性能要求时,才会去看一看.硬件工程师则不然,他们对时间要求很苛刻,单片机的时钟频率,是他们关心的一个重要指标,4M.8M.12M.48M.72M.200M. ...

  4. 【软件工程师学硬件】之 开发板

    硬件工程师口中总是离不掉那么几个词,其中开发板是频率比较高的.实际上这个开发板就相当于软件中demo程序,一般做软件项目的时候,软件工程师总是喜欢在网上东找西找,找个类似的项目源代码,down下来研究 ...

  5. 【软件工程师学硬件】之 仿真

    大多数软件工程师对仿真没有概念,因为软件里没有仿真的说法,但是软件开发里原型的说法,这个原型就有些类似于仿真. 仿真,顾名思义,就是乱真,和真的差不多.这只是个说法,要是假的都能成为真的,就不需要真的 ...

  6. 【软件工程师学硬件】之 通信

    提到通信,软件工程师并不陌生,但他们更多的是指网络通信,尤其是指socket.你要是和软件工程师说什么串口.SPI.I2C.Modbus.CAN等等什么的,他们也会莫名其妙.俗话说,"隔行如 ...

  7. 【软件工程师学硬件】之 继电器

    大多数软件工程师都知道继电器,因为中学物理书里就提到过.实际上继电器就类似与我们之前所说的三极管,有两个回路,一个回路是小电流.低电压,一个回路是大电流.高电压.当三极管在开关状态时,就和继电器的作用 ...

  8. 软件工程师学硬件-怎么看原理图之协议类接口UART

    其中TXD0的引脚接到了电平转换芯片MAX3232SOP这个电平转换芯片,TXD0出来经过电平转换芯片到了RSTXD0.然后RSTXD0接到串口座.串口座与电脑的串口引脚相连.同理,3号引脚RSD0经 ...

  9. 【软件工程师学硬件】之 振荡器(2)

    振荡器的工作原理很简单,大家在初中物理都学过单摆,就是一根悬挂着的绳子系着一个铁球,然后推一下铁球,铁球就摆动起来,但是摆动不了几下,就会渐渐停下来,什么原因?空气的阻力将能量渐渐消耗尽了,球就停止摆 ...

最新文章

  1. quick-cocos2d-x教程12:实现文本和password输入界面
  2. Hive的union和join操作
  3. 37 反转一个3位整数
  4. oracle timestamp比较大小_ORACLE包和过程依赖关系测试
  5. linux监测node进程,通过node_exporter监控linux服务器一
  6. RotateDrawable
  7. 垃圾收集与对象生命拯救(读书笔记)
  8. 01、(一)关于app开发的准备工作和环境的搭建
  9. win10无法装载iso文件_教你用win10自带虚拟光驱打开iso镜像文件的方法
  10. 微软ASP.NET AJAX框架剖析(1)
  11. spring5教程(一)——Overview
  12. 女生学计算机专业用考研吗,计算机专业女生考研,该选什么方向比较好?谢谢!...
  13. 「短篇小说」灵囚 540 天
  14. 微软造的还原精灵EWF(Enhanced Write Filter)
  15. Linux常用命令指南
  16. Vue中$refs 使用详解
  17. 【台大郭彦甫】Matlab入门教程超详细学习笔记七:数值微积分(附PPT链接)
  18. 【数据结构】单链表(增、删、查、改)的实现 [初阶篇_ 复习专用]
  19. 《你好,数智新世界》系列访谈 对话数睿数据总裁刘超|企业级无代码赋能软件产业变革...
  20. 使用 TDengine 快速搭建车联网平台

热门文章

  1. 【算法专题】重建二叉树
  2. Ubuntu安装matlab2018a
  3. uniapp自动更新
  4. LVM逻辑卷、卷组的新建及调整
  5. IAST技术进阶系列(三):高并发高可用场景支持
  6. 牛客网基础知识强化巩固-周结04
  7. 基于muduo的集群聊天服务器
  8. opencv的imread函数
  9. 正大国际期货:做期货交易,基本面分析和技术分析哪个靠谱重要呢
  10. 海外支付(全球支付)各地区常见的支付方式介绍