2016年7月26日 星期二
windows架git server
http://pclevin.blogspot.tw/2016/03/apache-http-server.html
http://pclevin.blogspot.tw/2016/03/apache-httpd.html
https://httpd.apache.org/docs/current/platform/windows.html#down
http://www.apachehaus.com/cgi-bin/download.plx
2016年7月24日 星期日
[BLDC]使用Ardunio控制BLDC參考資料
BLDC Motor Controller Using Arduino
https://forum.arduino.cc/index.php?topic=276741.0
BLDC Motor Control with Arduino, salvaged HD motor, and Hall Sensors
http://www.instructables.com/id/BLDC-Motor-Control-with-Arduino-salvaged-HD-motor/
Arduino CDROM BLDC Motor Driver, Enhanced Performance
http://www.instructables.com/id/Arduino-CDROM-BLDC-Motor-Driver-Enhanced-Performan/
Spining BLDC(Gimbal) motors at super slooooooow speeds with Arduino and L6234
http://www.berryjam.eu/2015/04/driving-bldc-gimbals-at-super-slow-speeds-with-arduino/
Driving a three-phase brushless DC motor with Arduino – Part 1. Theory
http://elabz.com/brushless-dc-motor-with-arduino/
Brushless DC (BLDC) motor with Arduino – Part 2. Circuit and Software
http://elabz.com/bldc-motor-with-arduino-circuit-and-software/
2016年7月23日 星期六
[Arduino]Day6-超音波感測器
下面範例是計算出距離後,如果距離大於100,就顯示其中一顆LED,沒有就另一顆亮
int ECHO_Pin=4; // ultrasonic ECHO
int TRIG_Pin=5; // ultrasonic TRIG
int Near_LED = 9;
int Far_LED = 10;
void setup()
{
Serial.begin(9600);
pinMode(ECHO_Pin, INPUT);
pinMode(TRIG_Pin, OUTPUT);
}
void loop()
{
digitalWrite(TRIG_Pin, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_Pin, HIGH); // Pulse for 10 micro sec to trigger ultrasonic detection
delayMicroseconds(10);
digitalWrite(TRIG_Pin, LOW);
int distance = pulseIn(ECHO_Pin, HIGH); // Read receiver pulse time
distance= distance/58; // Transform pulse time to distance
Serial.println(distance); //Output distance
if(distance > 100)
{
digitalWrite(Far_LED, HIGH);
digitalWrite(Near_LED, LOW);
}else{
digitalWrite(Far_LED, LOW);
digitalWrite(Near_LED, HIGH);
}
delay(50);
}
超音波模組運作原理
http://coopermaa2nd.blogspot.tw/2012/09/hc-sr04.html
http://mcudiy.blogspot.tw/2012/12/usm-ultrasonic-module-hc-sr04.html
datasheet
https://www.google.com.tw/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&cad=rja&uact=8&ved=0ahUKEwjPxZqsgIrOAhUDEpQKHfkICa4QFggnMAI&url=http%3A%2F%2Fwww.micropik.com%2FPDF%2FHCSR04.pdf&usg=AFQjCNGQka2FGj3tvAzU2HEDfgZvvCQpNw&sig2=axF9GWdLv_KJdj3alHP1aA
DataSheet裡的波形圖
新學到的
PulseIn:量測input腳位的高電位或低電位脈波長度
https://www.arduino.cc/en/Reference/PulseIn
2016年7月22日 星期五
[Arduino]Day5-Read_GPIO-投票機
利用讀取GPIO做投票機功能
按下按鍵,對應LED亮起
注意按鍵跟LED都要經過電阻接地
//投票機
int YesLed=10;
int NoLed=9;
int YesPin=7;
int NoPin=6;
int Yes;
int No;
void setup() {
// put your setup code here, to run once:
pinMode(YesLed,OUTPUT);
pinMode(NoLed,OUTPUT);
pinMode(YesPin,INPUT);
pinMode(NoPin,INPUT);
}
void loop() {
// put your main code here, to run repeatedly:
Yes = digitalRead(YesPin);
if(Yes == LOW)
{
digitalWrite(YesLed,LOW);
}else{
digitalWrite(YesLed,HIGH);
}
No = digitalRead(NoPin);
if(No == LOW)
{
digitalWrite(NoLed,LOW);
}else{
digitalWrite(NoLed,HIGH);
}
}
2016年7月21日 星期四
[Arduino]Day4-傾斜開關-結合蜂鳴器
手邊的傾斜開關,又叫滾珠開關,英文名稱HDX 2801 double ball bearing vibration
運作原理可以參考下面連結的網頁
https://sites.google.com/a/jbps.ttct.edu.tw/zhi-ben-guo-xiaoarduino-yan-xi/di-shi-san-ke-qing-xie-kai-guan-led-deng-pao
型號HDX-2801
https://world.taobao.com/item/36393326058.htm
int Buzzer = 7;//蜂鳴器腳位
void setup()
{
pinMode(8,OUTPUT);//設定LED腳位
pinMode(Buzzer,OUTPUT);//
}
void loop()
{
int i;
while(1)
{
i=analogRead(5);// 讀取ADC 5的數值
if(i<200)//如果小於 512(2.5V)
{
digitalWrite(8,HIGH);//亮LED
}else{
digitalWrite(8,LOW);//滅
for(i=0;i<120;i++)//製造一個頻率
{
digitalWrite(Buzzer,HIGH);//發聲
delay(1);//delay 1ms
digitalWrite(Buzzer,LOW);//無聲
delay(1);//delay 1ms
}
}
}
}
[Arduino]Day3-Buzzer
蜂鳴器只有正負兩隻腳位
正給電就會發出聲音,
必須製造高頻頻率,才會是人耳較能接受的聲音
如果沒有高頻,直接給3.3V,則只有通電瞬間一小聲"波"就沒聲音了。
int Buzzer = 7;//蜂鳴器腳位
void setup() {
// put your setup code here, to run once:
pinMode(Buzzer,OUTPUT);//
}
void loop() {
// put your main code here, to run repeatedly:
unsigned char i,j;
while(1)
{
for(i=0;i<120;i++)//製造一個頻率
{
digitalWrite(Buzzer,HIGH);//發聲
delay(1);//delay 1ms
digitalWrite(Buzzer,LOW);//無聲
delay(1);//delay 1ms
}
for(i=0;i<150;i++)//製造另一個頻率
{
digitalWrite(Buzzer,HIGH);//發聲
delay(2);//delay 2ms
digitalWrite(Buzzer,LOW);//無聲
delay(2);//delay 2ms
}
}
}
2016年7月17日 星期日
[Arduino]Day2-ADC-PWM
由ADC讀取電壓
並將數值經由PWM丟往LED
ADC腳位在A0,接到可變電阻的輸出腳位
Arduino的D11可兼做PWM,接到外部LED就可以顯示亮滅
用analogWrite就可以寫入PWM
int potpin=0;
int ledpin=11;
int Pot_Value=0;
void setup() {
// put your setup code here, to run once:
pinMode(ledpin,OUTPUT);
Serial.begin(9600);
}
void loop() {
// put your main code here, to run repeatedly:
Pot_Value=analogRead(potpin);
Serial.println(Pot_Value);//一邊將數值往序列埠顯示
analogWrite(ledpin,Pot_Value/4);//對Digital腳位寫入PWM
delay(10);
}
2016年7月16日 星期六
[Arduino]Day1-安裝與Hello world
1.手邊的Arduino是UNO-R3
接上USB就能自動抓到驅動
2.官網
https://www.arduino.cc/
到download抓開發軟體,選just download即可
https://www.arduino.cc/en/Main/Donate
目前版本
1.6.9
3.硬體設定
在工具列->工具->板子,選擇UNO
4.第一個練習 Hello world
int input_char;
int ledpin=13;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);//設定鮑率
pinMode(ledpin,OUTPUT);//設定pin13為輸出,因為他接在LED
}
void loop() {
// put your main code here, to run repeatedly:
input_char=Serial.read();//讀取串列埠
if(input_char=='R')//如果收到'R'
{
digitalWrite(ledpin,HIGH);//將Pin13設定High,亮LED
delay(500);//Delay0.5秒
digitalWrite(ledpin,LOW);//將Pin13設定Low,滅LED
delay(500);
Serial.println("Hello World!");//顯示Hello world
}
}
6.右邊箭頭上傳
7.工具列->工具->序列埠控制器
叫出序列埠控制器
打入大寫R,按傳送,就可以看到LED亮,滅,序列埠監控出現"Hello World!"
訂閱:
文章 (Atom)
[Sensor]MPU92/65
MPU92/65是很久以前買的感測器 基本上有加速度計、陀螺儀、電子羅盤、溫度計 以下是該電子商城的介紹 https://www.factoryforward.com/product/gy-87-mpu-9265-3-axis-9-dof-attitude-gyro-magnet...
-
程式碼 ========================================================= #include <Servo.h> #define Servo_Pin 7 // 定義伺服馬達輸出腳位(...
-
昨天發現NB風扇一直發生出運轉聲音,之前使用都不會這樣, 打開工作管理員,發現有個程序固定會占用30%左右的CPU效能, 如下 wlanext.exe Windows Wireless LAN 802.11 Extensibility Framework 這個程序只知...
-
本文引用自 https://www.arduino.cn/thread-12445-1-1.html // 控制 LED 亮滅, 每秒閃爍 5 次: 亮 0.1 秒滅 0.1 秒 ... // Prescaler 用 64 volatile int ggy...