数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 3519|回复: 2

[C51] 单片机原理 C51 ,PROTUES仿真 中断 交通灯

[复制链接]
发表于 2020-12-27 19:28:41 | 显示全部楼层 |阅读模式
本帖最后由 玛德陛下 于 2020-12-27 19:30 编辑



中断


先在PROTUES 里面 做好电路图,
发现 复位 ,晶振电路都可以省了。



KEIL里面敲进程序,然后开始捉虫









装载后就可以运行了,


#include <reg51.h>
void delay500(unsigned char k);
void main()
{
        //SP =0x60; //堆栈指针调整可以去掉
        TMOD=0x01;  //设置定时器0模式1
        IE= 0x85;   //设置中断允许

        TCON=0x05;  //设置外部中断 模式
        while(1)
        {
                P1=0x21;      //根据电路连接计算的
                delay500(10); //改时间了,便于观察
                P1=0x41;
                delay500(2);
                P1=0x12;
                delay500(10);
                P1=0x14;
                delay500(2);
               
        }
}

void int_0() interrupt 0 //外部中断0程序
{
        unsigned char i1,i2;
        i1=P1;                  //保存中断前的P1状态
        for(i2=0;i2<5;i2++)
        {
                P1=0x21;
                delay500(1);
                P1=0x00;
                delay500(1);
        }
        P1=i1;
}

void int_1() interrupt 2
{
        unsigned char j1,j2;
        j1=P1;
        for(j2=0;j2<5;j2++)
        {
                P1=0x12;
                delay500(1);
                P1=0x00;
                delay500(1);
        }
        P1=j1;
}

void delay500(unsigned char m)
{
        unsigned char k1,k2;
        TH0=0x3C;
        TL0=0xB0;
        TR0=1;
        for(k1=0;k1<m;k1++)
        {
                for(k2=0;k2<10;k2++)
                {
                        while(!TF0); //查询定时器中断标志
                        TF0=0;
                        TH0=0x3c;
                        TL0=0xB0;
                }
        }
        
}        



中断 也是 设置相应的 寄存器来实现,

这程序设计中,中断 不会嵌套,

灯的显示 得人工转换一下,可以通过画图来更直观的 得到 8位二进制数,再转换成16进制数

PROTUES 中51的复位 晶振 ,EA 电路都可以省略


下一步开始 学习 数码管显示 和 键盘输入。

跳过 扩展 RAM ,ROM ,IO 和8255 的例子。




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x

打赏

参与人数 7家元 +140 收起 理由
温力口 + 20 谢谢分享。。。。。
ljlun + 20 新年快乐!
kyhwhb + 20
超级女生 + 20 歡迎探討
有点不烧 + 20 謝謝分享
kkdkj + 20 謝謝分享
lrm888 + 20

查看全部打赏

发表于 2021-1-2 10:01:50 | 显示全部楼层
可图示,挺好玩的
回复 支持 反对

使用道具 举报

发表于 2021-1-2 11:04:53 来自手机浏览器 | 显示全部楼层
再牛逼的仿真也是纸上谈兵…
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-7-22 03:14 , Processed in 0.124800 second(s), 10 queries , Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表