第一次使用MY9221的時候,是已經有同事使用過了,同事當初沒有發現太多問題和障礙。
自己使用的時候出現了故障,使用兩片MY9221,出現的問題就是LED燈珠會閃爍,隨機的閃爍,雖然是微微的閃爍。當時做測試,在給MY9221發數據的函數中作如下處理:發數據前,將MCU總中斷關閉,數據發送完後再把總中斷打開。就不會出現燈珠閃爍的現象。當時使用的是12位調光,以爲是位數太多,改爲8位調光後,即使沒有在發數據的時候關閉中斷,也解決了閃爍的問題,以爲就找到了問題的所在點,後續就沒有繼續跟蹤了。
第二次使用,由於要求,必須使用12位調光,問題也就再次出現了,這一次使用的單片機速度更慢一點,發送數據使用時間也更長了,如果發送數據之前把中斷關閉,發送完再打開,時間就更長了,不能接受。調試過程中,還是試這將中斷關閉。
1:先將串口中斷關閉 出現了新的問題,串口數據丟失,比如數據1~15,接收玩第3個數據的時候,給9221發數據,卻將串口中斷關閉,再次打開的時候,接收的不是數據4,而是9、10或者其他數據。
解決方法:再串口一幀數據過來檢測到頭後,標記不能給9221發數據,所需數據接收完後,標記解除,允許給9221發數據,給9221發數據之前,將串口中斷關閉,數據發送完後,將總中斷打開,就解決了這個問題。
問題是解決了,但是根源沒摸清楚,找到明陽的工程師—----郭工(臺灣人,很熱情,很客氣),我把使用情況描述後,他給出了一個使用技術指標,