#include<reg51.h>
#define aa 0x33
sbit led_h=P2^2;
sbit led_g=P2^4;
sbit led_d=P2^0;
sbit led_s=P2^1;
int i=0,a=0;
unsigned char dis[]={0X00,0X7E,0XFF,0XC3,0XC3,0XFF,0X7E,0X00,
0X00,0X03,0X23,0X7F,0XFF,0X03,0X03,0X00,
0X00,0X43,0XC7,0XCF,0XDB,0XF3,0X63,0X00,
0X00,0X42,0XC3,0XDB,0XDB,0XFF,0X66,0X00,
0X1C,0X3C,0X6C,0X4C,0XFF,0XFF,0X0C,0X0C,
0X00,0X02,0XFB,0XFB,0XDB,0XDF,0XDE,0X00,
0X00,0X0E,0X1F,0X3B,0X7B,0XDF,0X8E,0X00,
0X00,0X40,0XC0,0XDF,0XFF,0XE0,0XC0,0X00,
0X00,0X66,0XFF,0XDB,0XDB,0XFF,0X66,0X00,
0X00,0X71,0XFB,0XDE,0XDC,0XF8,0X70,0X00 };
void PY(void)interrupt 3
{
TH1=0xd8;TL1=0xf0;
i++;
if(i>100)
{i=0;
a++;
}
}
void delay(void)
{
int c=0;
for(c=0;c<=300;c++);
}
void display(void)
{
int f,g;
int d=1;
f=a*8;
for(g=0;g<8;g++)
{
P0=dis[f+g];
led_d=1;led_d=0;
P0=~d;
if(F0==1) {led_h=1;led_h=0;}
else { led_g=1;led_g=0;}
delay();
P0=0Xff;
led_h=1;led_h=0;
led_g=1;led_g=0;
d=d<<1;
}
}
void main(void)
{
F0=0;
P1=0xff;
P2=0x00;
P0=0X00;
led_d=1;
led_d=0;
led_h=1;
led_g=1;
led_g=0;
P0=0xff;
led_s=1;
led_s=0;
P0=0x00;
TMOD=0x11;
ET1=1;
EA=1;
TR1=1;
while(1)
{
if(a>=10) {a=0;F0=~F0;}
display();
}
}
adf.rar_Help!
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
标题中的"adf.rar_Help!"似乎是一个压缩文件的名称,其中"adf"可能是项目或程序的缩写,".rar"是常见的压缩文件格式,通常用于打包多个文件或目录。"Help!"这部分可能意味着该文件包含了某种帮助信息或者是一个求救信号,表明这个MCU(微控制器)程序可能需要用户的额外协助。 描述中提到"this is a MCU program",这告诉我们这是一个针对微控制器的程序。MCU是微控制器单元的缩写,它是一个集成了CPU、内存和外围接口的单片集成电路,常用于各种电子设备和嵌入式系统中。"you can use it"意味着这个程序是可供使用的,可能是公开的源代码或者二进制固件。"wish that, it can help you"表达了一种希望这个程序能对使用者有所帮助的愿望,暗示可能存在一些特定的功能或解决问题的能力。 标签"help!"再次强调了这个文件可能包含需要解决的问题或者提供解决问题的资源。 根据压缩包子文件的文件名称"LED点阵计数器C.c",我们可以推断出这个MCU程序是关于LED点阵计数器的,且是用C语言编写的。LED点阵是一种由多个LED灯组成的矩形或方形阵列,常用于显示数字、字母或其他图形。"C.c"通常表示C语言源代码文件,是程序员编写程序的文本文件,可以被编译成机器可执行的代码。 这个程序可能涉及的知识点包括: 1. **微控制器编程**:理解MCU的架构,如寄存器操作、中断处理、时钟管理等,以及如何在MCU上编写和烧录程序。 2. **C语言编程**:C语言的基础语法,如变量声明、控制结构、函数定义、指针操作等,以及在嵌入式环境中的应用。 3. **LED驱动**:了解LED的工作原理,如何控制亮度和颜色,以及如何通过GPIO(通用输入/输出)接口与MCU通信。 4. **点阵计数器设计**:如何利用有限的LED点阵来显示变化的数值或图案,可能涉及到滚动显示、动态扫描等技术。 5. **定时器和中断**:在实现点阵计数器时,可能会用到MCU的定时器来产生周期性信号,更新显示内容,同时可能使用中断来处理外部事件。 6. **软件工程实践**:良好的编程规范,注释的编写,版本控制,以及可能的调试和测试方法。 7. **电路设计**:了解如何将MCU与LED点阵连接,包括电源管理、信号调理和保护电路等。 8. **嵌入式系统开发**:包括编译工具链的使用,如GCC编译器,烧录工具,以及可能的调试器如JTAG或SWD接口。 9. **数字逻辑**:理解二进制、十六进制和ASCII码转换,这对于理解如何在点阵上正确显示数字和字符至关重要。 10. **实时操作系统(RTOS)**:如果程序中涉及到多任务处理,可能需要了解RTOS的概念,如任务调度、信号量、互斥锁等。 以上就是从标题、描述和标签中推测出的相关知识点,具体的内容需要通过解压文件并查看源代码才能进一步详细分析和学习。
- 1
- #完美解决问题
- #运行顺畅
- #内容详尽
- #全网独家
- #注释完整
- 粉丝: 112
- 资源: 1万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助