单片机刀片机

刀片机  时间:2021-03-28  阅读:()
51单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com151单片机新手入门实例详解伟纳电子www.
willar.
com前言:本文已发表在《电子制作》2006年第一期,本文也同样适用于伟纳其他开发系统如最新推出的ME500单片机综合开发系统等.
相关最新资料和技术支持请浏览官方网站:http://www.
willar.
com(伟纳电子网)http://www.
mcusj.
com(伟纳单片机世界)本刊2005年第11期上介绍了一款集成有实验、编程、仿真、ISP下载多种功能的51/AVR单片机学习开发系统ME300B,引起很多读者的关注.
本文以一个LED流水灯程序为例子,教您一步一步的学习如何利用KeilC51软件编写源程序,编译成Hex文件、在Keil集成仿真调试环境中利用ME300开发板的仿真功能进行硬件仿真调试的整个过程.
最后介绍如何在ME300开发板上将编译成功的HEX文件烧写到单片机进行演示.
对于从未接触过单片机的初学者,只需具备一套ME300B单片机学习开发系统和一台电脑,再按本文介绍的步骤操作,可很快的编写出自己的第一个单片机程序,并通过ME300B开发系统看到程序的实际运行结果.
如果你没有ME300B开发系统,也可以通过此文了解单片机开发的整个过程,你将发现单片机并没有想像中那么高深莫测!
1.
硬件和软件准备z实验系统:ME300B单片机学习开发系统一套,下图所示为ME300B主机z电脑:具有标准串口的台式机或笔记本电脑,如果没有串口也可购买一条USB转串口线代替z工具软件:KeilC51(用于编写和编译源程序、仿真调试);ME300V3.
1(ME300的编程控制软件);这两个软件在ME300B产品配套光盘上有.
51单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com2.
安装软件安装:ME300软件能在Windows98/Me/2000/XP/2003下运行,点击光盘"ME300B"目录下的"ME300setup.
exe",按照提示完成安装!
对于免安装版如V3.
1版可直接将相关文件复制到硬盘的任一目录下,运行ME300_V3.
1.
exe即可.
Keil软件的安装:此软件在ME300B光盘的tools文件夹下,点击setup目录下的setup.
exe按照提示完成安装.
硬件安装:z用随机串口通讯电缆连接电脑任一串口和ME300B串口;zUSB取电线大头端接电脑任一USB端口,圆孔端连接到ME300B的DC插座上(此连接线仅用于取得5V工作电源,如果使用外接电源适配器,请保证电源输出电压为DC5V±0.
5V,电流>500mA,中间为正极);z将电源开关"SW1"压下处于"ON"位置,红色电源灯(PWR)应点亮,表明硬件已安装完成;z将"SW2"开关按下处于"编程"位置;251单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com3z运行ME300程序,软件正常打开主界面,表明ME300B已安装就绪,可以正常工作了.
如果不能连机,请检查串口线是否连接良好;检查"SW2"开关是否按下处于"编程"位置,检查是否有其他软件占用了串口(如keil调试软件等),将其关闭,然后重新联机!
对于使用USB转串口线的用户,一定要正确安装此转接线的驱动程序.
必要情况下可以在另外一台电脑上测试,以验证电脑的串口工作正常.
3.
源程序编写和编译ME300B上的8个发光二极管负极通过限流电阻接入单片机的P0.
0-P0.
7端口,正极通过JP2跳线接5V电源正极(切记将ME300B上的JP2跳线短接到3-4端,否则发光二极管将失去供电),本文的范例程序可以使这8个发光二极管轮流点亮,形成流水灯效果.
我们使用的开发工具是KeilC51,是目前世界上最优秀、最强大的51单片机开发应用平台之一,它集编辑、编译、仿真调试于一体,支持汇编、C语言以及混合编程.
同时具备功能强大的软件仿真和硬件仿真功能.
下面以一个简单的流水灯程序为例子来介绍KeilC51的使用方法:3.
1首先在硬盘上建立一个文件夹,命名为ledtest(当然可以是其它名字),为方便程序的编写和调试,我们将调试过程中产生的文件都将放在这个目录中.
3.
2启动keil软件,点击菜单project,选择newproject,然后选择你要保存的路径,输入工程文件的名字,我们现在保存到刚才建立的ledtest目录中,工程文件命名为ledtest,然后点击保存.
3.
3这时会弹出下面的对话框SelectDeviceforTarget,要求你为刚才的项目选择一个CPU.
本例中我们选择Atmel的89S52,如图所示,选择89S52之后,右边一栏是对这个单片机的基本的说明,然后点击确定.
51单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com43.
4弹出如下对话框,是否添加标准的启动代码到你的项目,我们这里不理会它,点击否!
3.
5新建一个源程序文件,点击菜单File->New,在text1框输入一个简单的程序,如下:51单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com完整程序代码如下:ORG0000HLJMPMAINMAIN:MOVP0,#0FEH;初始点亮LED1MOVR7,#0FEH;保存P0MAIN_LP:LCALLDELAY;延时MOVA,R7;RLA;循环移位MOVR7,A;保存了R7MOVP0,A;点亮下一个LEDJMPMAIN_LP;不停循环DELAY:;延时子程序MOVR0,#0FFHMOVR1,#0FFHDLY_LP:551单片机新手入门实例详解www.
willar.
comwww.
mcusj.
comNOPNOPDJNZR0,DLY_LPMOVR0,#0FFHDJNZR1,DLY_LPRETEND3.
6选择菜单File->SAVE,选择你要保存的路径,在文件名里输入文件名,注意一定要输入扩展名,我们这里是要存储一个汇编源程序文件,所以输入.
asm扩展名,保存为ledtest.
asm文件.
3.
7点击Target1前面的+号,展开里面的内容sourceGroup1:3.
8在SoureceGroup1上点击鼠标右键,将弹出一个菜单,选择AddFilestoGuoup"SourceGroup1".
651单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com3.
9选择刚才保存的文件ledtest.
asm,文件类型选择asmsourcefile,因为我们的是汇编程序,所以选择该类型.
最后点击Add按钮,添加完毕此时再点击Close关闭该窗口.
3.
10这时在sourcegroup1里就加入了ledtest.
asm文件,如图:751单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com3.
11在工具条中点击"OptionsforTarget"按钮,下图箭头所示:这时会弹出"OptionsforTarget'Target1'"对话框,851单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com"Xtal":定义CPU时钟,我们的开发板上标配的晶振是11.
0592M的,在"Xtal"后边框中填入"11.
0592".
下面依次是编译的存储模式,程序空间大小等设置,均使用默认值即可.
点击Output选项,选中"CreateHexFile"(必须选中此项,否则不能生成HEX目标文件),下图:3.
12点击工具条中的"buildtarget"开始编译源程序,看状态栏,若是:creatinghexfilefrom"ledtest".
.
.
"ledtest"-0Error(s),0Warning(s).
恭喜你成功了,看看你的文件夹吧,是否多了个ledtest.
hex文件.
951单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com源程序编译成功后,接下来就是进行程序的实际验证.
可用以下两种方式,均可在ME300B上看到实际的流水灯效果:A.
利用ME300B开发系统配合仿真模块,在KeilC51集成开发环境下仿真调试(见第4节).
B.
利用ME300的编程功能将编译好的文件"ledtest.
hex"烧写到单片机进行演示验证(见第5节).
说明:对于新手,方法A稍难,可以先用方法B演示程序!
4.
仿真调试单片机仿真器是在产品开发阶段用来替代单片机进行软硬件调试的非常有用的开发工具.
使用单片机仿真器可以对单片机程序进行单步、断点、全速等手段的调试,在集成开发环境中检查程序运行中单片机RAM、寄存器内容的变化,观察程序的运行情况.
与此1051单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com同时可以对硬件电路进行实时的调试.
使用单片机仿真器可以迅速发现和排除程序中的错误,从而大大缩短单片机开发的周期.
ME300B配合配套的仿真模块芯片,可以仿真绝大部分的51系列单片机,仿真程序空间63K,不但可以仿真系统内部的硬件资源,还能通过仿真接口连接随机配送的仿真头仿真外部目标板,将ME300B当作一台独立的仿真器来使用.
ME300B的仿真功能既满足学习的要求,也适合开发一般的51单片机产品的需求!
因此一般用户不需要另外购买昂贵的专业仿真器!
我们还是以前面的流水灯程序为例子,学习一下如何仿真ME300B上的硬件资源.
熟悉了在keil环境下的硬件仿真的基本方法后,就可以举一反三,通过外扩端口和40pin仿真适配头对其他目标板进行在线仿真调试!
4.
1连接好硬件,将ME300仿真模块芯片以底边对齐锁紧座手柄方向放入锁紧座压紧.
将SW2开关切换到"仿真"位置,开启ME300B电源.
关闭ME300B软件以及其他可能占用计算机串口的软件如"串口调试软件",如果不关闭这些软件仿真器将不能与keil软件正常通讯.
4.
2启动keil软件,打开我们已建立好的工程文件4.
3在菜单"Project"下面点击"OptionsforTarget'Target1'";1151单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com4.
4在弹出的选项窗口中选择"Dubug"页,选择Use:KeilMonitor-51Driver,选中LoadApplicationatStartup.
其他选项为默认值即可.
点击"KeilMonitor-51Driver"右边的"Settings"按钮,将弹出如下所示的设置对话框.
其中Prot项用于选择ME300B所连接的串口,请根据实际连接的COM端口选择,如果设置错误将不能联机.
设置波特率为38400,其他可默认.
1251单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com回到Project-OptionsforTarget,按确认按钮,完成设置.
4.
5开始仿真调试,先按一下ME300B上的复位按钮,确保ME300B复位,点击菜单"Debug"下的"Start/StopDebugSession"即可开始仿真调试.
当连机正确后,在uVision的OutputWindow将显示出被仿真文件的文件名和仿真器的内部监控软件版本,ConnectedtoMonitor-51Vx.
x,此时我们已经进入了KEIL的硬件仿真调试环境,下图所示!
1351单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com点击工具条上的Run按钮,程序开始全速运行,此时可以看到8个绿色的指示灯轮流被点亮.
如果在全速运行时你想退出debug环境,请按压一下ME300B上的复位按钮,再点击keil工具条中的"start/stopdebugsession"按钮就可以顺利退出了.
否则keil将要等待比较久的超时退出,表现为报告无法联机.
注意事项:由于仿真调试通常要与目标电路板连接工作.
如果使用不当容易造成仿真芯片的人为损坏,或者缩短仿真器的使用寿命.
在使用仿真器的过程中有如下注意事项:1451单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com请勿在仿真器与计算机通讯过程中强行拔掉联机电缆,这样可能导致仿真器监控芯片中监控程序的破坏!
正确的做法是先按下仿真器主板上的复位按钮复位仿真器,然后再断开联机电缆.
请勿带电拔插仿真电缆,这样可能导致监控芯片的损坏!
5.
芯片烧写和程序验证我们已经完成了程序编写和仿真调试,最后一步是将程序烧写进单片机的程序存储区进行实际验证!
退出keil软件,关闭ME300B电源,取下锁紧座上仿真模块芯片后换上一片单片机芯片AT89S51(也可以是AT89S52)芯片,注意芯片底边对齐手柄.
打开ME300B的"SW1"电源开关,将SW2开关切换到"编程"位置(SW2开关按下).
启动ME300软件,正常情况下软件主界面打开,否则会弹出对话框提示"未检测到编程器",请仔细检查硬件连接是否可靠,SW2是否处于"编程"位置,然后重试.
连机正常后,点击菜单"器件"->"选择器件",弹出选择器件对话框,根据实际使用的芯片型号选择AT89S51或AT89S52加载前面编译好的ledtest.
hex文件:点击菜单"文件"->"打开文件",弹出如下文件选择对话框,按默认点击"确定"1551单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com点击左边的编程按钮开始写入程序,如果芯片不是空的,先要点击擦除按钮擦除一次然后再编程.
下图为程序写入过程:编程完毕,可以看到ME300B上的8个发光二极管轮流点亮了.
如果程序写入后并没有看到上面的结果,可能是程序并未正确烧入.
可以点击"校验按钮"以检验程序写入是否正确.
一般问题是芯片在写入前非空,没有进行擦除就再次写入新的程序,这样会造成写入失败.
另外如果芯片损坏也会造成无法写入新的程序,可换一片芯片测试.
1651单片机新手入门实例详解www.
willar.
comwww.
mcusj.
com17如果程序写入后校验也通过,但仍然看不到LED轮流点亮,请检查你的硬件设置是否正确.
对于ME300B:JP2上的跳线必须短接在3-4端,JP1跳线必须短接.
至此,我们已经完成了单片机开发的整个过程.
ME300B由于具有实验板,编程器,仿真器和ISP下载线多种功能,使用中无需拔插电缆和切换芯片,功能强大且使用方便,用户只需配备一台电脑而无需添置其他设备即可进行单片机学习和开发.
ME300B具有较丰富的实验资源和硬件接口,如流水灯,数码管,16*2字符型液晶,128*64图形液晶,继电器,红外遥控,A/D转换,蜂鸣器,矩阵键盘,独立键盘,温度采样,实时时钟,串口通讯,SPI/I2C接口实验,光盘上都配有相关的实验例程,掌握了这些器件的编程思路和方法,你也就基本掌握了51系列单片机.
另外,ME300BV1.
5或以上版本硬件的复位电路兼容AVR单片机,软件也升级支持了AVR系列单片机如AT90S8515,Atmega8515,Atmega8515L等,用户可以同时用来学习和开发AVR单片机.

2021年国内/国外便宜VPS主机/云服务器商家推荐整理

2021年各大云服务商竞争尤为激烈,因为云服务商家的竞争我们可以选择更加便宜的VPS或云服务器,这样成本更低,选择空间更大。但是,如果我们是建站用途或者是稳定项目的,不要太过于追求便宜VPS或便宜云服务器,更需要追求稳定和服务。不同的商家有不同的特点,而且任何商家和线路不可能一直稳定,我们需要做的就是定期观察和数据定期备份。下面,请跟云服务器网(yuntue.com)小编来看一下2021年国内/国...

DogYun香港BGP月付14.4元主机简单测试

前些天赵容分享过DogYun(狗云)香港BGP线路AMD 5950X经典低价云服务器的信息(点击查看),刚好账户还有点余额够开个最低配,所以手贱尝试下,这些贴上简单测试信息,方便大家参考。官方网站:www.dogyun.com主机配置我搞的是最低款优惠后14.4元/月的,配置单核,512MB内存,10GB硬盘,300GB/50Mbps月流量。基本信息DogYun的VPS主机管理集成在会员中心,包括...

美国VPS 美国高防VPS 香港VPS 日本VPS 首月9元 百纵科技

百纵科技湖南百纵科技有限公司是一家具有ISP ICP 电信增值许可证的正规公司,多年不断转型探索现已颇具规模,公司成立于2009年 通过多年经营积累目前已独具一格,公司主要经营香港服务器,香港站群服务器,美国高防服务器,美国站群服务器,云服务器,母机租用托管!美国CN2云服务器,美国VPS,美国高防云主机,美国独立服务器,美国站群服务器,美国母机。美国原生IP支持大批量订货 合作 适用电商 亚马逊...

刀片机为你推荐
国家网络安全部国家网络安全sonicchatwe chat和微信区别咏春大师被ko大师:咏春是不会败的 教练:能不偷袭吗,咏春拳教练梦之队官网梦之队是哪个国家的?www.983mm.com哪有mm图片?你懂得百度关键词分析关键词怎么分析?百度指数词什么是百度指数avtt4.comwww.51kao4.com为什么进不去啊?partnersonline我家Internet Explorer为什么开不起来广告法有那些广告法?还有广告那些广告词?
华为云服务 优key 名片模板psd 地址大全 个人域名 免空 gspeed 怎样建立邮箱 北京双线 国外视频网站有哪些 cloudlink 空间首页登陆 沈阳主机托管 独立主机 贵阳电信测速 群英网络 腾讯数据库 创速 hostease 香港博客 更多