PROTEUS入门实例 - 图文(2)

2019-02-15 17:11

图5-9编辑完成的简单实例的电路图

2. 源程序设计与生成目标代码文件

(1)程序流程图

开始 声明变量 点亮发光二极管 延时500毫秒 关闭发光二极管 延时500毫秒 主程序

图5-10 发光二极管闪烁的流程图

(2)源程序设计

将放光二极管闪烁的程序保存在文件FLASH_LED.C中,

#include //头文件 #define uint unsigned int //宏定义

sbit D1=P1^0; //声明单片机P1口的第一位 void delay(uint z); //声明子函数 void main() {

while(1) //大循环 {

D1=0; //点亮第一个发光二极管 delay(500); //延时500毫秒

D1=1; //关闭第一个发光二极管

}}

delay(500); //延时500毫秒

void delay(uint z) //延时子程序延时约z毫秒 { }

uint x,y; for(x=z;x>0;x--)

for(y=110;y>0;y--);

3. 在keil中编译生成目标代码文件。

4. PROTEUS仿真

(1)加载目标代码文件

双击编辑窗口的AT89C52器件,在弹出如图5—11所示属性编辑对话框Program File一栏中单击打开按钮

,出现文件浏览对话框,找到

FLASH_LED.HEX文件,单击“打开”按钮,完成添加文件。在Clock frequency栏中把频率设置为12MHZ,仿真系统则以12MHZ的时钟频率运行。因为单片机运行的时钟频率以属性设置中的“Clock frequency”为准,所以在编辑区设计MCS-51系列单片机系统电路时,可以略去单片机振荡电路,并且复位电路也可以略去。所以从子情境三开始就将振荡电路和复位电路省略。

(2)仿真:单击按钮

,启动仿真,仿真运行片段如图5-12所示。发

光二极管间隔500毫秒闪烁。

红色方块代表低电平,蓝色方块代表高电平,灰色方块代表不确定电平


PROTEUS入门实例 - 图文(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:第2课时 3的倍数的特征 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: