Search

2012年1月21日 星期六

Arduino - Nixie Tube

前言:


    因為線不夠所以只有接上秒數的個位數,然後接法也很簡單(如下圖),首先把升壓模組(Nixie Power Supply)的正極接到電阻然後接地要跟Arduino共接,這顆電阻的選用要這樣計算:假設升壓模組調到200v的電壓然後Nixie Tube用IN-16這根,他的驅動電壓是140v電流建議2mA因此公式 (200v - 140v) / 2mA = 30k,所以選用30k左右而且2W~3W的電阻即可,然後這個電阻在接到TLP521的4號腳而TLP521的3號腳接到Nixie Tube的白色腳,在將TLP521的1號腳接到220ohm的電阻在接到Arduino digital pin 2以及將TLP521的2號腳接地,然後將SN74141(BCD碼IC)的5號腳接上Arduino的5v,而12號腳接地然後相對應的數字0~9(下圖沒把線畫出)接到Nixie Tube,最後將SN74141的3、4、6、7號腳分別接到Arduino digital pin 5、8、6、7,一樣四個腳都要串上一個220ohm的電阻。




2012年1月20日 星期五

Arduino - DS1307時鐘IC

前言:

    DS1307是一顆萬年曆時鐘IC,用I2C作資料傳輸的介面,接法很簡單(如下圖)只要把SDA、SCL分別接上Arduino analog pin 4、5即可,晶體振盪器是32.768Khz音叉式,然後VCC接上Arduino的5V電壓Vbat接上3V電池接著地共接即可,至於電阻可有可無我都接220ohm,其實這是接下來要作Arduino版本的真空管時鐘要用的。

    要注意的是,假設你要直接用I2C操作,則每次讀寫都要先寫入0x00,用來重置register pointer,因為register pointer在操作時會一直累加。而記得在一開始時初始化address 0x00 bit7 = CH使時鐘運作,ex:register pointer = 0X00,I2C.Write(0x7F & sec);




實驗:



程式:



#include <WProgram.h>


#include <Wire.h>

void setup()
{
  Serial.begin(9600);
  
  RTC.stop();
  RTC.set(DS1307_SEC,1);
  RTC.set(DS1307_MIN,23);
  RTC.set(DS1307_HR,12);
  RTC.set(DS1307_DOW,4);
  RTC.set(DS1307_DATE,15);
  RTC.set(DS1307_MTH,7);
  RTC.set(DS1307_YR,10);
  RTC.start();

}

void loop()
{
  
  Serial.print(RTC.get(DS1307_HR,true));
  Serial.print(":");
  Serial.print(RTC.get(DS1307_MIN,false));
  Serial.print(":");
  Serial.print(RTC.get(DS1307_SEC,false));
  Serial.print(" ");
  Serial.print(RTC.get(DS1307_DATE,false));
  Serial.print("/");
  Serial.print(RTC.get(DS1307_MTH,false));
  Serial.print("/");
  Serial.print(RTC.get(DS1307_YR,false));
  Serial.println();
  
  delay(1000);
}




Arduino - 快門線

前言:

    最近在玩DSLR+M42老鏡頭,然後突然想到可以作一條快門線(我主要用B快門拍夜景),首先先去找一個有左右聲道的2.5mm接頭,然後分別焊上三條線(如下圖),2.5mm接頭有三段最前面是左聲道、中段是右聲道、最後一段是接地,我買的接頭焊上紅色線的是左聲道、藍色是右聲道、黑色是接地,當最前段(左聲道)與接地導通時DSLR就會按下快門,當中段(右聲道)與接地導通時DSLR會自動對焦(如果鏡頭可以)。






2012年1月14日 星期六

學期結束

其實我期末都在想這個學期有什麼收穫,可是很遺憾的我覺得跟之前學校一樣,大概只有線代讓我有學到東西的感覺,至於其他的還是要靠自己研究這點我從高中就很清楚了看來不管去哪間學校都一樣。

然後這學期OOP用JAVA上課,其實我都沒寫過JAVA大概就期末作業看document把他當C++寫,寫了一個小遊戲不過老師說這個交下學期的視窗程式會比較好,所以只完成20%左右然後又寫了老師指定的純文字資料管理...JAVA也有像C++ STL的東西可以用,感覺也是跟C++ template同個概念但是沒有深入研究所以不清楚有無差別,可是JAVA有很多設計很詭異這點讓我寫作業那兩天很火大...總之我不想在寫JAVA了...

下禮拜一回高雄我的年假就算開始了,最近研究一些framework的設計,我打算把之前寫的graphics framework砍掉重寫一次實踐研究的方法,還有Arduino管鐘也要來完成打算用GPS來校時,然後用74141+光耦合器去作多工掃描電路,這樣就可以用一顆74141跟六顆光耦合器分成六個時間片段開關數字管達到視覺暫留。

總之在台中的第一個學期結束了,感謝很多班上不錯的同學,也認識很能聊的人真的很棒!