找回密码
 注册会员
更新自动建库工具PCB Footprint Expert 2024.04 Pro / Library Expert 破解版

这是买的学习版的里的资料...就是看不懂...那个闪灯的就知道

[复制链接]
admin 发表于 2012-9-2 11:17:42 | 显示全部楼层 |阅读模式

本文包含原理图、PCB、源代码、封装库、中英文PDF等资源

您需要 登录 才可以下载或查看,没有账号?注册会员

×
/*------------------------------------------------------
跑马灯 1
------------------------------------------------------*/

#include <AT89X51.H> //预处理文件里面定义了特殊寄存器的名称如P1 口定义为P1
void main(void)
{
//定义花样数据
const unsigned char design[32]={0xFF,0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,
0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,0xFE,0xFF,
0xFF,0xFE,0xFC,0xF8,0xF0,0xE0,0xC0,0x80,0x0,
0xE7,0xDB,0xBD,0x7E,0xFF};

unsigned int a; //定义循环用的变量
unsigned char b; //在C51 编程中因内存有限尽可能注意变量类型的使用
//尽可能使用少字节的类型,在大型的程序中很受用
do
{
for (b=0; b<32; b++)
{
for(a=0; a<10000; a++); //延时一段时间
P1 = design[b]; //读已定义的花样数据并写花样数据到P1 口
}
}while(1);
}

sfr P1 = 0x90; //这里没有使用预定义文件,
sbit P1_0 = P1 ^ 0; //而是自己定义特殊寄存器
sbit P1_7 = 0x90 ^ 7; //之前我们使用的预定义文件其实就是这个作用
sbit P1_1 = 0x91; //这里分别定义P1 端口和P10,P11,P17 引脚

void main(void)
{
unsigned int a;
unsigned char b;

do{
for (a=0;a<50000;a++)
P1_0 = 0; //点亮P1_0

for (a=0;a<50000;a++)
P1_7 = 0; //点亮P1_7

for (b=0;b<255;b++)
{
for (a=0;a<10000;a++)
P1 = b; //用b 的值来做跑马灯的花样
}

P1 = 255; //熄灭P1 上的LED

for (b=0;b<255;b++)
{
for (a=0;a<10000;a++) //P1_1 闪烁
P1_1 = 0;

for (a=0;a<10000;a++)
P1_1 = 1;
}
}while(1);
}

#include <AT89X51.h> //预处理命令

void main(void) //主函数名
{
//这是第一种注释方式
unsigned int a; //定义变量a 为int 类型
/*
这是第二种注释方式
*/
do{ //do while 组成循环

for (a=0; a<30000; a++); //这是一个循环
P1_0 = 0; //设P1.0 口为低电平,点亮LED
for (a=0; a<30000; a++); //这是一个循环
P1_0 = 1; //设P1.0 口为高电平,熄灭LED

}while(1);
}
*滑块验证:
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

QQ|手机版|MCU资讯论坛 ( 京ICP备18035221号-2 )|网站地图

GMT+8, 2024-11-28 13:32 , Processed in 0.050189 second(s), 9 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

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