蜜臀av一区二区三区人妻在线_国产91精品拍在线观看_日韩亚洲欧美精品综合_国产三区在线成人av_亚洲成色在线冲田杏梨_91麻豆视频国产_国产精品一区二区无码免费看片_古代级毛片免费观看_亚洲精品色在线网站_99久久精品免费看一

/ EN
13922884048

資訊中心

information centre
/
/

如何識別STM32/GD32是否為翻新假貨?

發布時間:2022-03-17作者來源:薩科微瀏覽:3718




最近,嵌入式ARM分享一篇《GD32也開始假貨泛濫了》文章,嵌入式ARM的老友StrongerHuang也表示其技術交流群正在討論芯片漲價咸魚上賣芯片的話題,并撰寫了一文揭露了背景和識別翻新假貨的方法。特此轉載供大家參考。


                           

1

芯片漲價背景    
  前兩年的中美毛衣戰,使國內一些技術型大企業受到了影響,比如華為。但是絕大部分電子相關的企業,受到的影響很小。  
  2020年,一場疫情,導致了一些半導體企業受到很大打擊,比如工人罷工。  
  然后,一些原材料價格開始出現了不同程度的上漲,特別是今年初開始,很多金屬、塑料等絕大部分原材料價格都上漲了,小到電阻電容,大到電視冰箱等消費電子產品,都出現了不同程度的漲價。  
    (圖片來源網絡,侵刪)  
  芯片亦如此,我們熟知的MCU價格出現了不同程度的漲價,相信大家都知道了,特別是STM32部分型號價格甚至翻了好幾倍。  
  在這種漲價潮的背景下,必定存在一些不良商家,然后,出現假貨的概率就增加了。    
                           

2

STM32/GD32翻新或假貨    
  STM32/GD32翻新或假貨這個問題,有經驗的工程師可能遇到過,包括我之前就遇到過,把GD32標志擦除,然后搞成STM32,還有從舊板子上拆下來的翻新STM32。  
  下面就來說說芯片翻新或假貨的一些情況:  
  1.擦除標志  
  芯片擦除標志這種做法很常見,包括我們有時候開發的產品,為了防止別人山寨,也可能將芯片表面的標志擦除,以起到防止被人山寨的作用。
 
  一些商家就會利用這種“貍貓換太子”的手段來牟利,一些兼容的芯片,比如早期我就知道很多STM32就是用GD32假冒的。  
  2.虛假型號  
  STM32內部Flash實際大小可能與型號不匹配,比如:STM32F103RF標準容量為768K,但Flash實際不止768K。  
   
  由此延伸出話題:你的STM32芯片FLASH容量真如ST官方選型手冊那樣嗎?  
 

1 先說點其它


 
  一般對于初學者來說,內部FLASH完全足夠,跑一個簡單的裸機Demo,或者一個RTOS加上兩個任務的Demo,對于現在的MCU完全沒有壓力。  
  但是,一旦你接觸到實際項目,你會發現很多地方都會開支FLASH,而且有些項目占用FLASH還不小。比如:某種特定算法,加載字庫,甚至放兩張圖片在FLASH里面。  
  再拿一個IAP應用編程的例子來說:一般對升級這個功能做的好一點的,會有一塊區域(備份區域)與應用程序差不多大小的FLASH區域。就是說:為了保證安全,你程序下載保存在一個備份區域,等下載成功再更新應用程序。 這樣做的目的:就是防止在下載的時候中途掉線,導致失敗。  
  找了一個圖,大致如下,將FLASH劃分為3個區域(引導程序FLASH區域、應用程序FLASH區域、備份程序FLASH區域),你們琢磨一下。  
 
   
 
 
 

2 STM32芯片選型


 
  一般我們項目提出需求之后,都會選擇一款合適的MCU,首先想到的就是查看【選型手冊】,除了選擇外設資源之外,還有就是選擇適合的FLASH容量大小。STM32產品命令規則如下:  
   
  選型手冊地址:   https://www.stmcu.com.cn/upload/Selection_Guide.pdf   (微信公眾號不支持外鏈接,復制網址打開)
 
 
 

3 驗證STM32內部FLASH究竟有多大


 
  說了關于FLASH的一些話題,回來說說本文的重點:我們的STM32內部FLASH可能不止上面選型手冊說的那么大一點。  
  比如:我的MCU芯片具體型號為STM32F103RF,查看手冊可以知道其容量為768K,但實際它有1M的FLASH容量。  
   
  我這里大概說兩點簡單驗證的方法:  
1.通過編程驗證  
  簡單來說就是通過擦除,寫入,讀取指定地址(就是超過FLASH大小的地址)。  
  FLASH_EraseSector   FLASH_ProgramWord  
  2.通過工具讀取FLASH數據  
  這個辦法是最直接,也是最簡單的辦法。拿STM32 ST-LINK Utility這個下載工具來舉例說明:  
 
   
  重點其實都在圖中描述出來了:超過768K地址,實際上還可以讀出來數據的。   (上圖是我拿STM32F103RF真實MCU讀出來的,應用程序起始地址就是0x080C0000,應用程序實際也運行起來了)  
  說了這么多,其實我想說的是:STM32芯片有許多也是類似,不止我上面舉例的STM32F103RF,103RC標稱的是256K,其實不止256K空間。如果你發現你FLASH空間不足了,通過上面方法可以看看是否不止那么大的空間。  
  3.翻新為原裝[敏感詞]   這種在某寶上最常見,那種看起來價格便宜,你零售買幾個也發貨這種十有八九都是翻新芯片。
 
  翻新芯片,你買回來,可能寫一個LED流水燈測試一下沒有問題。但是,你上項目之后,特別是要求外設比較多,功能又復雜一點的項目,可能很快就原形畢露了。  
  運氣不好,可能會出現以下幾種情況:
  • 軟件通宵加班數日無果,甩鍋硬件;
  • 硬件飛線各種測試,換一塊芯片解決問題;
  • 軟件和硬件工程師干一架;
  • ······

  所以,現在市面上出現很多假貨,或者有問題的芯片不足為奇,包括嵌入式ARM說的“GD32也開始假貨泛濫了”,我覺得肯定存在。  
   
                           

3

識別翻新或假貨     識別STM32/GD32翻新或假貨,常規的操作就是先焊接在PCB板(或在工裝夾具),上電看是否正常,如果出現發燙、電流過大、甚至冒煙等情況,要注意了。  
  然后讀取一下芯片信息,比如Flash容量,UID信息、選項字節等。  
  這里分享之前的文章:關于STM32的這幾個寄存器,你知道嗎?  
  讀取的具體方式如下:  
 

1 Flash容量寄存器


  1.通過讀寄存器  
  在STM32的“參考手冊”中有Flash size data register這么一個寄存器(一般在手冊最后),明確寫了寄存器的基地址。  
  提示:不同芯片型號,可能這個寄存器地址不同。比如F103的基地址為:0x1FFFF7E0。  
   
  是一個16位的數值,出廠寫入,程序只能讀取。讀取方法很簡單,可以如下:  
  uint16_t Flash_size;   Flash_size = *(uint16_t *)0x1FFFF7E0;  
  2.通過STM32 ST-LINK Utility直接讀取
 
  通過ST-Link連接芯片,直接讀取,可以看到容量信息:  
   
 

2 UID寄存器


  之前有人問我,可以通過STM32的UID來加密嗎? 這個肯定是可以的。  
  但又問了我一個問題,我不希望讀取全部(96位),可以只讀取部分寄存器來作為標識嗎?讀取的部分會不會重復?  
  STM32的UID[敏感詞]標識符適用于
  • 用來作為序列號。
  • 用來作為密碼,在編寫閃存時,將此[敏感詞]標識與軟件加解密算法結合使用,提高代碼在閃存存儲器內的安全性。
  • 用來激活帶安全機制的自舉過程。

  STM32的UID共有96位(32 x 3)。所有,就有朋友,我是否可以只讀取其中某一部分來作為[敏感詞]識別?  
  這個問題,嚴格來說,不可以。但如果不是特別嚴格,還是可以。因為這個UID是通過晶元、分批等來進行編號的。如果你買同一批次,你會發現那個編號可能連續。  
   
 
  我之前曾讀取過幾塊生產的板卡(購買得_MCU是同一批次),芯片的UID是連續的,感興趣的可以試試。  
  所以,通過讀取部分UID來作為標識,只能說不嚴格的情況是可以的
 
 
 

3 寄存器偏移地址


  現在還有許多初學的朋友在學習底層的一些知識,比如前面就有朋友想自己通過寄存器來編程,但是卻不知道什么是寄存器基地址,什么是寄存器偏移地址。  
  1.基地址  
  每一個片內外設都有一個對應的基地址,而且是由廠商決定我們不能修改。如下圖:  
   
  在程序中,你會發現和上面對應的代碼:  
   
  2.偏移地址  
  偏移地址就是在基地址基礎上偏移(一般是以4字節增加),比如TIM定時器的偏移地址:  
   
  同樣,在程序中對應的代碼通過結構體實現偏移:  
   
  關于基地址和偏移地址,不管是標準外設庫還是HAL庫,都是上面所示那種基地址+偏移的方法實現。  
  還是之前多次在文章中提到的,想要了解寄存器原理,或者通過寄存器來實現的朋友,[敏感詞]參考“標準外設庫”例程。HAL庫封裝的相對復雜,不適合研究最底層寄存器。  
  再進一步驗證,寫入數據(RAM、Flash)測試、各種外設基本功能測試等。  
   
                           

4

建議正規渠道     買到假貨或山寨貨,付出的代價是很大的,前期開發階段現了問題都還好,就怕批量生產之后才發現問題。  
  更可怕的是,大批量出貨,產品在客戶手里因為芯片假貨出現問題的情況。  
  今天交流群里有人在討論咸魚上賣芯片的情況,我覺得,咸魚買芯片來玩玩可以,做產品[敏感詞]慎重。  
  比如淘寶搜出來十多元的STM32還是進口原裝[敏感詞],你信嗎?  
   
  正規渠道買的芯片,都還存在一定概率是芯片自身的問題,更別說咸魚這種平臺了。 我之前就遇到過,從正規且比較大的代理商買的STM32,出現了問題,FAE多次到公司都沒找出問題,最后拿回原廠解剖芯片,發現真的是芯片自身的問題。  
 

所以,不要因為便宜就從淘寶、咸魚上購買芯片,建議走正規渠道。否則,可能會付出很大代價。


免責聲明:本文轉載自“strongerHuang”,支持保護知識產權,轉載請注明原出處及作者,如有侵權請聯系我們刪除。


公司電話:+86-0755-83044319
傳真/FAX:+86-0755-83975897
郵箱:1615456225@qq.com
QQ:3518641314 李經理  

QQ:332496225   丘經理

地址:深圳市龍華新區民治大道1079號展滔科技大廈C座809室

服務熱線

0755-83044319

霍爾元件咨詢

肖特基二極管咨詢

TVS/ESD咨詢

獲取產品資料

客服微信

微信服務號