找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1216|回复: 3
打印 上一主题 下一主题
收起左侧

下面这个单片机程序应该如何理解?

[复制链接]
跳转到指定楼层
楼主
ID:840202 发表于 2020-11-9 20:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include<reg51.h>
unsigned char code image[]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
        0xC3,0xE7,0xE7,0xE7,0xE7,0xE7,0xC3,0xFF,
        0x99,0x00,0x00,0x00,0x81,0xC3,0xE7,0xFF,
  0x99,0x99,0x99,0x99,0x99,0x81,0xC3,0xFF,
  0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF};   //24个
unsigned char code TAB[8]  = {0x80,0x40,0x20,0x10,0x08,0x04,0x02,0x01};

void main(){
  EA=1;
        TMOD=0x01;
        TH0=0xfc;
        TL0=0x67;
        ET0=1;
        TR0=1;
        while(1);


}
void int0() interrupt 1{

        static unsigned char i=0;
        static unsigned char tmr=0;
        static unsigned char index=0;
        TH0=0xfc;
        TL0=0x67;
        
        P0=0xff;
        switch(i){
        
                case 0: P1=TAB[7];i++;P0=image[index+0]; break;
                case 1: P1=TAB[6];i++;P0=image[index+1]; break;
                case 2: P1=TAB[5];i++;P0=image[index+2]; break;
                case 3: P1=TAB[4];i++;P0=image[index+3]; break;
                case 4: P1=TAB[3];i++;P0=image[index+4]; break;
                case 5: P1=TAB[2];i++;P0=image[index+5]; break;
                case 6: P1=TAB[1];i++;P0=image[index+6]; break;
                case 7: P1=TAB[0];i=0;P0=image[index+7]; break;
          default: break;
        }
tmr++;
        if(tmr>=250){
        
                  tmr=0;
                  index++;
                  if(index>=32){
                        index=0;
                        }
               
        }
        
        
}

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:654028 发表于 2020-11-10 09:28 | 只看该作者
这是书上的教程吧
回复

使用道具 举报

板凳
ID:414556 发表于 2020-11-10 09:35 | 只看该作者
循环输出显示
回复

使用道具 举报

地板
ID:451718 发表于 2020-11-10 10:57 | 只看该作者
从定时器的初值上分析,你这个程序用在11.0592MHz,12T模式,1毫秒定时器中断的环境中。 1毫秒切换一次段码(P1端口),然后250毫秒更换一次输出内容(P0端口)。TAB[8]是段码的选择值,image[]是P0端口实际的输出内容。
回复

使用道具 举报

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

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

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