LED 這些只需要給予正確電壓再接通正負極,便可以測試
但 晶片 需要接通每支引腳 再給予正確的電訊才能完成測試
外觀
SN74HC595 正面,共有 16支引腳
SN74HC595 背面,印著 2F9 是 中斷啟動暫存器 (Interrupt Enable Register (IER)) 的地址
引腳編排及用途
後 | 引腳16 | 引腳15 | 引腳14 | 引腳13 | 引腳12 | 引腳11 | 引腳10 | 引腳9 |
---|---|---|---|---|---|---|---|---|
後 | 引腳1 | 引腳2 | 引腳3 | 引腳4 | 引腳5 | 引腳6 | 引腳7 | 引腳8 |
用途 (缺口在左邊) | VCC | D7 | SDI | EN | LCK | SCK | CLR | SDO |
D6 | D5 | D4 | D3 | D2 | D1 | D0 | GND |
編號 | 描述 | 方向 | 用途 |
---|---|---|---|
1 | D6 | 輸入 | 第6位元資料 |
2 | D5 | 輸入 | 第5位元資料 |
3 | D4 | 輸入 | 第4位元資料 |
4 | D3 | 輸入 | 第3位元資料 |
5 | D2 | 輸入 | 第2位元資料 |
6 | D1 | 輸入 | 第1位元資料 |
7 | D0 | 輸入 | 第0位元資料 |
8 | GND | 接地 | |
9 | SDO | 輸出 | 序列資料輸出 |
10 | CLR | 輸入 | 清除資料 低電壓 為 執行清除 高電壓 為 不執行清除 可以保持 低電壓 來保持 不執行清除狀態 |
11 | SCK | 輸入 | 序列時脈 低電壓 為 開始接收 SDI訊號 高電壓 為 保存 SDI訊號 |
12 | LCK | 輸入 | 閉鎖時脈 低電壓 為 開始接收 8位元資料 高電壓 為 送出並清除 8位元資料 |
13 | EN | 輸入 | 啟動 低電壓 為 執行啟動 高電壓 為 停止啟動 可以保持 高電壓 來保持 啟動狀態 |
14 | SDI | 輸入 | 序列資料輸入 |
15 | D7 | 輸入 | 第7位元資料 |
16 | VCC | 電源 (接受 2V 至 6V) |
暫存器訊號
引腳 | 初始化 | 開始 | 8位元訊號週期 | 結束 | |
---|---|---|---|---|---|
LCK | 高 | 低 | 高 | ||
SCK | 高 | 高 | 低 | 高 | |
SDI | 高/低 |
訊號波紋時序圖
使用要留意
暫存器 不會知道要接收多少訊號後才將資料送出,只是靠 LCK引腳 處理
當 LCK引腳 為 低電壓 時,便會保存資料; LCK引腳 為 高電壓 時,便會將暫存器的資料送出,並清空暫存器的資料
但 暫存器 只保存 8位元資料,例如已經保存 165(dec) = A5(hex) = 10100101(bin)
由於 SN74HC595 以 最低有效位 寫入資料,例如寫入 1 ,資料會變成 331(dec) = 14B(hex) = 101001011(bin)
但由於只保存 8位元資料,會變成 75(dec) = 4B(hex) = 01001011(bin)
線路接駁
使用 共陽 及 獨立電阻方式 接駁
https://www.tinkercad.com/things/kQ2pRTuU5Jv Tinkercad 測試效果
使用 共陰 及 獨立電阻方式 接駁
https://www.tinkercad.com/things/0oJ3YTXP8BT Tinkercad 測試效果
使用 共陽 及 共用電阻方式 接駁
https://www.tinkercad.com/things/kSBplxGT3PY Tinkercad 測試效果
使用 共陰 及 共用電阻方式 接駁
https://www.tinkercad.com/things/aMH7PpyDvpS Tinkercad 測試效果
共陽 或 共陰 的 接駁方式在效果上沒有太大分別
但由於 SN74HC595 是以正極方向輸出訊號,使用 共陽 連接方式送出訊號,並沒有特別需要注意
如果使用 共陰 方式連接,則要以相反的資訊送出
例如使用 共陽連接方式 送出 153(dec) = 99(hex) = 10011001(bin)
使用 共陰連接方式 便要送出 102(dec) = 66(hex) = 01100110(bin) ,編程時可以用 0xFF ^ data 來轉換
而 獨立電阻 或 共用電阻 則影響 LED的光度
獨立電阻 即是所有 LED 同時亮著都不會影響光度,但 成本比較高
共用電阻 越多 LED 同時亮著時光度會下降,但 成本比較低
在下為了節省成本及時間,使用 共陰 及 共用電阻方式 連接
使用 Arduino Nano 並安裝到 麵包板
SN74HC595 安裝到 麵包板
展示 0(dec) = 00(hex) = 00000000(bin) 至 255(dec) = FF(hex) = 11111111(bin) 的訊號
由於在下使用 共用電阻方式 連接,會發現當幾個 LED 同時亮著會偏暗
在下有使用 共陽七段顯示器 測試
在下為了方便 使用七段顯示器 設計一塊 轉接器原型
將 七段顯示器模組 安裝到 麵包板
由於 每粒LED 已經焊接 獨立電阻 ,可以直接連接到 SN74HC595 8支資料引腳
使用 SN74HC595 控制 七段顯示器
總結
SN74HC595 是一種簡單易用的 移位暫存器,在下查看 Datasheet 竟然只需要10多分鐘便明白使用方法SN74HC595 可以將需要使用 8支引腳 的 電子器材
減省到 6支引腳 (SDI, EN, LCK, SCK, CLR, SDO) ,甚至 3支引腳 (SDI, LCK, SCK) 便可以運作
想方便使用還可以 設計印刷電路板, 將 SN74HC595 當作模組,方便接駁到其他裝置、接駁線路及使用
有興趣可以到 https://bitbucket.org/hkgoldenmra/sn74hc595
或 https://create.arduino.cc/editor/hkgoldenmra/4c4f04fb-5cff-4d89-aad7-faa643b81069/preview 了解
或在 Terminal 輸入
git clone "https://bitbucket.org/hkgoldenmra/sn74hc595.git" --depth=1下載專案
感想
SN74HC595 及 白色LED 其實都是朋友回收的電子零件還有一些電阻、電容、電池、電晶體、晶片座、其他晶片
白色LED 差不多有 400粒,單是除錫回收,總共使用差不多 16小時,完成後還要測試是否正常
雖然不是全數正常,但最後大約有 300粒 仍能運作,結果算不錯
現在在下開始會將一些認為是損壞了而且不能維收的 電子產品 或 電器,都盡量將內部的電子零件卸除
可以留待有需要時能夠使用或維修其他 電子產品 或 電器
沒有留言 :
張貼留言