标题:
单片机控制LED进行花样变化实验 Proteus仿真加源程序
[打印本页]
作者:
51黑电子happy
时间:
2017-3-29 21:50
标题:
单片机控制LED进行花样变化实验 Proteus仿真加源程序
51单片机控制的花样流水灯实验,有仿真有代码,分享给51黑电子论坛的朋友们.
单片机LED花样变化原理图(proteus工程文件可到本帖附件下载):
0.png
(27.91 KB, 下载次数: 64)
下载附件
2017-3-29 21:41 上传
单片机源程序:
//-------------------------------------------------------------------------------------------------------------------------------
// 程序名: JSC5-2.c
// 程序功能:P1输出,LED进行花样变化
//------------------------------------------------------------------------------------------------------------------------------
#include <reg51.h> // 头文件
//----------------------------------------------------------
// 声明无符号字符数组TABLE
//----------------------------------------------------------
unsigned char code TABLE[ ]={
0xff,0xe7,0xc3,0x81,0x00, // 从中间向两侧点亮控制码
0xff,0x7e,0x3c,0x18,0x00, // 从两侧向中间点亮控制码
0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f, // 左移控制码
0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe, // 右移控制码
0x00,0xff,0x00,0xff, // 闪烁控制码
0x01 // 结束码
};
//------------------------------------------- 延时函数---------------------------------------------
DELAY( ) // 延时函数
{
unsigned int s; // 声明s为无符号整型变量
for(s=0;s<30000;s++); // for循环延时语句
}
//--------------------------------------------- 主函数 --------------------------------------------
main( ) // 主函数
{
unsigned char i; // 声明无符号字符型变量i
while(1) // 无限循环
{
if ( TABLE[i]!=0x01 ) // 取码不等于0x01时,执行if{ }内的语句
{
P1=TABLE[i]; // 输出
i++; // 递加(加1)
DELAY( ); // 调用延时函数DELAY( )
}
else // 取码等于0x01时,执行"i=0"语句
{
i=0; // 重新开始循环
}
} // while(1)循环体结束
} // 主函数结束
//-----------------------------------------------------------------------------------------------------------------
复制代码
0.png
(64.5 KB, 下载次数: 64)
下载附件
2017-3-29 21:46 上传
该系列源码包含有很多非常经典,代码风格十分规范,而且注释详细的单片机例程,还带仿真,对于MCU学习特别是初学者是很有帮助的,全部源码下载(共25个项目):
http://www.51hei.com/bbs/dpj-79328-1.html
本例程下载(含proteus仿真工程文件与源码):
5-2单片机控制LED进行花样变化实验.rar
(52.4 KB, 下载次数: 9)
2017-3-29 21:44 上传
点击文件名下载附件
下载积分: 黑币 -5
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1