暑假的第好几周了
来源:互联网 发布:java 日志服务器搭建 编辑:程序博客网 时间:2024/09/21 09:22
这几天学到的东西
1.抢答器
抢答器终于是做好了,虽然只能对两位选手进行比赛…虽然刚开始的时候感觉,看上去,以为不是很难,但是在整个过程还是遇到了许多的问题..
抢答器在硬件连接好了以后进行了和代码的对接,结果出了许多问题…
- 团队精神欠佳,在张俊松同学的硬件和我写的代码对接以后出现了一些问题(如:板子连上电脑后二号舵机就开始不停命令的转动,LCD屏幕闪动等);此后发生了一些事情浪费了大量的时间,做了许多无用并且重复的事情,由于我比较轴,就对自己出错的地方进行反复排查,最后发现是因为接口改变了而我的代码没有改变,非常的尴尬,然后我就悄悄的把自己的代码改了.
- 舵机的接口了解的不清楚,在2560板子上,可以运行舵机的接口只有两个,这个知识不知道,耗费了大量的时间来排查这个错误,甚至还问学长了,最后张俊松同学发现了这个知识点,场面一度十分尴尬.
虽然整个对接的时间花费了一下午,但我认为确实值得的,张俊松和我也都在这过程中了解了彼此,相信我们俩以后的合作花费的时间会更少.
现在抢答器项目的一些元器件正在运送途中,到了以后抢答器项目就算完整结束了(代码我会贴在最后面,供大家参考.)
2.arduino
在完成抢答器的初代后,有过一段迷茫期,看了数据结构的第二章,敲了敲代码,也觉得无趣,就没有再看下去了,看了看网上的一些算法(回溯等),觉得非常的厉害,然而代码好长,就不是很想看了,翻了翻操作系统,找到了一个网站的视频,跟着看了几节,之后的内容因为他们的书和我的不一样,也就没有在看了,
3.日常学习两三事
最近这几天和组长在卓越二年级这个教室里学习,看到了学长学姐们做项目的态度与方法,感觉学习了很多,觉得我们这级只有我们两个,有点尴尬,很喜欢他们的这种状态,觉得这样的话进步会比自己一个劲的学有效率,他们也都很搞笑
自己在网上买了一些元器件,想试着尝试下光立方(就是那个8*8*8的一堆LED),当然啦,我怎么可能弄那么叼的东西呢,,,我想先弄个2*2*2的,大概的计划我也已经写出来了,就等着元器件了(^.^)
# include "TM1637.h"#define CLK 5 //四位数码管 //pins definitions for TM1637 and can be changed to other ports #define DIO 6 //四位数码管`#include <SoftwareSerial.h> #include <Servo.h> Servo myservo1; //创建一个舵机控制对象`Servo myservo2; Servo myservo3; #define txPin 5SoftwareSerial LCD = SoftwareSerial(0, txPin);// since the LCD does not send data back to the Arduino, we should only define the txPinconst int LCDdelay=10; // conservative, 2 actually works// wbp: goto with row & columnvoid lcdPosition(int row, int col) { LCD.write(0xFE); //command flag LCD.write((col + row*64 + 128)); //position delay(LCDdelay);}void clearLCD(){ LCD.write(0xFE); //command flag LCD.write(0x01); //clear command. delay(LCDdelay);}void backlightOn() { //s on the backlight LCD.write(0x7C); //command flag for backlight stuff LCD.write(157); //ght level. delay(LCDdelay);}void backlightOff(){ //s off the backlight LCD.write(0x7C); //command flag for backlight stuff LCD.write(128); //ght level for off. delay(LCDdelay);}void serCommand(){ //a general function to call the command flag for issuing all other commands LCD.write(0xFE);}TM1637 tm1637(CLK,DIO);int pinmod1=11; //led接口int pinmod2=12;int pinmod3=13;int button1=A1;//led按钮接口int button2=A2;int button3=A3;int b1=0; //led按钮int b2=0;int b3=0;int button0=A0; //加分按钮接口int b0=0;int a=0; //四位数码管int b=0; //四位数码管int c=0; //四位数码管int d=0; //四位数码管int k1=0;int b4=0;int button4=A4;int k2=0;int k3=0;void setup(){ pinMode(txPin, OUTPUT); LCD.begin(9600); backlightOn() ; clearLCD(); lcdPosition(0,0); Serial.begin(9600); pinMode(button1,INPUT); pinMode(button2,INPUT); pinMode(button3,INPUT); pinMode(button4,INPUT); pinMode(pinmod1,OUTPUT); pinMode(pinmod2,OUTPUT); pinMode(pinmod3,OUTPUT); pinMode(button0,INPUT); myservo1.attach(8); myservo2.attach(9); myservo3.attach(10); tm1637.init(); tm1637.set(BRIGHT_DARKEST ); //BRIGHT_TYPICAL = 2,BRIGHT_DARKEST = 0,BRIGHTEST = 7;}void loop(){ b1=analogRead(button1); if(b1>1000){ for(int i=0;i<400;i++){ //i 抢答器led,蜂鸣器显示 digitalWrite(pinmod1,HIGH); delay(1); digitalWrite(pinmod1,LOW); delay(1); } for(int j=5;j>=0;j--){ //j 倒计时显示 d=j; tm1637.display(0,a); tm1637.display(1,b); tm1637.display(2,c); tm1637.display(3,d); delay(1000); } while(1){ b0=analogRead(button0); //k 选手分值 b4=analogRead(button4); if(b0>1000){ k1++; clearLCD(); LCD.print(k1); delay(5000); clearLCD(); break; } if(b4>1000){ myservo1.write(0); // 指定舵机转向的角度 delay(700); myservo1.write(90); // 指定舵机转向的角度 delay(1000); // 等待15ms让舵机到达指定位置 break; } } } b2=analogRead(button2); if(b2>1000){ for(int i=0;i<400;i++){ //i 抢答器led,蜂鸣器显示 digitalWrite(pinmod2,HIGH); delay(1); digitalWrite(pinmod2,LOW); delay(1); } for(int j=5;j>=0;j--){ //j 倒计时显示 d=j; tm1637.display(0,a); tm1637.display(1,b); tm1637.display(2,c); tm1637.display(3,d); delay(1000); } while(1){ b0=analogRead(button0); //k 选手分值 b4=analogRead(button4); if(b0>1000){ k2++; clearLCD(); LCD.print(k2); delay(5000); clearLCD(); break; } if(b4>1000){ myservo2.write(0); // 指定舵机转向的角度 delay(700); myservo2.write(90); // 指定舵机转向的角度 delay(1000); // 等待15ms让舵机到达指定位置 break; } } } b3=analogRead(button3); if(b3>1000){ for(int i=0;i<400;i++){ //i 抢答器led,蜂鸣器显示 digitalWrite(pinmod3,HIGH); delay(1); digitalWrite(pinmod3,LOW); delay(1); } for(int j=5;j>=0;j--){ //j 倒计时显示 d=j; tm1637.display(0,a); tm1637.display(1,b); tm1637.display(2,c); tm1637.display(3,d); delay(1000); } while(1){ b0=analogRead(button0); //k 选手分值 b4=analogRead(button4); if(b0>1000){ k3++; clearLCD(); LCD.print(k3); delay(5000); clearLCD(); break; } if(b4>1000){ myservo3.write(0); // 指定舵机转向的角度 delay(700); myservo3.write(90); // 指定舵机转向的角度 delay(1000); // 等待15ms让舵机到达指定位置 break; } } }}
阅读全文
0 0
- 暑假的第好几周了
- 暑假集训 第五天了
- 【POJ3983】又一次被暑假第一天的题爽虐了
- 暑假的第一周
- 好几篇文章被CSDN的文档中心收录了
- 最近见到了好几个原来内地的学生
- 坑爹的ViewFlipper,花了我好几个小时
- 暑假集训 第二周 周四( 忘了第几天了 )
- 暑假第一天,很久没写代码了。求阶乘的位数。
- 该死的CSDN,为什么我有一个写了好几篇文章的blog用不了了
- 今天做的内核升级,花了好几个小时,结合网上资料,学习了一下
- 终于解决了一个Win7 下 VS 编译的问题,困扰了我好几个月
- 连续熬夜了好几个晚上了
- 连续第4个暑假没有休息了
- 愉快的暑假集训开始了!!!
- 国内已经有好几本打着"matlab" "金融"的口号的图书了
- 网上找了好几的redhat5,都没有看见好的资源!
- 暑假的第二周
- 【补充】uboot makefile 中的unconfig
- 古文觀止卷七_龍說/馬說_韓愈
- I/O栈链路优化
- ubuntu下 tftp服务器的搭建
- Leetcode OJ 127 Word Ladder [Medium]
- 暑假的第好几周了
- 【SGU495】 Kids and Prizes
- Nginx简介
- 剑指offer 和为S的两个数字(2)
- Cookies 和 Session的区别
- 6. 可视化实例
- C++ lambda 表达式
- osg::Geomtery多图元重叠闪烁问题
- 11.编写COM常用IDL指令和注意事项详解