欢迎来到天天文库
浏览记录
ID:46884727
大小:137.50 KB
页数:5页
时间:2019-11-28
《单片机实验源程序_电子电路_工程科技_专业资料》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、M2J51单片机实验源程序仅供参考。没有最好,只有更好!希望大家设计出更好的程序来。软件实验一求一组数据的最大(小)值"软件实验的目的:熟悉单片机常用的基本程序(算法),调试吋观察变量(含数组)值的变化,从而理解程序的功能,了解变量(含数组)在单片机存储器中的具体位置。*/inta[]={,・30,40,-500,600,-7000,8000,・32750,32765};//任意给出10个int型数(范围:・32768^+32767),放在数组a中voidmain()unsignedchari;intmax,
2、min;max=min=a[0];//maxzmin先取该组数据的第一个for(i=l;i<10;i++){if(a[i]>max)max=a[i];if(a[i]0x00022...0xFF
3、E2...0x0028・..OxFEOC・..0x0258・・・0xE4A80xlF400x8012£-3275Q^0x7FFD^32755.Elj_OxOO:000000-W2OC?D:OxOff]-F"TJO~02FFT^-OD:Oxl^0^FE_OC0258E4A8D:OxD^Qx-20:一一一―一D:0x28>Dj-teHO:D:0x38:D:0x40:D:0x48:min4000oa--eo0000000000耐'bo00000000000000000000000000000000000000000
4、000000000000000000000000000000000000""
5、~~Vatch#1jyWatch#2
6、
7、►►!
8、Memory#1人Memory#2入MemoryNameWJCW爰ValueWatch#1入Watch#2address:d:0可直接寻址的内部RAM4jtaxminD:OxOO:000000>Mi7OC,,:S0D:0x08:02FFT2-&&728D:0x^-9、:000000D:0x28:000000D:0x30:000000D:0x38:000000D:0x40:000000D:0x48:00000010、►MrMemory#1000000000000000000000000XMemory#2AMemory注意:rh于是纯软件实验(单片机没有进行实际的输入与输出),有些变量要声明为全局变量(如上面的数组a),否则可能会被Keil软件编译吋优化掉(即:一些语句没有真正••生成执行代码),导致无法观察到正确结果。软件实验二二进制(十六进制)数转换为BCD数//按流程图,编11、写程序如下:#defineucharunsignedcharvoidmain(){ucharx=0xA5;//设二进制数为10100101,在Keil中只能用十六进制0xA5或十进制165(不能直接用二进制形式)uchara[3];a[2]=x/100;x=x%100;a[1]=x/10;x=x%10;a[0]=x;while(1);0x051B-aD0x08[…][0]£1x05[110x06[2]0x01NameValueD:0x000000000000000005D:0x08<0506OJ^OO000012、0000D:0xl00000000000000000D:0xl80000000000000000D:0x200000000000000000D:0x280000000000000000D:0x300000000000000000D:0x380000000000000000D:0x400000000000000000D:0x480000000000000000]►►!Memory#]Memory#2Memorykddress:13、d:0SimulationLocalsWatch#1Watch#2tl:0.014、0015782secL:llC:1IIR/WX4NameValueX4address:15、d:0▲Ox(0xA5>I;白…aD?0x08[7T7]D:0x00:00000000000000A5)[0]0x00D:0x08:0000000000000000•[I]0x00D:0xl0:0000000000000000[2]}0x00D:0xl8:0000000000000000D:0x20:000000
9、:000000D:0x28:000000D:0x30:000000D:0x38:000000D:0x40:000000D:0x48:000000
10、►MrMemory#1000000000000000000000000XMemory#2AMemory注意:rh于是纯软件实验(单片机没有进行实际的输入与输出),有些变量要声明为全局变量(如上面的数组a),否则可能会被Keil软件编译吋优化掉(即:一些语句没有真正••生成执行代码),导致无法观察到正确结果。软件实验二二进制(十六进制)数转换为BCD数//按流程图,编
11、写程序如下:#defineucharunsignedcharvoidmain(){ucharx=0xA5;//设二进制数为10100101,在Keil中只能用十六进制0xA5或十进制165(不能直接用二进制形式)uchara[3];a[2]=x/100;x=x%100;a[1]=x/10;x=x%10;a[0]=x;while(1);0x051B-aD0x08[…][0]£1x05[110x06[2]0x01NameValueD:0x000000000000000005D:0x08<0506OJ^OO0000
12、0000D:0xl00000000000000000D:0xl80000000000000000D:0x200000000000000000D:0x280000000000000000D:0x300000000000000000D:0x380000000000000000D:0x400000000000000000D:0x480000000000000000]►►!Memory#]Memory#2Memorykddress:
13、d:0SimulationLocalsWatch#1Watch#2tl:0.0
14、0015782secL:llC:1IIR/WX4NameValueX4address:
15、d:0▲Ox(0xA5>I;白…aD?0x08[7T7]D:0x00:00000000000000A5)[0]0x00D:0x08:0000000000000000•[I]0x00D:0xl0:0000000000000000[2]}0x00D:0xl8:0000000000000000D:0x20:000000
此文档下载收益归作者所有