玩转单片机,你我都是菜鸟(续3)
下面开始第一个题目:流水灯
硬件前提:用51的P1口控制8个LED,1
单片机初学者几乎都做的一个实验就是流水灯实验,因为大家都做,所以就觉得很简单,很多人对这个实验几乎不屑。其实要彻底的玩转这个实验也是很不简单的事情,不信看看你能不能完成下面的实验题,如果你能拿下它,那么你已经一只脚稳稳地踏入了单片机门槛,并且你一定不想再回头了,此时已经有一部分人对你刮目相看了(包括我),因为就这几个题目算起来我想了有整整一天了,总算有个结果,而且还有一些问题,尤其是第(2)个题目效果很不明显。我把这几个题目的程序贴出来,希望大家给点意见,我们互相交流,互相学习,互相指导。
题目要求:第1,3,5,7个灯半亮,其余的全亮。
(1)程序:
#
#define
#
#
uchar
void
void
void
{
}
void
{
}
void
void
{
if(LEDflag
{
}
{
题目要求:第1个亮1/8,第2个亮2/8,第3个亮3/8,第4个亮4/8,第5个亮5/8,第6个亮 6/8, 第7个亮7/8,第8个全亮。
(2)程序:
#
#define
#
#
uchar
//uchar
void
void
void
{
}
void
{
}
void
void
{
switch
{
case
//为真时语句
break;
case
//为真时语句
break;
case
//为真时语句
break;
case
//为真时语句
break;
case
//为真时语句
break;
case
//为真时语句
break;
case
//为真时语句
break;
case
//为真时语句
break;
default:
//冗余语句
break;
}
}
题目要求:所有的灯逐渐从暗到全亮,再由全亮到暗。
(3)程序:
#
#define
#
#
uchar
void
void
void
{
}
评论