基本資料 功能說明 應用說明 注意事項 其他

基本資料

 
Question 1

HT24LC系列 & HT93LC系列Serial EEPROM的差異為何?

Answer
 

Feature 2-Wire (HT24LCxx) 3-Wire (HT93LCxx)
Interface Serial data I/O, Clock Data in, Data out, Clock, CS
Clock Rate (max) 400K 2M
Page Write Yes No
Memory Organization X8 bit X8 bit or x16 bit
Write to All mode No Yes
Specific features Hardware write protect WP pin Software write protect EWDS instruction

Question 2

HT93LC系列的EEPROM封裝分A、B兩種,請問它們有何異同?MCU對它們進行讀寫操作時需要注意些什麼?

Answer

它們之間只是引腳位置不同,MCU對其讀寫時軟體完全一樣。


 

應用說明

 

 


Question 1

如何去Reset一個HT93LCXX IC?

Answer

重新Toggle CS pin Low 即可 Reset HT93LCXX。


Question 2

我嘗試在我的電路中使用一顆HT93LCXX IC,看起來Read動作還算正確,但是一直無法正確執行寫入資料的動作,請問是什麼問題?

Answer

這類的問題通常是由於在CS信號線轉為Low前,未依照指令結構提供正確的位元數,或CS信號線根本沒有變成Low。資料寫入的動作在CS信號線轉為Low後才會動作。


Question 3

當我在對一顆HT93LCXX元件執行Write Command時,如果我在CS信號線變為Low之前,不小心給了太多或太少的Clocks,結果會如何?

Answer

一個完整的Write Command,是在CS信號線由High轉為Low後才真正進入Write Cycle。如果你送了太多的Clock,這個寫入指令仍會執行,但多餘的Clock會被忽略;如果你送的Clock不夠,那麼這個寫入指令無效,不會發生任何的寫入動作。
Question 4

當我在使用一個HT93LCXX元件時,我是否必需在每一個指令中間執行Toggle CS pin Low的動作?

Answer

是的,你必須在每一個指令中間執行Toggle CS pin Low 的動作,而CS脈衝至少要有250ns寬。如果你正在執行Write Command,你必須Toggle CS pin Low已啟動Write Cycle;當完成寫入動作且你已偵測到一個Ready信號後,在你送出下一個Start Bit之前,你必須再Toggle CS pin Low。


Question 5

對HT93系列操作時,在兩個不同的命令碼發送之間,一定要將CS引腳拉低嗎?

Answer

是的。而且在兩個命令碼之間CS拉低時間至少要保持250ns,如果工作電壓在2.2V時候,CS的拉低時間至少要保持1000ns。要注意的是,如果此時你進行寫操作,當你所要寫的數據發送完畢,將CS拉低保持一定時間後拉高CS,在讀到HT93系列給出的ready信號之後,你必須再一次作一次拉低CS的動作,才能給出你要進行的下一條命令碼的START位元,也就是說需要兩次拉低CS引腳。


Question 6

對HT93系列寫操作時,在判斷DO引腳給出的READY信號時,我能否直接使用DELAY的方式來替代?

Answer

一般來説不太建議直接使用DELAY而不去判斷 DO引腳的READY信號。因爲HT93系列操作時,只有在讀到DO引腳給出的READY信號,才真正表明HT93系列的寫操作確實已經成功完成。當然如果一味的等待DO引腳的READY信號可能容易造成程式的死循環,所以當採用此種模式時,建議在判斷DO引腳時候多一個時間旗標的判斷,在判斷DO的READY信號時候如果超過了一定時間,則程式可以認為此次操作失敗。
當然如果客戶一定需要使用DELAY的方式延遲的話,請給夠足夠的延遲時間(HT93系列為5ms),以免造成寫操作失敗。

Question 7

我的HT93 EEPROM的程式爲何只有WRITE和ERASE不行,而其他的操作都是通過的呢?

Answer

對HT93 EEPROM操作時需要注意的是,READ、ERASE和WRITE操作時,在寫完操作碼後的一個CLOCK並不送實際的有效地址,但是DI輸出必須為0,否則此操作會無效,出現其他操作都通過而WRITE和ERASE不行的情況是因爲READ操作碼最後一位為0,使得進入下一個CLOCK時的DI的輸出為0。所以在進行WRITE和ERASE操作時必須注意這點,否則操作就會失敗。


Question 8

什麼往EEPROM中寫數據後重新讀出的數據總出現漏數或錯數?

Answer

是因為沒有正確使用讀寫命令。
寫命令時候需注意,在開片選CS,給出時鐘信號SK,並且在DI發出對應寫指令的命令代碼及地址與資料之後關片選,此時要在大於一個DS Deselect Time之後再開片選,並且觀看DO PIN準位,在出現高準位後重新關片選,這才表明EEPROM寫好數據並且校驗完成,一個完整的寫操作才結束。如果漏了後面的開及重新關片選的過程,後面再寫數據將會出錯;讀命令時候需注意,在開片選CS,給出時鐘信號SK,並且在DI發出對應讀指令的命令代碼及地址後,DO PIN此時將出現一個低準位,這時候需由SK再發出一個上升緣跳變,然後DO PIN才依次傳出有效數據,再由SK給時鐘信號順序讀取。如果漏了上述中的那個上升緣跳變直接把DO PIN的那個低準位起始位作為資料來讀,將會把數據讀錯。


Question 9

往EEPROM中寫數據總是寫不進去是什麼原因?

Answer

EEPROM有數據保護功能,在剛上電後或者在接收了EWDS擦寫禁能指令後,即使向它發送擦寫指令,都將修改不了EEPROM中的數據,
要想實現擦寫其中數據必須先向它發送擦寫致能指令EWEN。EEPROM接收到EWEN指令後,將一直生效,直到斷電或接收到下一個EWDS指令才失效。
另外,在發送指令時,對應EWDS或EWEN的命令位數一定要與規格書中要求相符,所用指令才會生效,否則該指令無效,後面要往EEPROM中寫數據將依然寫不進去。

 


注意事項

 


Question 1

要寫入資料到一顆HT93LCXX IC的步驟應該如何?

Answer

HT93LCXX元件在一開始接上電源時,它會直接進入EWDS狀態(Erase/Write Disable),在此種狀態下任何的寫入/抹除指令都是無效的,所以您在執行寫入資料前必須先執行EWEN指令(Erase/Write Enable),以啟動元件於可抹除/寫入狀態,然後再執行Write指令。為了避免誤寫動作發生,建議您在完成寫入動作後,接著送出一個EWDS指令來禁制所有的意外寫入。

Question 2

該使用哪一種燒錄器燒盛群的EEPROM?

Answer

請至盛群網站 www.holtek.com.tw --> 選擇Technical Support a Supporting Tools --> 選擇『Memory Programming』,此檔案表列出經盛群認證之燒錄器及其相關資訊。


Question 3

若我使用的EEPROM燒錄器機型或版本不在盛群網站上『Memory Programming』的表列中,請問如何得知此燒錄器是否可燒錄盛群EEPROM?

Answer

本公司僅針對盛群網站上『Memory Programming』表列的機型及版本予以認證,其他機型及版本請連上該製造商之網頁或電話聯絡該製造商,以詢問相關訊息。


Question 4

如何有效地燒錄EEPROM?

Answer

1. 確認您的機器設備、軟體版本有支援燒錄該型號之元件。
2. 確認機器設備通過自我檢查的項目。
3. 確認腳座是乾淨、沒有氧化的。
4. 不要直接用手去接觸元件,請用IC夾具。
5. 操作員、燒錄器、工作桌永遠要接地。
6. 確認IC與腳座接觸良好。
7. 腳座在使用一段時間後,請記得更新。