2019年3月4日 星期一

單板電腦KVM最速配置

單板電腦KVM最速配置
Asus tinker board nt$2540
10inch LCD hdmi 800x600 with ac adapter nt$937
12v to 5v 3A regulator $50
wireless keyboard mouse nt$ 500



2019年2月22日 星期五

軟碟機音樂盒,rosegarden,moppy

使用moppy2程式庫進行軟碟機連接與驅動
連接的方式moppy2的github都有說
要注意電源供應是否足夠
不然磁碟機可能會動作異常或是不會動作
線路接好包括電源和兩隻控制信號及一條接到地的磁碟機致能信號
接好後通電 磁碟機的綠燈會亮

接著在網路找到midi檔
用rosegarden察看midi

先篩許需要的音軌
moppy預設是接八台軟碟雞
我這次則是接六台
因此midi檔內的音軌只能指定6種樂器(編號1到6)
也可以多個音軌指向同一種樂器
但同一時間不能有音符同時演奏
會倒置moppy播放失敗
嚴重時軟碟機會因此當機
需要重新上電才能復元

確認midi中的音符的最高音階沒有超過C5
如果有超過則需要將每一個音軌內的音符都下移一樣的音階
降key的意思
一般抓八度音階
在rosegarden裡面的步驟是這樣:
1.點擊單一音軌
2.進入matrix editor
3.全選所有音階
4.按一下CTRL-DOWN
則全部的音階會降下一個八度
依序做完每一個音軌

完成後執行匯出midi檔
並且用midi播放軟體試聽有沒有奇怪的地方

rosegarden因為是midi編輯軟體
所以本身的播放需要連接合成器才能發出聲音
合成器可以是外部硬體也可以是軟體模擬
目前我還沒有成功讓rosegarden透過軟體合成器發生
因此需要先匯出midi檔之後再用其他軟體播放

然後接著用moppy的一個用java寫的播放軟體
將midi檔輸出給arduino內的moppy軔體
對軟碟機進行驅動與發聲

2018年4月11日 星期三

數位收音機

這是用一顆4066作為混波器的數位收音機電路,將高頻無線電訊號經過混波後降頻,分成IQ兩信號輸入音效卡的Line in,然後用電腦的SDR程式將Line in的IQ信號做FFT再反FFT以及解調成語音











https://photos.app.goo.gl/DLEfr7LpoIEopcmy1






2018年3月2日 星期五

2017期末盤點

掌上型電動玩具

金屬探測器

熱感自拍器-樹莓拍

真空管耳機擴大機

大人的玩具

2017年12月12日 星期二

如何使用shell script到工會網站下載廠商名錄


首先到工會網站找到可以搜尋廠商名錄的地方
用全部搜尋的方式把所有的廠商列表出來
他會自動分頁沒關係
找到url query string的規則,或許是加上&page=頁數
就可以列出該頁的搜尋結果


#!/bin/sh
for ((i=131 ; i<324 ; i++)); do
wget -r --accept "CompanyDetail*" "http://www.teemab2b.com.tw/FindPdtCmp.aspx?key=&kind=company&pro=company%2ccompanyKeyword&culture=zh-TW&page=$i"
done

然後用wget的方式
利用不同的query string
把網頁一頁頁抓下來
只要搜尋結果的頁面
因此可以用「白名單」的方式限制抓取對象

#!/bin/bash

#`ls CompanyDetail*`
for i in CompanyDetail*; do
  #echo $i
  name="$(grep ContentPlaceHolder_Main_Label_companyName "$i" | sed 's/^.*">//g' | sed 's/<.*$//g')"
  tel="$(grep ContentPlaceHolder_Main_Label_CmpTel "$i" | sed 's/^.*">//g' | sed 's/<.*$//g')"
  url="$(grep ContentPlaceHolder_Main_HyperLink_url "$i" | sed 's/^.*">//g' | sed 's/<.*$//g')"
  addr="$(grep ContentPlaceHolder_Main_Label_Addr_Cht "$i" | sed 's/^.*">//g' | sed 's/<.*$//g')"
  echo -e $name '\t' $tel '\t' $addr '\t' $url
done

最後將結果存成tab分開的csv
對mac的excel來說這樣的csv匯入會讓中文變亂碼
因此還要用「文字編輯」打開這個csv
再另存成utf-16編碼的文字檔
這樣就可以將結果以excel來呈現了

2017年11月21日 星期二

視覺暫留影像產生器

從tiny85接出六個LED 以掃描方式顯示
使用UNO設定為arduino as ISP 作為tiny85的燒錄器
下載attiny的板子管理員
https://github.com/damellis/attiny

在arduino as ISP的模式下
只要目標板子選定例如這裡是tiny85
就可以執行一般的程式上傳功能
如果要設定tiny85的運作速度例如選擇internal 8 MHz
則需要執行「燒錄Bootloader」的功能才能將tiny85的設定寫入

 將固定圖案資料陣列依序以一行一行的方式顯示出來

接著預計使用tiny85直上USB的方式進行開發
這樣就是一套可玩可學的套件了