先在KILEC的optionsfortarget工具栏中的output选项下,nameofExecutable后面的空框里输入你要输出的文件名,然后在Create.Hex项的前面的小方格中打上“勾”,然后编译,编译成功就可以生成HEX文件,文件存放在目标程序的相同文件夹下,名字是你输入的名字,再通过程序下载软件下载到单片机中就OK了。keil不能给pic单片机编程。pic有专用的编译软件,mplab和c语言编译软件picc。MPLABX目前还不是很成熟,如果用来做项目的话,建议用MPLAB,本即可,到MICROCHIP额官网下载即可。一般不会无缘无故的死机的,可能是你PC上某个软件和MPLAB有冲突导致的,我常年使用这个软件,没见啥软件死机。
keil,译按钮在:Debug–找到图中所示按钮即为单步运行。分别由C,C,译器编译生成目标文件(.obj)。目标文件可由LIB,创建生成库文件,也可以与库文件一起经L,连接定位生成绝对目标文件(.abs)。abs文件由OH,转换成标准的hex文件,以供调试器dScope。KeilC。正式产品的C,序应该是一个死循环。如果不是死循环,执行完main后,执行RET,将会将堆栈里的数据当做地址压入PC,程序跑错。最后会回到地址,,重新开始,进入main。你仿真在,做中断,就会发现他回去了。你说的不清楚,跳转还是会跳转的。程序运行结果正确就说明没有错。
intmain{//表达式while({//把你要循环的函数放在这里for(i=,i单片机入口函数main()里面要是没有无限循环函数while(,那么就会只执行一遍,并且程序往下会崩溃!!(return,可以不要加入!!!无限循环才能不停的一遍一遍又一遍!。不知道怎么传图,你在运行后的时候右下角有个窗口,有callstack,Locals,watch,watch,memory,个选项卡,选watch,然后键入你想观察的地址(,,)。
将要读取的地址转换为指针,然后通过指针读取该地址的数据。需要注意的是,根据实际情况可能需要调整指针类型和地址。keil指KeilC,是美国KeilSoftware公司出品的,列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。首先,应该是ATmega,与,片机没有一毛钱关系。与keil也没有一毛钱关系。就算是没有加密,可以读出来,那也得要ATmega专用的ISP下载线,还要用专用的烧烧软件,要去ATMEL官网下载。好了,假如没有加密,是可以读出来,但读出来确实是BIN代码,看不懂,更不能修改。假如想仿造。
暂无评论内容