用户工具

站点工具


os:tep:shaizi

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

后一修订版
前一修订版
os:tep:shaizi [2016/05/16 13:24]
admin 创建
os:tep:shaizi [2016/05/16 13:49] (当前版本)
admin
行 2: 行 2:
  
 {{ :​os:​tep:​shaizi.gif?​nolink |}} {{ :​os:​tep:​shaizi.gif?​nolink |}}
 +
 +----
 +
 +史上最透明电子筛子,代码公开如下:
 +
 +<code C++>
 +
 +unsigned char number[16] = {
 +  //​PCDEGFAB ​
 +  0b01110111, //0
 +  0b01000001, //1
 +  0b00111011, //2
 +  0b01101011, //3
 +  0b01001101, //4
 +  0b01101110, //5
 +  0b01111110, //6
 +  0b01000011, //7
 +  0b01111111, //8
 +  0b01101111, //9
 +  0b00000010,
 +  0b00000001,
 +  0b01000000,
 +  0b00100000,
 +  0b00010000,
 +  0b00000100
 +  };
 +
 +  void dis_num(unsigned char num){
 +  for (int i = 0; i < 8; i++){
 +    digitalWrite(i + 6, !(number[num]&​(0x80 >> i)));
 +  }
 +}
 +
 +
 +void setup() {
 +  // put your setup code here, to run once:
 +  randomSeed(analogRead(0));​
 +  pinMode(2, INPUT);
 +  pinMode(3, INPUT);
 +  pinMode(4, INPUT);
 +  pinMode(5, INPUT);
 +  pinMode(6, OUTPUT);
 +  pinMode(7, OUTPUT);
 +  pinMode(8, OUTPUT);
 +  pinMode(9, OUTPUT);
 +  pinMode(10, OUTPUT);
 +  pinMode(11, OUTPUT);
 +  pinMode(12, OUTPUT);
 +  pinMode(13, OUTPUT);
 +}
 +int randNumber = 0;
 +void loop() {
 +  if (digitalRead(3) == LOW){
 +    delay(50);
 +    if (digitalRead(3) == LOW){
 +      randNumber = random(6)+1;​
 +    }
 +    int j = 0;
 +    while (digitalRead(3) == LOW){
 +      dis_num(10+j);​
 +      delay(50);
 +      j++;
 +      if (j > 5) j = 0;
 +    }
 +    dis_num(randNumber);​
 +  }
 +}
 +
 +</​code>​
· 最后更改: 2016/05/16 13:24