MCU單晶片韌體設計

2016年2月27日 星期六

PCB Layout 入門教學(七) ---產生BOM表



在PCB Editor 中可以產生BOM (Bill of Material) File。BOM File 就是一張表, 描述這個PCB板上所使用到的零件 (含IC、被動零件及連接器), 所以有了BOM表就知道要銲好一片PCB所需的材料有那些了。

好備好料

如何產生BOM表

在Kicad的PCB Editor, 點選 File->Fabrication Outputs->BOM File, 即可產生一個 .csv 的Excel 檔案。



PCB上的金色字


一般情況, PCB上文字/線條只是放在Silkscreen 層, 不論是在Front或是back。若要放在Soldermask也是可以的。放在Soldermask 文字上會比較銳利、清盺且是金色的顏色。為什麼是金色, 因為字雕刻在防銲層,其下方底下是就是銅箔,所以是金色的顏色。

要做到Soldermask 上有金色字, 表示要在刻文字的下方,先鋪好一塊銅箔區域。在用PCB 軟體, 找到類似 "Fill zone"的工具 , 然後不必關連到任何一個pad ,形成 isolated zone, 因為只是為了有金色字 ^__^





PCB 電路柀佈局

2016年2月26日 星期五

Raspberry Pi的 System timer 文件上沒說的3件事



關於Raspberry Pi的 System timer 文件上沒說的3件事


  1. Timer 頻率是1 MHz  
  2. Timer Compare  0,1,2,3 輸出的中斷,分別對應到 GPU Interrupt Table 的IRQs 0-3 
  3. Timer Compare 0及2 的輸出,GPU 內部已拿去使用了, 故ARM 只能用1和3。
通常當中斷產生後,中斷控制器會以pending的作法來控制同一中斷不再產生。所以當中斷處理程式結束後,必須做清除pending的動作。BCM2835中斷控制器的設計中並沒有清除的方法,這個部分都交由各設備控制器自己來執行清除pending bit的動作。


一個程式範例如下

2016年2月17日 星期三

Raspberry Pi for BME280



BME280, the precision sensor from Bosch, is soldered onto PCB. Not only the pressure and the temperature, this sensor can measure humidity.  It uses both I2C and SPI (supports 3-, 4-wire SPI) interface.


Specifications:
  • Supply Voltage: 1.8 - 3.3 V DC
  • Interface: I2C (up to 3.4MHz), SPI (up to 10 MHz)
Operational range:
  • Temperature: -40 to +85°C
  • Humidity: 0-100%
  • Pressure: 300-1100 hPa
Resolution:
  • Temperature: 0.01°C
  • Humidity: 0.008%
  • Pressure: 0.18Pa
Accuracy:
  • Temperature: +-1°C
  • Humidity: +-3%
  • Pressure: +-1Pa
I2C address
  • SDO LOW : 0x76
  • SDO HIGH: 0x77
Includes
  • Sensor module x 1
  • 1x7 male header x 1
DataSheet : 











GPS封裝格式與$GPRMC解析

NMEA封裝格式
是由美國國家海洋電子協會(National Marine Electronics AssociationNMEA)制定的GPS協定標準規格,其制定了GPS 上的所有資料格式與資料傳輸的通訊協定,其中還訂下了所有航海電子儀器用的通訊標準,而這些介面協定採用ASCII碼輸出方式,協議定義了若干代表不同含義的語句,語句格式如下所示。
符號(ASCII
定義
HEX
DEX
說明
$
起始位
24
36
語句起始位
  aaccc
地址域
  

前兩位為位識別符,後三位為語句名
“,”
域分隔符號
2C
44
域分隔符號
ddd……ddd
資料塊


發送的資料內容
“*”
校驗和符
2A
42
星號分隔符號,表明後面的兩位數是校驗和
Hh
校驗和


校驗和
/
終止符
0D,0A
13,10
回車,換行
NMEA0183介面協定定義的主要語句有:GGAGLLGSAGSVMSSRMCVTGZDA等。表13-2介紹這些語句所包含的具體內容。

13-2 常見NMEA-0183語句內容[38]

語句
語句內容
GGA
UTC時間、緯度值、經度值、定位狀態(無效、單點定位、差分)、觀測的GPS衛星個數、HDOP值、GPS橢球高、天線架設高度、差分數據齡期、差分基準站編號、校驗和
GLL
UTC時間、緯度值、經度值、定位狀態(無效、單點定位、差分)、校驗和
GSA
定位模式(M-手動,強制二維或三維定位;A-自動,自動二維或三維定位)、定位中使用的衛星ID號、PDOP值、HDOP值、VDOP
GSV
視野中的GPS衛星顆數、PRN編號、衛星仰角、距正北的角度(方位角)、信噪比
MSS
信標台的信號強度、信噪比、信標頻率、串列傳輸速率、通道號
RMC
UTC時間、定位狀態(A-可用,V-可能有錯誤)、緯度值、經度值、對地速度、日期等
VTG
對地速度等
ZDA
UTC時間、年、月、日、當地時區、時區的分鐘值等