数电课设

实验选用单片机:arduino

引脚图:

连线方式:

代码如下:

 //经过修改后的code 

 int LED1=6;//arduino8个led灯
 int LED2=7;
 int LED3=8;
 int LED4=9;
 int LED5=10;
 int LED6=11;
 int LED7=12;
 int LED8=13;
 int n,i,j,t,cnt=0;//t代表时间
void setup()//设置各个引脚的初始状态
{
for(n=6;n<=13;n++)
{
  pinMode(n,OUTPUT);//初始化引脚为输出状态
}
}

void loop() //就是c语言的main中的while(1)函数的入口
{
  if(cnt%2==0) t=1000;
  else t=2000;
  style1();//按LED1-8顺序点亮,按8-1顺序熄灭
  clean();  //灭掉所有灯
  style2();//按LED1-8顺序点亮,按1-8顺序熄灭
  clean();//灭掉所有灯
  style3();//骚气的花色
  clean();//灭掉所有灯
  cnt++;
} 

void style1()  //花色1:按LED8~1顺序点亮,按1~8顺序熄灭
{
for(n=LED8;n>=LED1;n--)
{
   digitalWrite(n,HIGH);
    delay(t);
}

for(n=LED1;n<=LED8;n++)
{
    digitalWrite(n,LOW);
    delay(t);
}
}
//花色 2:4,5号灯先亮,然后3,6号再亮,接着2,7号亮,最后1,8号亮。
//        1,8号灯先灭,然后2,7号熄灭,接着3,6号灭,最后4,5号灭。
void style2()
{
     int j,k;
     k=1;//设置k的初值为1
     for(j=LED4;j>=LED1;j--)//
     {
       digitalWrite(j,HIGH);//点亮灯
       digitalWrite(j+k,HIGH);//点亮灯
       delay(t);//延时tms
       k +=2;//k值加2
     }
     k=7;//设置k值为7
     for(j=LED1;j<=LED4;j++)
     {
       digitalWrite(j,LOW);//熄灭灯
       digitalWrite(j+k,LOW);//熄灭灯
       delay(t);//延时tms
       k -=2;//k值减2
     }
}

void style3()//花色三
{
digitalWrite(LED1,HIGH);//初始状态:LED1和LED8依次点亮
digitalWrite(LED8,HIGH);
delay(t);
i=LED7,j=LED2;//i从右到左,j从左到右
while(i>=LED5&&j<=LED4)//从两侧依次点亮led
{
digitalWrite(j,HIGH);
//delay(t);
digitalWrite(i,HIGH);
delay(t);
i--;j++;
}i=LED5;j=LED4;
while(i<=LED8&&j>=LED1)//从中间向两侧依次熄灭led
{
digitalWrite(i,LOW);
//delay(t);
digitalWrite(j,LOW);
delay(t);
i++;j--;
} 

}

void clean()
{
for(n=6;n<=13;n++)
{
  digitalWrite(n,LOW);
}
//delay(10);
}

  

原文地址:https://www.cnblogs.com/cstdio1/p/11143722.html

时间: 2024-11-05 23:35:42

数电课设的相关文章

CRC冗余校验算法(当初数电课睡觉,现在来补课了)

CRC校验原理 CRC校验原理看起来比较复杂,好难懂,因为大多数书上基本上是以二进制的多项式形式来说明的.其实很简单的问题,其根本思想就是先在要发送的帧后面附加一个数(这个就是用来校验的校验码,但要注意,这里的数也是二进制序列的,下同),生成一个新帧发送给接收端.当然,这个附加的数不是随意的,它要使所生成的新帧能与发送端和接收端共同选定的某个特定数整除(注意,这里不是直接采用二进制除法,而是采用一种称之为"模2除法").到达接收端后,再把接收到的新帧除以(同样采用"模2除法&

编译原理课设参考

期末到了,忙课设好久了,在编译原理的课设上面走了好多的弯路,也好久没有碰前端的东西了,心感惭愧,那我就把我最近忙的一些东西贡献出来,希望可以帮助到那些感觉这门科目很难的同学,祝大家可以学好每一门学科~ 下面是我们学校的学习要求,我全部已经完成,时间仓促,大家仅供参考.转载请注明出处. 基本内容(成绩范围:“中”.“及格”或“不及格”) (1)扩充赋值运算:+=,-=, *= 和 /= (2)扩充语句(Pascal的FOR语句): FOR <变量>:=<表达式>STEP<表达式

C语课设心得分享(三)

调试. 以前咱们写课后习题,一般也不需要使用调试,如果程序编译error,根据错误信息就可以改好:如果是结果错误,那么在稿纸上过几遍基本也可以得出结果. 但咱们这个课设比较大,就需要很多调试的过程,尤其是在链表/开关变量的调试上.其实我对调试也不是很了解,但我跟大家分享一些我所接触到的调试方式. F10和F11是非常常用的,两者的区别是F11是单步调试,但是会进入到子函数中.F10的话也是单步,但是会跳过模块.感觉平时用F10更多一些.在 用单步调试时,监测变量的窗口可以智能显示出你可能要看的变

由课设和面向对象想到的一些东西 2015-05-29

前些天草草的把Java课本(学校老师自编课本)浏览了一遍,最近正在看<Java核心技术>,感觉书有点儿难度.正在努力理解接口和异常. 我 刚接触编程时,就已经听说了“面向对象编程”这个概念,但完全不能理解.百度相关信息,只能得到一些“哲学答案”,比如“万物皆对象”等等.我问学长学 姐,他们给我的答案也都模棱两可.现在学完C语言后,终于能初步感受到面向对象的思想了.所以我的感受是,有些不懂的东西不需要太着急,可能是自己还没有 学会基础的东西,学着学着慢慢就懂了.同时我也觉得C语言入门虽然难且艰辛

数电基础 第四章

数电基础 第四章 组合逻辑电路 组合逻辑电路的特点 1.从功能上 :任意时刻的输出仅取决于该时刻的输入 2.从电路结构上:不含记忆(存储)元件 逻辑功能的描述 组合逻辑电路的设计方法 1.逻辑抽象 分析因果关系,确定输入/输出变量 定义逻辑状态的含意(赋值) 列出真值表 2.写出函数式 3.选定器件类型 4.根据所选器件:对逻辑式化简,变换,或进行相应的描述 5.画出逻辑电路图 设计举例 设计一个监视交通信号灯状态的逻辑电路 1.抽象 输入变量:红(R).黄(A).绿(G) 输出变量:故障信号(

模电&amp;数电知识整理(不定期更新)

模电总复习之爱课堂题目概念整理 Chapter 1 1) 设室温情况下某二极管的反偏电压绝对值为1V,则当其反偏电压值减少100mV时,反向电流的变化是基本不发生变化. 2) 二极管发生击穿后,在击穿区的曲线很陡,反向电流变化很大,但两端的电压降却几乎不变. 3) 二极管的反向击穿分为雪崩击穿和齐纳击穿两类. 4) 齐纳击穿的反向击穿电压小于6V. 5) 二极管电击穿是可逆的,热击穿不可逆. 6) 在P型半导体中,多子是空穴,少子是自由电子. 7) 在P型半导体中:在室温下,当温度升高时,空穴的

漫画app课设

Android移动应用开发 课程设计报告 (2019—2020学年 第Ⅰ学期) 作品主题:漫画app 系    别        信息与控制工程 专    业        计算机科学与技术 班    级          计算机1702 学    号            173230217 姓    名               张宏升 指导教师               郭丹 目录 一.需求分析 1 1.1引言 1 1.1.1编写目的 1 1.1.2项目背景 1 1.2功能需求分析 1

课设心得

课设心得 选题 最开始的时候是想选择图书管理系统的,因为有经验,但是不清楚为什么学委和我说已经被选满了,那个时候我应该是第一个选的,基本不可能被选满.于是我选择了多项式合并. 做题 与三重链表相比的难度 相较于三重链表而言,这道题可以做的非常简单,也可以做的与三重链表的复杂程度相仿.三重链表那个课设的难点在于组织三重链表的思路,以及对于三重链表的操作,前者更难一些,因为对其操作基本只是遍历(我帮助大约5--8个人设计了构造以及存数三重链表的函数.所以我认为我还是有一定发言权的).对于多项式合并,

java课设打包操作

最近在交java课设时把东西打包给老师遇到许多奇葩问题, 首先是数据库复制时提示: 这是数据库与SQL server服务没有分离(我用的是SQLserver暂时,对于其他的,我以后会继续尝试)可以进行以下操作 打开sqlserver     找到需要分离的数据库 右键----->任务---->分离 这样再复制粘贴就可以了 然后就是java源文件导出为可运行的jar文件 导出jar 导出复制粘帖时又出现错误提示 操作无法完成 因为文件已在 Java(TM) Platform SE binary