- 1、本文档共87页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
51的系列单片机程序设计
#include reg52.h //52系列单片机头文件 #define uint unsigned int //宏定义 #define uchar unsigned char void delayms(uint); //声明子函数 uchar x; //声明无符号数原变量x(占1B) void main() //主函数 { P1=0xfe; //赋初 while(1) //大循环 { for(x=0;x8;x++) //左移8次 { delayms(500); //延时500毫秒 P1=P11; //左移1位 } //左移结束,灯全部亮 for(x=0;x8;x++) //右移8次 { delayms(500); P1=P11|0x80 ; //右移1位,并设定最高位为1 } //右移结束,灯全部灭 } 无论是单片机汇编语言还是C语言编程,都需要借助一个软件工具,一般也称为开发环境,目前有很多专业的单片机软件开发工具,下面为读者介绍一种单片机的集成开发环境,Keil uVision2集成开发环境。 Keil μVision2集成开发环境是德国Keil公司针对51系列单片机应用系统开发而推出的基于32位 windows环境下,以51单片机为开发目标,以高效率C语言为基础的集成开发平台。本节主要介绍Keil C51 V7.20版,它主要包括C51交叉编译器和A51宏汇编等工具,还内嵌了单片机仿真调试软件,可以让用户采用模拟仿真和实时在线仿真两种方式对目标系统进行开发。软件仿真时,它可以查看程序变量,内部存储单元。以及模拟和查看单片机I/O口,定时器及中断的工作方式和设置,甚至可以仿真单片机的串行通信。 4.5 Keil μVsion2 集成开发环境 双击安装程序setup,进入安装模式。它与一般软件安装过程类似。值得注意的是,当出现提示“Install Support....全新安装”和“Update Current Installation……升级安装”时,选择“Install Support....全新安装”。并且在出现提示“Full version”和“Eval version”时,选择“Full version”。随后依次点击“Next-Yes-选择安装目录-Next-”输入序列号、姓名、公司”等。安装完成后在Windows桌面上会出现一个Keil μVision2的图标 。 4.5.1 Keil uVsion2安装 在Keil uVsion2支持下开发单片机应用系统软件,一般需要经过以下的几个过程:创建工程→工程选项卡设置→新建源文件→添加源文件到工程→编译→仿真调试→下载。 4.5.2 Keil μVsion2的使用 (1) Keil C51 μVision2界面与工程创建(如图4-8) 图4-8 Keil C51 μVision2 的工作界面 创建一个新工程,首先须在菜单栏“Project”菜单中选择“New Project”选项(补充图1),此时会弹出“创建新工程”对话框(补充图2),可填入工程名,随后单击保存。 创建新工程 — 补充图1 保存工程项目(Test)— 补充图2 ◇ 接着出现选择单片机芯片型号对话框(补充图3)。本例选择Atmel—AT89C51单片机,随后点击“确定”,新工程创建即告完成。 选择芯片型号— 补充图3 建立源程序文档 — 补充图4 点击保存按钮— 补充图5 图4-9 源程序文档加入所建工程项目中 图4-10 工程文件设置 Target选项卡设置—补充图6 Output选项卡的设置— 补充图7 保存文件格式 — 补充图8(练习.A) 添加源程序— 补充图9 设定完成后单击“确定”返回主界面,工程文件设置完毕。当工程建立并设置完成之后,接下来就可以对工程进行编辑(源程序文本)。以下面简单的汇编源程序为例: ORG 0000H ;P1口输出实验 LJMP START ORG 0100H START: MOV A,#0FEH LOOP: RL A MOV P1,A LCALL DELAY ;延时 0.1秒
文档评论(0)