登录  | 立即注册

游客您好!登录后享受更多精彩

扫一扫,访问微社区

QQ登录

只需一步,快速开始

开启左侧

[寒假笔记] 点阵,用的去年的单片机,显示为儿子,儿子I am your father

[复制链接]
发表于 2019-1-23 22:09:38 | 显示全部楼层 |阅读模式
学习笔记
学习科目: 单片机
学习安排: 点阵
开始时间: 2019-01-23
结束时间: 2019-01-23
#include <reg52.h>

sbit ADDR0 = P1^0;
sbit ADDR1 = P1^1;
sbit ADDR2 = P1^2;
sbit ADDR3 = P1^3;
sbit ENLED = P1^4;

unsigned char  image[] = {
0x7F,0x7F,0x7F,0x00,0xFF,0x00,0x7F,0x7F,0x37,0xF4,0xF2,0x06,0x76,0xF6,0xF7,0xFF,
0xFF,0xFF,0x7F,0x7F,0x7F,0x00,0xFF,0x00,0x7F,0x7F,0x37,0xF4,0xF2,0x06,0x76,0xF6,
0xF7,0xFF,0xFF,0x7D,0x7D,0x01,0x7D,0x7D,0xFF,0xFF,0x7F,0x03,0x7B,0x7B,0x03,0xFF,
0x03,0xFB,0xFB,0x03,0xFB,0xFB,0x03,0xFF,0xFF,0xFF,0xFF,0x61,0x6F,0x6F,0x01,0xFF,
0x81,0xBD,0xBD,0x81,0xFF,0x81,0xBF,0xBF,0x81,0xFF,0x81,0xF7,0xFB,0xFD,0xFF,0xFF,
0xFF,0xF5,0xF5,0xF5,0x01,0xFF,0x7F,0x07,0x77,0x77,0x07,0xFB,0xFB,0x01,0xFB,0xFB,
0xFF,0x01,0xF7,0xF7,0x07,0xFF,0x07,0x57,0x57,0x47,0xFF,0x03,0xEF,0xF7,0xFB
};

void main()
{
EA = 1;
ENLED = 0;
ADDR3 = 0;
TMOD = 0x01;
TH0 = 0xFC;
TL0 = 0x67;
ET0 = 1;
TR0 = 1;
while (1);
}

void InterruptTimer0() 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: ADDR2=0; ADDR1=0; ADDR0=0; i++; P0=image[index+0]; break;
case 1: ADDR2=0; ADDR1=0; ADDR0=1; i++; P0=image[index+1]; break;
case 2: ADDR2=0; ADDR1=1; ADDR0=0; i++; P0=image[index+2]; break;
case 3: ADDR2=0; ADDR1=1; ADDR0=1; i++; P0=image[index+3]; break;
case 4: ADDR2=1; ADDR1=0; ADDR0=0; i++; P0=image[index+4]; break;
case 5: ADDR2=1; ADDR1=0; ADDR0=1; i++; P0=image[index+5]; break;
case 6: ADDR2=1; ADDR1=1; ADDR0=0; i++; P0=image[index+6]; break;
case 7: ADDR2=1; ADDR1=1; ADDR0=1; i=0; P0=image[index+7]; break;
default: break;
}

tmr++;
if (tmr >= 150)
{
tmr = 0;
index++;
if (index >= 104)
{
index = 0;
}
}
}

好懒~~不想说~~~
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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