2015年2月9日 星期一

CC3200 使用

這是歷經各種加熱的模組....
總算能上code了,加了兩個東西,
第一個是reset button,我當初設計的時候想說這東西應該不常用才是,結果實際上傳的時候才發現說他會要求reset device....然後把tact sw放上去之後才發現這空間有點尷尬,快要擠到天線的走線了
第二個是切換UART上傳,和正常模式的switch,我原本以為說只要選其中之一就好,結果才發現要做切換....所以就把一個SMD的切換開關黏在Debug那排針的後面
 然後先從上code的手續開始,就直接用uniflash選擇要的bin檔,之後按program,會要求reset,這時候按下reset 3s就可以了.
然後這是AP mode打開之後進去的config webpage

CC3200MOD CC3100MOD Breakout board

 
於是Ti又出了下一代的CC3200與CC3100,但是有鑑於前一次CC3000,這兩個新的IC都只有QFN封裝的版本,原本我也打算用QFN來試試看,但是一畫完原理圖就.....覺得還是算惹.

所以就等到Ti出了module版本之後才開始做板子,與CC3000相比較之下的話,這次的PIN密度高很多,大概是因為要容納CC3200本身MCU的Debug和IO pin,板子當初設定是以比較複雜的CC3200MOD為優先,設計上與CC3200MOD Launchpad 接近,

UART轉USB的IC挑的是CP2102,之前用過覺得還不錯,與CH340比起來,少一個震盪器,而且價錢也沒高多少
比較大的問題反而是出在LDO的部分,因為這模組"瞬間"耗電量會到0.5A,所以LDO當然不能太弱,手邊最大的SOT-23只有400ma的,也只好上了,希望這個大電容撐得住

 



2014年12月21日 星期日

LMX9838 USB stick

總之這次是把LMX9838做成一個USB的裝置,用的是CP2102做UART轉USB
架構上大致就是RX-TX TX-RX CTS-RTS RTS-CTS,把Flow control也補了上去
另外就是保留外接32.768khz震盪器的空間,應該勉強可以懸在空中啦XD
然後就是把LMX的LED燈拉出來兩個,

這東西的好處大概就是可以一次接7個dev了吧
PCB連結,我把這電路Share出來了

2014年12月9日 星期二

AFE4400 with Arduino

 總之這次來做個biosensor,
這是利用AFE4400做成的一個測血氧以及心跳的模組,利用一個波長的LED可以看出來心跳的波形,如果再用另一個波長的LED就可以透過比值計算血氧量,AFE4400的工作就是高速切換不同波長的LED以及讀取PN二極體的電流量經由內部類比迴路的處裡之後的電壓.

可以看到一個是發射兩種波長的LED,另一個是接收用的PN二極體

電路還算是有點多東西,而且是QFN....這是我第一次焊接測試成功這種封裝的IC,比起CC3000來說難的多,因為CC3000可以透過ㄉㄨㄞˉㄉㄨㄞˉ的感覺知道說已經焊在一起了,但是AFE體積不大,錫量也很少,基本上只能壓下去然後希望成功這樣QQ
幸好這IC有些輸出可以讓我知道他焊接正常,第一個是VCM以及BG會有電源輸出,附帶一提,VCM是作為接收器的遮蔽用,BG是Bandgap輸出
另外還有4Mhz的clock輸出,
至於LED以及PN有沒有接好,可以利用DIAG讀取狀態,他會檢測有沒有地方短路或是空接
確定完之後就可以開始讀資料了
我之前找到一個Library可以給Arduino用的,結果他竟然寫說這個Code不能用
所以改阿改的,拿LA出來看資料長怎麼樣真的好用,一下就看到問題點,總之改好的東西我放在這https://github.com/will127534/AFE4400


上面是raw,下面是平均10個資料後的輸出

基本上SPI介面長這樣
這是讀取六個ADC data的狀況,可以看到ADC_RDY觸發Interrupt,然後Arrduino先寫說我要讀資料,在讀取完六個後再寫說我不用讀資料惹,以上請參閱Datasheet.

接線的話SPI接SPI,CS接10,RDY接2,RST+PWN接3,4,其他就接電源

接下來就是要分析心跳和血氧量了

這東西搞了我一整個周末...先是改Library的各種bug,之後是改各種參數....從Led current到I-V轉換的參數,到放大器等等
Analog果然很難搞