每次寫入資料到 AT89S52 都要重新接駁一大堆線在下覺得非常麻煩
因此在下尋找一些模組及配件可以方便安裝 AT89S52 並寫入資料的工具
因此在下尋找一些模組及配件可以方便安裝 AT89S52 並寫入資料的工具
AT89S52模組
AT89S52模組
電路板
電路板 正面
電路板 背面
在下在電路板的相片上標籤零件名稱,方便了解零件佈局
電阻
2粒1KΩ電阻 及 2粒10KΩ電阻
陶瓷電容
1粒104pF陶瓷電容 及 2粒30pF陶瓷電容
排阻
9針10KΩ排阻
焊接時要留意排阻的 第1引腳標示,避免焊接錯誤的方向
印有點的方向為第1引腳,其餘的都是連著電阻
103 是 SMD電阻的數字碼,意思是 10 * 10^3 = 10000
焊接時要留意排阻的 第1引腳標示,避免焊接錯誤的方向
印有點的方向為第1引腳,其餘的都是連著電阻
103 是 SMD電阻的數字碼,意思是 10 * 10^3 = 10000
IC連接器 及 石英晶體振盪器
1排3孔IC連接器
1粒11.0592MHz石英晶體振盪器
石英晶體振盪器 連接到 IC連接器
方便替換 石英晶體振體器`
LED
綠色LED 顯示測試訊號
紅色LED 顯示電源狀態訊號
焊接 LED 前,要注意方向
正常設計上 LED 正極引腳較長,負極引腳較短,但不要依靠引腳的長短判斷正負極,因為引腳可以被剪裁
LED 外環並非完整的圓形,正極方向外環為圓形,負極方向外環被削平
有部分 LED 外環是方形設計,無法用外觀區分,便要觀察 LED內部 ,正極方向較小,負極方向較大
(圖片來源:維基百科)
正常設計上 LED 正極引腳較長,負極引腳較短,但不要依靠引腳的長短判斷正負極,因為引腳可以被剪裁
LED 外環並非完整的圓形,正極方向外環為圓形,負極方向外環被削平
有部分 LED 外環是方形設計,無法用外觀區分,便要觀察 LED內部 ,正極方向較小,負極方向較大
(圖片來源:維基百科)
IDC連接器
方便將資料寫入到 89S52 的連接器
外接電源及接地引腳
模組有很多外接電源及接地引腳方便讓外接裝置連接
開關按鈕
連接主電源時的開關按鈕
按鍵按鈕
連接主電源時的重新啟動按鈕
電解電容
1粒 470uF 16V 電解電容 及 1粒 10uF 50V 電解電容
由於 電路板 上顯示 220uF ,因此在下將 470uF 的 電解電容 替換成 220uF 的 電解電容
留意:電解電容器(Electrolytic Capacitor) 的引腳 區分極性,負極有標示負號
另外使用高電壓的電容器要小心
高電壓電容器流電能夠令人死亡
使用電容器必須先放電,避免觸電
留意:電解電容器(Electrolytic Capacitor) 的引腳 區分極性,負極有標示負號
另外使用高電壓的電容器要小心
高電壓電容器流電能夠令人死亡
使用電容器必須先放電,避免觸電
電源插口
1個 內徑2.1mm外徑5.5mm DC電源插口
ZIF IC插座
一種方便安裝及卸除 IC 的 IC插座
訊號引腳
讓 89S52 傳送及接受訊號的引腳
(通常建議將訊號引腳焊接到正面,但在下喜歡將零件接駁到麵包板上使用
因此在下將訊號引腳焊接到背面,閣下不一定使用在下相同焊接方向)
(通常建議將訊號引腳焊接到正面,但在下喜歡將零件接駁到麵包板上使用
因此在下將訊號引腳焊接到背面,閣下不一定使用在下相同焊接方向)
安裝 89S52
將 89S52 安裝到 模組上
ICSP
ICSP 稱為 電路序列編程 (In-Circuit Serial Programming)
是一種比 ISP 進階的晶片編程方法
是一種比 ISP 進階的晶片編程方法
ICSP 佈局
ICSP 有兩種引腳排列方式,分別是:
- ICSP 6 或 PIC ICSP
- ICSP 10 或 AVR ICSP
ICSP 6 (PIC ICSP) | ICSP 10 (AVR ICSP) |
---|---|
ICSP 引腳
引腳 | ICSP 6 (PIC ICSP) | ICSP 10 (AVR ICSP) |
---|---|---|
1 | MISO | MOSI |
2 | VCC | VCC |
3 | SCK | NC |
4 | MOSI | GND |
5 | RST | RST |
6 | GND | GND |
7 | SCK | |
8 | GND | |
9 | MISO | |
10 | GND |
接駁 Arduino UNO
不論是 Arduino UNO 或 Arduino UNO 兼容板,都有一組 ICSP 作為從機將資料寫入到 ATmega328P
亦可以作為主機將資料寫入到其他支援 ICSP 寫入的晶片
(由於 RST引腳 是為作 從機 被寫入資料時接駁,因此作為 主機 時 RST引腳 不需要接駁)
亦可以作為主機將資料寫入到其他支援 ICSP 寫入的晶片
(由於 RST引腳 是為作 從機 被寫入資料時接駁,因此作為 主機 時 RST引腳 不需要接駁)
線路原型
其實接駁方法與平常的 SS(10), MOSI(11), MISO(12), SCK(13)
接駁線路
除了接駁 ICSP 的線路,還要替 89S52 的 EA引腳 接駁 5V電源,令 89S52 能在 5V電源下編程
接通電源後, 89S52模組 的 紅色LED 會亮著
在下使用 2粒 超光LED 在 Port 2 測試
#include <8052.h> unsigned int i; void main() { while (1) { P2 = 0x01; for (i = 0; i < 50000; i++); P2 = 0x10; for (i = 0; i < 50000; i++); } }
另一個使用 測試用的 綠色LED
測試發現當 Port 1 Bit 0 為低電壓時,綠色LED 才會亮著
#include <8052.h> unsigned int i; void main() { while (1) { P1 = 0x00; for (i = 0; i < 50000; i++); P1 = 0x01; for (i = 0; i < 50000; i++); } }
測試發現當 Port 1 Bit 0 為低電壓時,綠色LED 才會亮著
與 Arduino UNO 相同,可以使用 內徑2.1mm外徑5.5mm DC插頭 提供電源
當使用 DC插頭,還需要按下開關按鈕才正式向 AT89S52 提供電源 (紅色LED 會亮著)
當使用 DC插頭,還需要按下開關按鈕才正式向 AT89S52 提供電源 (紅色LED 會亮著)
補充資料
既然已經製作了 89S52模組,便再方便一點,製作一條方便連接到 89S52模組 的接駁線
基本上就是剛才的接駁線,只是將對應的引腳線路排列妥當再固定
由於 ICSP 6 端會作為 主機 向 AT89S52 寫入程式,因此不需要接駁 RST引腳
5支引腳座用超能膠固定,再用熱縮管加熱覆蓋外圍加強穩固效果
如果擔心熱縮管收縮不平均,可以在 RST引腳 的位置添加空引腳座,令受力平均
5支引腳座用超能膠固定,再用熱縮管加熱覆蓋外圍加強穩固效果
如果擔心熱縮管收縮不平均,可以在 RST引腳 的位置添加空引腳座,令受力平均
ICSP 10 端是 從機 ,因此需要接駁 RST引腳
由於 NC引腳 是不需要連接,因此在下偷懶一點,減少一條線路
同樣如果擔心受力不平均,同樣可以加上空引腳座
(原則上 ICSP 10 共有 4支GND引腳,其實只需要接駁其中 1支GND引腳 即可
亦即是同樣只需要用 6支引腳,只是排列方式不同)
由於 NC引腳 是不需要連接,因此在下偷懶一點,減少一條線路
同樣如果擔心受力不平均,同樣可以加上空引腳座
(原則上 ICSP 10 共有 4支GND引腳,其實只需要接駁其中 1支GND引腳 即可
亦即是同樣只需要用 6支引腳,只是排列方式不同)
在下方便辨識 ICSP 6 端的 SS引腳 連接到 Arduino UNO ,在跳線上加上識別
線路 ICSP 6 端連接到 Arduino UNO 的 ICSP 6
線路 ICSP 10 端連接到 Arduino UNO 的 ICSP 10
ICSP 6 連接 ICSP 10
由於在下想偷懶一點,不接駁到麵包板,只使用測試用的 LED
因此直接在 ZIF IC座 上使用 跳線 將 AT89S52 的 EA引腳 連接到 VCC引腳
由於在下想偷懶一點,不接駁到麵包板,只使用測試用的 LED
因此直接在 ZIF IC座 上使用 跳線 將 AT89S52 的 EA引腳 連接到 VCC引腳
透過 ArduinoISP 將程式寫入到 AT89S52
(在下將一些測試用的 ihx檔案 保留,方便日後測試其他 AT89S52)
(其實編譯 Sketch 後都會建立 hex檔案 於暫存目錄中,可以用相同方法將 hex檔案 保留及寫入到 Arduino 上的 ATmega328P)
(在下將一些測試用的 ihx檔案 保留,方便日後測試其他 AT89S52)
(其實編譯 Sketch 後都會建立 hex檔案 於暫存目錄中,可以用相同方法將 hex檔案 保留及寫入到 Arduino 上的 ATmega328P)
總結
在下第一次焊接相對複雜的電路板,總共22件零件,總共145支引腳,大約使用30分鐘焊接
焊接時在下又學會一些焊接方法,可以焊接得更好更準確
在下發現焊接引腳時,使用焊接器倚在焊墊及引腳加熱後,將錫線圍繞引腳熔解,焊接時會更快,效果亦更好
在下發現焊接引腳時,使用焊接器倚在焊墊及引腳加熱後,將錫線圍繞引腳熔解,焊接時會更快,效果亦更好
焊接通孔零件時,因為引腳需要穿過電路板,到另一邊焊接
但反轉會使用零件掉下,因此通常都會將引腳折曲,避免掉下
零件與電路板之間仍然會少許空位,在下希望零件與電路板之間沒有空位
當焊接引腳後,將零件壓向電路板再焊接引腳,將零件與電路板之間的空位減至最少
如果零件超過2支引腳,便將最後的引腳或對角的引腳用相同方法焊接,便可以將零件焊接到非常貼近電路板
但反轉會使用零件掉下,因此通常都會將引腳折曲,避免掉下
零件與電路板之間仍然會少許空位,在下希望零件與電路板之間沒有空位
當焊接引腳後,將零件壓向電路板再焊接引腳,將零件與電路板之間的空位減至最少
如果零件超過2支引腳,便將最後的引腳或對角的引腳用相同方法焊接,便可以將零件焊接到非常貼近電路板
焊接時大量零件到電路板時,零件可以借助其他表面支撐,因此零件由小至大焊接會較方便
另外由於在下焊接的零件都是通孔設計,因此全部焊接工序都是在電路板背面處理
如果零件是表面黏著設計,需要在電路板正面處理,否則大零件會妨礙小零件焊接
另外由於在下焊接的零件都是通孔設計,因此全部焊接工序都是在電路板背面處理
如果零件是表面黏著設計,需要在電路板正面處理,否則大零件會妨礙小零件焊接
沒有留言 :
張貼留言