#define STM32_ID_D 352525 //任意的一個數(shù)
//stm32芯片的ID地址,把地址減去一個數(shù),避免匯編里面直接出現(xiàn)ID的地址,不然很容易暴露加密與ID號有關(guān)
volatile u32 STM32_ID_addr[3]={0x1ffff7e8 - STM32_ID_D,0x1ffff7ec + STM32_ID_D,0x1ffff7f0 - STM32_ID_D};
/********************************************************************
函數(shù)功能:讀出stm32的ID,12字節(jié)
入口參數(shù):p
返 回:
備 注:把ID的地址做一下處理,加密性更好
********************************************************************/
volatile void STM32_Read_ID(volatile u32 *p)
{
volatile u32 Addr;
// 因為不想讓程序在反匯編后直接找到這個地址,所以這個地址是運(yùn)算出來的,
// 跟STM32_ID_addr反運(yùn)算,當(dāng)然了也可以用高級的算法,注意不能讓編譯器優(yōu)化這個地址
Addr = STM32_ID_addr[0] + STM32_ID_D;
p[0] = *(vu32*)(Addr);
Addr = STM32_ID_addr[1] - STM32_ID_D;
p[1] = *(vu32*)(Addr);
Addr = STM32_ID_addr[2] + STM32_ID_D;
p[2] = *(vu32*)(Addr);
}
/********************************************************************
函數(shù)功能:加密ID并保存
入口參數(shù):
返 回:
備 注:
********************************************************************/
void STM32_Encrypted_ID(void)
{
u32 stm32ID[4],dat;
STM32_Read_ID(stm32ID);
//這里可以用其它一些高級的算法,但解和加要一樣
//把ID號處理成一個32位數(shù),也可以用自己的算法,處理成其他數(shù)據(jù),多少位都行
stm32ID[3] = STM32_ID_D;
dat = stm32ID[0] + stm32ID[1] - (stm32ID[2]/stm32ID[3]); //處理成一個32位數(shù)
FLASH_Unlock();
FLASH_ErasePage (STM32FLASH_EN_ID_START_ADDR); //
FLASH_ProgramWord(STM32FLASH_EN_ID_START_ADDR,dat); //保存這個數(shù),寫進(jìn)32位
FLASH_Lock();
}
/********************************************************************
函數(shù)功能:比較加密ID,正確返回0
入口參數(shù):
返 回:1:不正確,0:正確
備 注:
********************************************************************/
u32 STM32_CMP_Encrypted_ID(void)
{
u32 stm32ID[4],dat,dat2;
STM32_Read_ID(stm32ID);
// 這里可以用其它一些高級的算法,但解和加要一樣
stm32ID[3] = STM32_ID_D;
dat = stm32ID[0] + stm32ID[1] - (stm32ID[2]/stm32ID[3]);
dat2 = *(u32*)(STM32FLASH_EN_ID_START_ADDR); //讀出加密時,保存在flash中的數(shù)
if(dat == dat2){return 0;} // 相同
else {return 1;} // 不同
}
//好了,有了上面那個程序,那下再繼續(xù)
//===================ID加密控制=====================================================================
if(STM32_CMP_Encrypted_ID())
{
//量產(chǎn)時給一些條件,條件滿足就對ID加密,然后把加密結(jié)果保存到flash中,把該程序與芯片的ID,唯一對應(yīng)起來,加密完后,你也可以讓它自宮。
if(XXXXXX)
{
STM32_Encrypted_ID(); //加密ID
自宮 //即把加密這段代碼從flash里面擦除,直接跳出去繼續(xù)執(zhí)行
}
}
//===================正常運(yùn)行時==================================
// 校驗一下ID是否正確,
if(STM32_CMP_Encrypted_ID())
{
/*
來到這里嘛,當(dāng)然不正確咯,你別讓程序死在這哦,太明顯了,很容易找到是你干的,
那么,一個系統(tǒng)肯定有一些參數(shù)才能運(yùn)行的,你可以改變一些參數(shù),這可以讓系統(tǒng)
有時正常有時不正常,,呵呵,要查也不是那么容易的事了
*/
}
}
上一篇:stm32對flash的讀寫保護(hù)與解除
下一篇:stm32定時器的ETR、CH1N、CH2N、CH3N
推薦閱讀
史海拾趣
2013年,深圳杜因特半導(dǎo)體有限公司在深圳龍崗區(qū)成立,由創(chuàng)始人蘇佩義帶領(lǐng)團(tuán)隊開始創(chuàng)業(yè)之旅。公司初創(chuàng)時,專注于功率半導(dǎo)體的研發(fā)與生產(chǎn),特別是MOS場效應(yīng)管產(chǎn)品。盡管起步艱難,但團(tuán)隊?wèi){借對技術(shù)的執(zhí)著和對市場的敏銳洞察,逐漸在電子行業(yè)嶄露頭角。
2024年第一季度,力芯微公司實現(xiàn)了營業(yè)總收入2.20億元,同比增長23.57%;歸母凈利潤5347.70萬元,同比增長93.35%。這一業(yè)績的取得,不僅體現(xiàn)了公司強(qiáng)大的市場競爭力和盈利能力,也為公司未來的發(fā)展奠定了堅實的基礎(chǔ)。同時,公司在資產(chǎn)結(jié)構(gòu)、現(xiàn)金流量等方面也取得了顯著的改善。
請注意,以上故事均基于事實描述,未對力芯微公司進(jìn)行評價或褒貶。每個故事都力求全面、客觀地展現(xiàn)力芯微公司在電子行業(yè)中的發(fā)展歷程和成就。
隨著全球環(huán)保意識的不斷提高,F(xiàn)erroperm公司也積極響應(yīng)環(huán)保號召,致力于可持續(xù)發(fā)展。他們采用環(huán)保材料和生產(chǎn)工藝,減少生產(chǎn)過程中的污染和廢棄物排放。同時,F(xiàn)erroperm還積極參與環(huán)保公益活動,推動環(huán)保理念的普及和傳播。這種對環(huán)保的關(guān)注和投入不僅體現(xiàn)了公司的社會責(zé)任感,也為公司的長遠(yuǎn)發(fā)展奠定了堅實的基礎(chǔ)。
在發(fā)展的過程中,F(xiàn)erroperm公司不斷進(jìn)行技術(shù)創(chuàng)新和產(chǎn)品研發(fā),推動產(chǎn)品的多樣化發(fā)展。他們成功開發(fā)了一系列具有高性能和獨特功能的電磁材料,如高性能鐵氧體、NdFeB永磁體等。這些產(chǎn)品不僅滿足了客戶對電磁材料性能的高要求,還推動了相關(guān)行業(yè)的發(fā)展。同時,F(xiàn)erroperm還不斷拓展產(chǎn)品線,推出了變壓器、電感器、濾波器等一系列電子產(chǎn)品,進(jìn)一步鞏固了其在電磁材料領(lǐng)域的領(lǐng)先地位。
Ferroperm公司非常重視產(chǎn)品的品質(zhì)管理。他們建立了嚴(yán)格的質(zhì)量管理體系,從原材料采購到產(chǎn)品生產(chǎn)、檢測等各個環(huán)節(jié)都實行嚴(yán)格的質(zhì)量控制。同時,F(xiàn)erroperm還注重持續(xù)改進(jìn),不斷引進(jìn)先進(jìn)的生產(chǎn)設(shè)備和檢測技術(shù),提高產(chǎn)品的質(zhì)量和性能。這種對品質(zhì)的執(zhí)著追求使得Ferroperm的產(chǎn)品在市場上獲得了良好的口碑和信譽(yù)。
近年來,CDIL積極響應(yīng)政府政策,利用生產(chǎn)掛鉤激勵計劃(PLI)和電子元件和半導(dǎo)體制造促進(jìn)計劃(SPECS),計劃將其產(chǎn)能從目前的5億片基礎(chǔ)上提高1億片。同時,公司還計劃在未來幾年內(nèi)建立兩條新的ATMP生產(chǎn)線,以進(jìn)一步提升產(chǎn)能和技術(shù)水平。此外,CDIL還在碳化硅(SiC)等新技術(shù)領(lǐng)域進(jìn)行了深入研發(fā),以滿足電動汽車、電源管理設(shè)備等新興市場的需求。
#include #define unint unsigned int #define unchar unsigned char delay(unchar n) {unint i,AI; for (i=n;i>0;i--) for (AI=100;AI>0;AI--); } void main() { TMOD=0X20; ...… 查看全部問答∨ |
|
在dialog中有個tab control,在每個tab的dialog中有個group box, group box中有個按鈕。 現(xiàn)在的現(xiàn)實結(jié)果是tab control和group box都顯示正常,按鈕沒有顯示,什么原因? app方面菜鳥一個,期待大家指點… 查看全部問答∨ |
求助:根據(jù)下面的信息可以看出我這個 flash 是 幾 byte 寬的,容量是多少嗎?謝謝! 在目前所有的非易失性存儲器(PROM、EPROM、EEPROM和Flash)中,唯有Flash存儲器幾乎擁有現(xiàn)今講究個性化的用戶所需的 所有特點,它具有掉電數(shù)據(jù)不丟失、快速數(shù)據(jù)存取速度、電可擦除、容量大、在線可編程、價格低廉以及足夠多的擦除、容量 大、在 ...… 查看全部問答∨ |
本帖最后由 paulhyde 于 2014-9-15 09:03 編輯 請問大家 能 恒流 的用于開關(guān)電源的 芯片 有哪些 輸出電壓:0~50V 左右 輸出電流:0~0.5A 左右 輸出功率:0~25w ...… 查看全部問答∨ |
|
我現(xiàn)在用的xilinx的下載電纜,通過iMPACT軟件燒寫代碼到W25X40L里,有時能燒寫成功,有時根本不能,不知道是怎么回事,可靠性這么不好,還有W25X40L上的引腳連到cpld上的,但把cpld里的程序擦除應(yīng)該能燒寫到W25X40L吧。望大家給點意見?先謝謝了… 查看全部問答∨ |
設(shè)計資源 培訓(xùn) 開發(fā)板 精華推薦
- 中國研究人員發(fā)明全新動作好奇心算法 增強(qiáng)不確定環(huán)境下的自主導(dǎo)航
- 技術(shù)解析|沃爾沃XC70超級混動有什么亮點?
- 小米汽車:磁吸物理按鍵已接入米家,可通過APP操控
- 專家專論 | 顧劍民:L2級輔助駕駛激光雷達(dá)“價格歸零”
- 近一個月投資五家!京東密集落子具身智能機(jī)器人賽道
- 海外動力電池裝車量TOP10:3家落榜 一新上榜中企暴增逾10倍
- 吉利汽車:全域AI守護(hù)輔助駕駛安全
- 松下汽車系統(tǒng)與VicOne深化合作 共拓新一代智能座艙系統(tǒng)安全創(chuàng)新
- 汽車MCU的“芯”浪潮
- 具身智能如何大規(guī)模推廣?丨具身智能機(jī)器人高質(zhì)量發(fā)展
- 英特爾 SoC FPGA 開發(fā)者論壇 (ISDF) 預(yù)約報名享好禮!
- Littelfuse 高效 • 可靠 • 精準(zhǔn)的功率控制和電路保護(hù)方案在工業(yè)、交通、通訊、醫(yī)療及新能源中的應(yīng)用
- elexcon 2023 報名推廣
- 有獎話題:聊一聊論壇里幫助過你的網(wǎng)友!
- 手機(jī)答題抽獎啦:Microchip高端千兆以太網(wǎng)專題知識
- 艾睿合眾直播報名:TI Sitara系列芯片在【大數(shù)據(jù)】產(chǎn)品上的應(yīng)用
- 2024 DigiKey 應(yīng)用說:大模型時代的智能汽車
- DEYISUPPORT TI 大咖級工程師在這里,等你來約!
- TI 有獎直播 | DLP®技術(shù):重新定義智能汽車駕駛及娛樂新體驗
- 慳錢十月,分享你的省錢購物經(jīng)!
- “潛水俠”獲千萬元級天使輪融資,助力水下機(jī)器人研究
- Bobot從“網(wǎng)紅”家用清潔機(jī)器人轉(zhuǎn)移到關(guān)注早教市場
- 該怎么選用智能掃地機(jī)器人?智能掃地機(jī)器人真的好用嗎?
- 國產(chǎn)機(jī)器人究竟該如何面對核心零部件空心化嚴(yán)重現(xiàn)象?
- 谷歌研制新對話機(jī)器人成功,意在擊敗微軟
- 知識產(chǎn)權(quán)競爭力百強(qiáng)榜,海爾第一,華為第二
- 強(qiáng)者越強(qiáng),臺積電擬$33.5億升級先進(jìn)制程產(chǎn)能
- 我國芯片人才短缺大調(diào)查?是何原因?qū)е?/a>
- 諾基亞前高管周德翰將作為蘋果印度市場負(fù)責(zé)人
- 日本開發(fā)分裝便當(dāng)機(jī)器人 再也不怕打飯阿姨手抖
- 關(guān)于cc1110
- HawkBoard——TI 開源嵌入式處理器開發(fā)板
- 回應(yīng)Hotpower關(guān)于"類似串口控件MSCOMM,SPCOMM的驅(qū)動軟件"的提議
- “【TGF4042 信號發(fā)生器】”電路參數(shù)測量
- 關(guān)于MSP430F6638的端口映射問題
- 可以把DSP當(dāng)成單片機(jī)開發(fā)嗎?
- 單片機(jī)硬件系統(tǒng)設(shè)計原則
- 寶馬LPC1768 CAN總線濾波設(shè)置
- freeradius 賬號和密碼認(rèn)證
- Espier開發(fā)板資源帖匯總(標(biāo)題越長越容易看到!?。。。。?2013年10月6日更新)