下位机/main.c
(开头部分) 4KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
#include <REG52.H>
#include <stdio.h>
#include <intrins.h>
#define uchar unsigned char //宏定义
#define uint unsigned int //宏定义
uchar b; //用来接收数据存储
uchar j=0;
uint i=0; //用来判断相应的子程序
uchar LED1= 0xfe; //作为流水灯的开始
uchar LED2=0Xfe; //作为跑马灯的开始
uchar LED3 = 0xfE; //作为二进制加法灯的开始
uchar LED4=0XFF; //作为花样灯的开始
uchar code table[]={0xff,//全灭
0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,//依次逐个点亮
0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00,//依次逐个叠加
0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff,//依次逐个递减
0x7e,0xbd,0xdb,0xe7,0xe7,0xdb,0xbd,0x7e,//两边靠拢后分开
0x7e,0x3c,0x18,0x00,0x00,0x18,0x3c,0x7e,//两边叠加后递减
0x00};//全亮
void delay(void); //延时函数的声明
void liushuideng(void); //流水灯的声明
void paomadeng(void); //跑马灯的声明
void huayangdeng(void); //花样灯的声明
void stopLed(); //停止所有灯的效果
void erjinzhideng(void); //二进制加法灯的声明
void xianshi(uint j); //显示程序
void init(void); //初始化函数
void main (void)
{
init(); //初始化
while(1)
{
xianshi(i); //显示
}
}
void init(void) //初始化函数的定义
{
SCON = 0x50; //REN=1允许串行接受状态,串口工作模式1
TMOD|= 0x20; //定时器工作方式2
PCON|= 0x80;
TH1 = 0xF3; //baud*2 /* 波特率4800、数据位8、停止位1。效验位无 (12M)
TL1 = 0xF3;
TR1 = 1; //开启定时器
PS=1; //把串口中断的优先级设为最高
ES = 1; //开串口中断
EA = 1;
}
void delay(void) //延时函数的定义
{
uchar i;
uchar ms=250;
while(ms--)
{
for(i = 0; i < 120; i++);
后面还有 83 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。
