分类 MikuDuino 下的文章 - 炫Q香蕉派

分类 MikuDuino 下的文章

MikuDuino吸顶灯改造(三)

草稿代码,达到预期效果,有时间优化吧

WiFiServer server(80);

int ioON = 12;
int ioOFF = 14; 
int ioW = 2;
int ioY = 15; 

void setup() {
  Serial.begin(115200);
  delay(10);

  // prepare GPIO2
  pinMode(ioON, OUTPUT);
  digitalWrite(ioON, 1);
  pinMode(ioOFF, OUTPUT);
  digitalWrite(ioOFF, 1);
  pinMode(ioW, INPUT);
  pinMode(ioY, INPUT);
  // Connect to WiFi network
  Serial.println();
  Serial.println();
  Serial.print("Connecting to ");
  Serial.println(ssid);
  
  WiFi.begin(ssid, password);
  
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.println("WiFi connected");
  
  // Start the server
  server.begin();
  Serial.println("Server started");

  // Print the IP address
  Serial.println(WiFi.localIP());
}

- 阅读剩余部分 -

MikuDuino吸顶灯改造(二)

灯的部分准备好后,就要准备控制部分了,本次选用了ESP8266,由于很久没有弄了,所以要温习一下,不知道GPIO15的绿灯为什么一直亮,先不管了,从blink开始,控制GPIO12号的红灯闪烁,不要忘了条线,有些板子可以自动下程序,有些就要手动按下boot再加电才可以,好啦,上程序。(LOW亮HIGH灭,别问我怎么发现的)

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin 13 as an output.
  pinMode(12, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(12, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);              // wait for a second
  digitalWrite(12, LOW);    // turn the LED off by making the voltage LOW
  delay(5000);              // wait for a second
}

- 阅读剩余部分 -

MikuDuino吸顶灯改造(一)

小撸说隔壁有特价的吸顶灯卖,只要3块还包邮,再去的时候已经涨到6块5了,不过也很核算,买来一个改造玩.

30.jpg

这个灯除了螺丝扎手外还是听好玩的,说是三色灯,不过可别以为是RGB,分为冷色(纯白)、暖色(黄白)和双色(一起亮),是这三种颜色,靠反复开关变换“颜色”,经测试记忆时效大概也就5秒,应该是通过电容实现的。

- 阅读剩余部分 -

MikuDuino来了(基于MikuPi的Arduino库)

仅仅是一个开始,也仅仅能点灯,算作一种轻量级库的尝试吧
https://github.com/bpiq/MikuPi
期间参考了很多前辈的资料,首先是Gordon's WiringPi,然后是sinovoip's BPI-WiringPi和tjCFeng's ClassA20等
要写一个轻量级的库看似简单,但对于一个没有linux和c基础的MikuQ来说,困难重重

1、要判断板卡的型号,目前也只能通过数内核的办法粗分BPI-M2+和BPI-M3
2、学习如何写动态库和如何安装,参考wiringPi
3、学习写makefile编译和安装,勉强通过还不会写build脚本
4、简单的gpio控制,参考cubieboard
5、gpio映射,结果发现GPIO L不受控,后来参考BPI-WiringPi
6、学用github,暂时还不太会写markdown
7、定义Arduino的结构和IO
8、其它各种c的问题,找不到头文件,重复定义,编译错误,and so on

最终算是出来了一个雏形,可以点灯了,结果还被大球抢了先
http://forum.banana-pi.org.cn/thread-1324-1-1.html

安装起来很简单

git clone https://github.com/bpiq/MikuPi.git
cd MikuPi
sudo make

然后就可以运行例子了

cd examples
gcc -Wall -o blink blink.c -lMikuDuino
sudo ./blink

看大球说和Arduino还有区别,继续修改了blink-qubot.c,是不是更像了,这里用到的13是wiringPi定义的13,对应物理21脚,也可以写成D21,这个是MikuDuino的定义,更方便对应。