初学51单片机或是业余玩玩单片机开发,每次总要不断的调试程序,如没有仿真器又不喜欢用软件仿真,那只有每次把编译好的程序烧录到芯片上,然后在应用电路或实验板上观察程序运行的结果,对于一些小程序这样的做好也可以很快找到程序上的错误,但是程序大了,变量也会变的很多,而直接烧片就很难看到这些变量的值了,在修改程序时还要不断的烧片实验,确实很麻烦,这时如果有一台仿真器就会变得很好方便了。但一台好的仿真器对于业余爱好者来说确实有一些贵,在这里介绍这种易于自制的51芯片仿真器虽然有一些地方不够完善,但还是非常适于初学51单片机的朋友和经济能力不是很好的业余爱好者。
这个仿真器的仿真CPU是使用SST公司的SST89C58或SST89C54(其它相容的芯片也可,这里主要讲述SST89C58),对于没有可以烧写SST89C58芯片的朋友应该选用CA版本的SST89C58芯片,这个CA型号的芯片出厂时已内置了BSL1.1E的固件程序。那什么是BSL呢?BSL就是英文BOOT-Strap Loader,意思就是可引导装载,形象来说就像电脑用DOS起动盘起动后可以装载应用程序并运行。只不过SST89C58是用串口来输入程序资料的。为了能把编译好的单片机程序HEX或BIN文件下载到SST89C58芯片上,SST公司还提供了一种叫EasyIAP的软件,IAP为In-Application Programming,有了这个软件就可以把SST89C54变为在线下载的实验器。在这里不详述EasyIAP的使用,只讲述如何利用它去把SST89C58升级为带SoftICE固件程序的51仿真器。
下图是可以用于制作SST89C58/54仿真器、S51系列下载器的电路。
印制板如下
做好以上所说的电路后,那么就可以把仿真CPU的HEX文件烧到SST89C58里面,再把它插到上面的电路中就可以了。因为SST89C58有两个程序存储区,在这里要注意的是在烧写时就把仿真监控程序烧到SST89C58的第二个存储区也就是的RB1。烧写时要求用支持SST89C58的编程器,在这里要注意的是如果你要烧写BSL固件程序做IAP在线下载器是不要对加密位SB1-3进行加密,并设存储位为RB1,否则无法用IAP功能。各编程器的设置不一样具体参看编程口的说明书。
关键字:SST89C58 自制
引用地址:
用SST89C58自制51仿真器
推荐阅读最新更新时间:2024-11-10 17:47
至少不比官方设计丑 肠粉自制HTC Nexus渲染图
今年HTC代工Nexus手机应该是没跑了,网上关于HTC Nexus手机的消息也越来越多。前段时间,外媒刚刚放出了一组HTC Nexus的渲染图,现在又有更多渲染图流出,但这些是出自国外Reddit论坛一名用户之手,乃是真爱粉之作。
整体而言,这名网友自制的HTC Nexus手机跟之前曝光的渲染图设计风格一致,在黑色的基础上又制作了灰、红、白三个版本。在这名网友手中,HTC Nexus手机造型圆润,正面无实体按键和logo,背部大胆地采用了撞色设计,黑灰、黑红、黑白搭配的后壳十分个性。
除了外观,我们了解到,HTC将代工两款Nexus手机,分别代号Sailfish和Marlin,其中此次曝光的S
[手机便携]
自制51/avr单片机USB ISP 下载线
如今呢是使用笔记本的人越来越多了,可是呢买了笔记本对于学习很多单片机比如说51或者avr就不方便了。因为大多数电脑都不带串并口了。但是呢新出的笔记本上的USB接口是足够用的。因而都想用USB转了串口或者并口就能方便单片机学习开发时的ISP编程或者JTAG仿真了。其实很多单片机开发商和销售商都早就有了USBisp的配套软件和硬件了的,只不过都比较昂贵,而且技术资料多是保密的,对于自己小本学习单片机的人而言不免都希望能与价廉物美的USBISP烧写器,而且也多想自己动手做一个了。 网上公开的比较流行的支持51和AVR的烧写器是用ATMEL公司的MAGE8单片机做的,其机理也就是通过软件编程的方式将USB接口信号转换为并口信号以
[单片机]
Facebook或让明星率先试用自制聊天机器人
马克·扎克伯格暗示,你将能够与名人机器人在Messenger上聊天。 很快你就可以和你最喜欢的电影明星、政治家或其他大名人在Facebook Messenger上聊天了。或者至少,你也许可以和这些名人的“聊天机器人”进行交谈。 聊天机器人可以回答人类向他们提出的问题,可以处理某些任务,如预订晚餐。 当Facebook 在今年月初开始推出创建智能聊天机器人的新工具时,该公司就开始专注于如何彻底改变商业沟通的方式。 您可以在Facebook聊天应用中使用机器人订购鲜花,检查航班状态,或获取天气信息。 在Facebook公布第一季度财报电话会议上,扎克伯格推出了一项去从未提及过的用例:让公众人物利用通讯机器人的
[机器人]
STM8 如何自制BootLoader并实现在线升级
博主这里编写STM8代码使用的MCU是STM8S003F3,开发环境为IAR BootLoader升级数据从哪里来? 要实现在线升级就必须要有数据端口去接收新的升级文件的数据,本博文以串口为数据接收端口接收数据。关于串口部分代码如下: 我们在IAR的安装目录STM8\config(我的就是D:\IAR Systems\Embedded Workbench 7.3\stm8\config)下面找到lnkstm8s003f3.icf,然后将其复制到BootLoader工程目录下,以文本方式打开该链接文件, 对于APP应用程序需要将其中的NearFuncCode、FarFuncCode和HugeFuncCode的起始地址均从0x8
[单片机]
使用ATtiny85自制USB Rubber Ducky(橡皮鸭)
USB Rubber Ducky或Bad USB是一种著名的攻击工具,它看起来像U盘,但是插入任何未锁定的设备时就像键盘一样。 USB Rubber Ducky允许攻击者对USB设备中的微控制器进行编程以执行各种任务。可以对其进行编程,将击键和二进制文件注入系统,获取缓存的密码来入侵系统,窃取受害者的凭据数据,并可以向受害者的系统注入rubber ducky payload。 USB Rubber Ducky的最重要功能是,它充当HID设备,因此任何防病毒或系统防火墙都无法检测到它。 USB Rubber Ducky并非在每个国家都容易获得,而且价格也非常昂贵。因此,在本篇文章中,我们将使用ATtiny85单片机来制造一个Di
[单片机]
自制BMS监控仪通过485通讯读BMS信息并显示在LCD2004上
公司是做锂电池管理系统的,主要是通信用16串锂电池用的保护板(BMS),产品有485接口,可以上传各种测量和告警信息。最近开始学习单片机,自己动手做了一个BMS监控仪,通过485与自家的BMS通讯获取状态信息并显示在LCD2004上。 程序也是自己弄了好久才排除各种bug,现在具备了基本状态信息显示、菜单、16串单体电压显示、各温度显示、BMS状态显示、基本告警信息显示。 这个小产品使用STC89C54RD+,MAX485芯,使用5V升压锂电池供电,在外壳上留出了USB充电接口。 电路原图是自己搞了一个,然后同事帮我画的PCB。制作比较废劲,尤其是壳子不好切割,还把手割伤了。。。 因为工作比较忙,从头到尾断断续续搞了一个来月终于算
[单片机]