




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、LaunchPad 口袋實驗平臺口袋實驗平臺 MSP-EXP430G2篇篇1第第4講講 自校驗自校驗DCO頻率頻率24.1 普林斯頓結(jié)構(gòu)普林斯頓結(jié)構(gòu) 普林斯頓結(jié)構(gòu)處理器的RAM和ROM統(tǒng)一編址,共用地址總線和數(shù)據(jù)總線。34.2 Flash4存儲器FLASH NAND讀一個扇區(qū)擦寫一個扇區(qū)NOR隨便讀擦寫一段SRAM隨便讀隨便寫4.3 Flash 控制器控制器 對Flash進(jìn)行讀操作無需任何硬件支持,就是讀普通ROM。 對Flash寫操作需要MSP430內(nèi)部集成了Flash控制器。 Flash編程時鐘:寫太快不可靠,寫太慢壽命低。5 Flash編程高壓發(fā)生器 擦鞋F(xiàn)lash需要比讀取Flash更
2、高的電壓。 如圖是Flash按字節(jié)寫入時序過程。64.4 利用利用Flash進(jìn)行掉電不失存儲進(jìn)行掉電不失存儲7備份原數(shù)據(jù)段擦除全段數(shù)據(jù)寫入目標(biāo)數(shù)據(jù)還原其他數(shù)據(jù) 整段擦除為“1” 擦前備份擦 按字節(jié)寫為“0” 重復(fù)寫無效寫4.5 Flash操作庫函數(shù)操作庫函數(shù)全局變量SegAddr,SegPre直接寫字函數(shù)Flash_Direct_WriteWord()備份寫字節(jié)函數(shù)Flash_Bak_WriteChar()初始化函數(shù)Flash_Init( )段擦除函數(shù)Flash_Erase()8初始化函數(shù)初始化函數(shù)Flash_Init( )/* 名 稱:Flash_Init()* 功 能:對Flash時鐘進(jìn)行
3、初始化設(shè)置* 入口參數(shù):Div:根據(jù)SMCLK頻率計算的所需分頻值,可設(shè)定為1-64* Seg:段號,可設(shè)為0-31或”A、B、C、D。* 出口參數(shù):1:配置成功* 0:配置失敗* 說 明:操作Flash其他函數(shù)前,需要調(diào)用該初始化函數(shù)設(shè)置時鐘分頻和待操作段首地址。* 其他函數(shù)中均不出現(xiàn)絕對地址,防止誤操作。* 范 例: Flash_Init(3,B ) 3分頻、對Info B段操作*/unsigned char Flash_Init(unsigned char Div,unsigned char Seg )/-設(shè)置Flash的時鐘和分頻,分頻為恰好為最低位,直接用Div-1即可-if(Div
4、64) Div=64;FCTL2 = FWKEY + FSSEL_2 + Div-1; / 默認(rèn)使用SMCLK,分頻系數(shù)參數(shù)傳入9初始化函數(shù)初始化函數(shù)Flash_Init( )/-操作對象為主Flash段的情況,可通過512的倍數(shù)設(shè)置段起始地址-SegPre = Seg;/獲取當(dāng)前段if (Seg = 31) /判斷是否處于主Flash段SegAddr=0 xFFFF-(Seg+1)*512+1; /計算段起始地址 return(1);/賦值成功后即可退出并返回成功標(biāo)志”1“/-操作對象為信息Flash段的情況,窮舉即可-switch(Seg) /判斷是否處于信息Flash段case A: c
5、asea: SegAddr=0 x10C0; break;case B: caseb: SegAddr=0 x1080; break;case C: casec: SegAddr=0 x1040; break;case D: cased: SegAddr=0 x1000; break;default: SegAddr=0 x20FF;return(0); /0 x20FF地址為空白區(qū),保護(hù)Flashreturn(1);10擦除函數(shù)擦除函數(shù)Flash_Erase()* 名 稱:Flash_Erase()* 功 能:擦除Flash的一個數(shù)據(jù)塊,擦寫段由初始化函數(shù) Flash_Init()的SegA
6、ddr變量決定*/void Flash_Erase() unsigned char *Ptr_SegAddr; /Segment pointer Ptr_SegAddr = (unsigned char *)SegAddr; /Initialize Flash pointer FCTL1 = FWKEY + ERASE; /段擦除模式 FCTL3 = FWKEY; /解鎖 /FCTL3 = FWKEY+LOCKA; /對InfoFlashA也解鎖 _disable_interrupts(); *Ptr_SegAddr = 0; /擦除待操作段 while(FCTL3&BUSY); /B
7、usy _enable_interrupts(); FCTL1 = FWKEY; /取消擦模式 FCTL3 = FWKEY+LOCK; /上鎖/ FCTL3 = FWKEY+LOCK+LOCKA; /對InfoFlashA也上鎖11Flash_Direct_WriteWord()/* 名 稱:Flash_Direct_WriteWord()* 功 能:強(qiáng)行向Flash中寫入一個字型變量,而不管存儲位置是否事先擦除* 入口參數(shù):Addr:存放數(shù)據(jù)的偏移地址,仍按字節(jié)計算,需為偶數(shù) Data:待寫入的數(shù)據(jù)* 出口參數(shù):返回出錯信息 0:偏移溢出 ;1:正常工作* 范 例:Flash_Direct_
8、WriteWord(0,123);將常數(shù)123寫入0單元 Flash_Direct_WriteWord(2,a);將整型變量a寫入2單元*/char Flash_Direct_WriteWord (unsigned int Addr,unsigned int Data)unsigned int temp=0;unsigned int *Ptr_SegAddr; /Segment pointer /- 段范圍限定。為了內(nèi)存管理安全,只允許本段操作-if(SegPre=512) |(SegPre31&Addr=64) ) return 0;12Flash_Direct_WriteWord(
9、)13 return 0;temp=SegAddr+Addr;Ptr_SegAddr = (unsigned int *)temp; /Initialize Flash pointerFCTL1=FWKEY+WRT; /正常寫狀態(tài)FCTL3=FWKEY;/解除鎖定/FCTL3=FWKEY+LOCKA; /解除鎖定(包括A段)_disable_interrupts(); /關(guān)總中斷*Ptr_SegAddr=Data;while(FCTL3&BUSY); /等待操作完成_enable_interrupts(); /開總中斷FCTL1=FWKEY; /退出寫狀態(tài)FCTL3=FWKEY+LOC
10、K; /恢復(fù)鎖定,保護(hù)數(shù)據(jù)/FCTL3=FWKEY+LOCK+LOCKA; /恢復(fù)鎖定,保護(hù)數(shù)據(jù)(包括A段) return 1;備份擦寫字節(jié)函數(shù)備份擦寫字節(jié)函數(shù)Flash_Bak_WriteChar()/* 名 稱:Flash_Bak_WriteChar()* 功 能:不破壞段內(nèi)其他數(shù)據(jù),向Flash中寫入一個字節(jié)(Char型變量)* 入口參數(shù):Addr:存放數(shù)據(jù)的地址 Data:待寫入的數(shù)據(jù)* 出口參數(shù):返回出錯信息 0:偏移溢出 ;1:正常工作* 范 例:Flash_Bak_WriteChar(0,123);將常數(shù)123寫入0單元 Flash_Bak_WriteChar(1,a);將變量a
11、寫入1單元*/char Flash_Bak_WriteChar (unsigned char Addr,unsigned char Data)unsigned int temp=0;unsigned char *Ptr_SegAddr; /Segment pointerunsigned char BackupArray64;/開辟64字節(jié)的臨時RAM備份Segunsigned char i = 0; /- 段范圍限定。為了內(nèi)存管理安全,只允許本段操作-if(SegPre=512) | (SegPre31&Addr64) ) return 0;14for(i=0;i64;i+) temp
12、=SegAddr+i; Ptr_SegAddr = (unsigned char *)temp; /Initialize Flash pointer BackupArrayi=*Ptr_SegAddr;/指針移位方法賦值Flash_Erase(); /擦除待操作段FCTL1 = FWKEY + WRT; /正常寫入(非塊寫)FCTL3 = FWKEY ; /解鎖/FCTL3 = FWKEY ; /解鎖(含A段)for (i=0; i64; i+)_disable_interrupts(); /關(guān)總中斷if(i=Addr) temp=SegAddr+Addr;15備份擦寫字節(jié)函數(shù)備份擦寫字節(jié)函數(shù)
13、Flash_Bak_WriteChar()16備份擦寫字節(jié)函數(shù)備份擦寫字節(jié)函數(shù)Flash_Bak_WriteChar()Ptr_SegAddr = (unsigned char *)temp; /Initialize Flash pointer *Ptr_SegAddr =Data; /寫數(shù)據(jù) while(FCTL3&BUSY); /等待寫操作完成 else temp=SegAddr+i; Ptr_SegAddr = (unsigned char *)temp; /Initialize Flash pointer *Ptr_SegAddr = BackupArrayi; /恢復(fù)Flas
14、h內(nèi)的其他數(shù)據(jù) while(FCTL3&BUSY); /等待寫操作完成_enable_interrupts();/開總中斷FCTL1 = FWKEY; /清除寫FCTL3 = FWKEY + LOCK; /上鎖 / FCTL3 = FWKEY + LOCK; /上鎖(含A段) return 1;4.6 DCO測頻原理測頻原理1725535/1615961.6DCOfmskHzMHz4.7 VLO測頻原理測頻原理 基于上次TAR值25535我們可以求得:1832.768(25535/ 45535)18.376VLOfkHzkHz4.8 自校驗自校驗DCO輸出頻率輸出頻率f 窮舉DCO參數(shù)
15、設(shè)置,測出實際頻率,即可完成校驗。 4位RSELx:16個檔位,每檔頻率步進(jìn)約35%(不靠譜),可看成粗調(diào)。 3位DCOx:8個檔位,每檔頻率步進(jìn)約8%(不靠譜),可看成細(xì)調(diào)。 5位MODx:32個檔位,每檔步進(jìn) ,可看成微調(diào)。19321xxDCODCO確定確定RSELx與與DCOx20MODx=0 先不微調(diào)RSELx DCOx 共128種組合測出所有頻率 WDT定時 TA計數(shù)存入Tempi 由i可反推出 RSELx DCOx 得到全部Temp數(shù)據(jù)后,找出最接近f但小于的f的tempi 比如是Temp35,這樣我們就知道了RSELx=35/8=4,DCOx=35%8=3。確定確定MODx 固定
16、RSELx=4、DCOx=3,依次增加MODx的值,找到最接近f時的MODx值,比如說是12。 那么f對應(yīng)的DCO參數(shù)就是RSELx=4、DCOx=3、 MODx=12。 仿照出廠校驗的做法,將3個參數(shù)存在infoFLash中。21RSELx=4 DCOx=3遞增MODx 共32種值測出所有頻率 WDT定時 TA計數(shù)找到MODx 存入infoFlash4.9 自校驗自校驗DCO例程例程22 自校準(zhǔn)1-16MHz共16個DCO配置參數(shù)(RSELx,DCOx,MODx),將參數(shù)寫入InfoFlashB段中,調(diào)取校驗參數(shù),循環(huán)輸出DCO的16個頻率供觀測。主函數(shù)主函數(shù)void main(void)W
17、DTCTL = WDTPW + WDTHOLD; /關(guān)狗/-在P1.4上輸出SMCLK,這樣可以全程用示波器和頻率計觀測DCO-P1SEL |= BIT4; P1DIR |= BIT4;/-初始化TA,開啟WDT中斷使能-TA0CTL = TASSEL_2+MC_2+TACLR; / SMCLK時鐘源,連續(xù)計數(shù)開始IE1|=WDTIE; /開啟WDT中斷 _enable_interrupts(); /等同_ENT,開啟總中斷/-開始DCO頻率校驗,只運行一遍-Calibrate_Start(); /步驟1:紅燈亮,表示正在校驗DCOMeasure_Temp(); /步驟2:自動測量128個純凈
18、頻率Find_RSELx_DCOx_Winer(); /步驟3:從128個純凈頻率中,找出最接近預(yù)設(shè)頻率的那幾個Measure_MODx(); /步驟4:在最近接的純凈頻率基礎(chǔ)上,窮舉找到最優(yōu)的MODx設(shè)置Calculate_InfoFlash_Data();/步驟5:將最合適的頻率設(shè)定參數(shù)組合成校驗數(shù)組Write_InfoFlashB();/步驟6:將校驗數(shù)組寫入InfoFlahB段Calibrate_Finish();/步驟7:綠燈亮,表示完成校驗DCO/-完成DCO校驗,從Flash中定時取出校準(zhǔn)值,從P1.4輸出供測試-DCOTest(); /步驟8:循環(huán)輸出DCO各個校驗頻率值,供觀
19、測231、點亮紅燈Calibrate_Start(); 2、測量128個“純凈”DCO頻率Measure_Temp();3、找出最接近的16個“純凈”頻率Find_RSELx_DCOx_Winer();4、找出最優(yōu)MODxMeasure_MODx()5、合成校驗數(shù)組Calculate_InfoFlash_Data()6、寫入FlashWrite_InfoFlashB()7、點亮綠燈Calibrate_Finish();8、循環(huán)輸出DCODCOTest()24流水賬作業(yè)變量和宏定義變量和宏定義#include MSP430G2553.h#include Flash.h#define CALDCO
20、_MHz(x) * (unsigned char *)(0 x1080+(x-1)*2) /*讀取InfoFlashB*/#define CALBC1_MHz(x) * (unsigned char *)(0 x1080+(x-1)*2+1)#define CAL_NUM 16 /*待校驗頻率點總數(shù)*/unsigned int Temp128=0; /*存放實測的128個不含小數(shù)分頻MODx的“純凈”頻率*/unsigned char RSELx_DCOx_WinerCAL_NUM=0; /*存放校驗出的SELx和DCOx值*/unsigned char MODx_WinerCAL_NUM=0
21、; /*存放校驗出的MODx值*/unsigned int InfoFlash_DataCAL_NUM=0; /*待寫入infoB中的校驗頻率參數(shù)數(shù)組*/unsigned int Ture_FreqCAL_NUM=0; /*方便仿真時查看實測頻率值*/ -待校正的頻率,單位KHz-const unsigned int Calibrate_FrequenceCAL_NUM=1000,2000,3000,4000,5000,6000, 7000,8000,9000,10000,11000,12000,13000,14000,15000,16000;25 注意(x)的寫法,實現(xiàn)宏定義“傳參”操作。
22、Temp(不帶MODx)和Ture_Freq(帶MODx)存儲的都是實際測量的頻率值1、點亮紅燈Calibrate_Start(); 2、測量128個“純凈”DCO頻率Measure_Temp();3、找出最接近的16個“純凈”頻率Find_RSELx_DCOx_Winer();4、找出最優(yōu)MODxMeasure_MODx()5、合成校驗數(shù)組Calculate_InfoFlash_Data()6、寫入FlashWrite_InfoFlashB()7、點亮綠燈Calibrate_Finish();循環(huán)輸出DCODCOTest()26流水賬作業(yè)開始指示函數(shù)開始指示函數(shù)Calibrate_Start
23、()/* * 名 稱:Calibrate_Start() * 功 能:紅色LED亮,表明正在校驗中 * 說 明:DCO校驗的時間比較長,利用紅燈指示可以方便調(diào)試程序*/void Calibrate_Start() /步驟1:紅燈亮,表示正在校驗DCOP1DIR |=BIT0+BIT6;P1OUT |= BIT0; /紅亮綠滅表示正在校驗P1OUT &=BIT6;27 在很多時候,一個小小的LED可以給程序調(diào)試乃至設(shè)備維護(hù),故障排查帶來很大方便。 本例中,紅色LED亮表示校驗正在進(jìn)行。1、點亮紅燈Calibrate_Start(); 2、測量128個“純凈”DCO頻率Measure_Te
24、mp();3、找出最接近的16個“純凈”頻率Find_RSELx_DCOx_Winer();4、找出最優(yōu)MODxMeasure_MODx()5、合成校驗數(shù)組Calculate_InfoFlash_Data()6、寫入FlashWrite_InfoFlashB()7、點亮綠燈Calibrate_Finish();循環(huán)輸出DCODCOTest()28流水賬作業(yè)測頻函數(shù)測頻函數(shù)Measure_Temp() * 名 稱:Measure_Temp() * 功 能:自動依次測定128種純凈DCO的頻率,并存入Temp數(shù)組* 說 明:純凈頻率是指MOD=0時的非混頻 */void Measure_Temp(
25、) /步驟2:自動測量128個純凈頻率unsigned long Freq_Temp=0;unsigned char RSELx_DCOx_Num=0;for(RSELx_DCOx_Num=0;RSELx_DCOx_Num128;RSELx_DCOx_Num+) DCO_Set_Freq(RSELx_DCOx_Num,0);/-定時測頻代碼開始-TA0CTL |=TACLR; /計數(shù)開始WDTCTL=WDT_ADLY_1_9;/WDT定時長度為精心選擇過的,20MHz計數(shù)到39063 _bis_SR_register(LPM0_bits); /CPU精確休眠1.9ms(1/512秒)WDTCT
26、L=WDTPW+WDTHOLD;Freq_Temp = TA0R; /讀取計數(shù),這個值就是DCO在1/512秒中斷區(qū)間的脈沖數(shù)/-定時測頻代碼結(jié)束-TempRSELx_DCOx_Num=(Freq_Temp)*512)/1000; /計算DCO準(zhǔn)確頻率29配置配置DCO的函數(shù)的函數(shù)DCO_Set_Freq()/* * 名 稱:DCO_Set_Freq() * 功 能:根據(jù)傳入?yún)?shù),設(shè)定DCO頻率 * 入口參數(shù):Num:Num的02位表示DCOx,36位表示RSELx modTemp:MODx參數(shù)* 說 明:Num參數(shù)身兼二職,包含DCOx和RSELx的信息 * 范 例:DCO_Set_Freq
27、(10,5),表示將DCO設(shè)定為RSELx=1,DCOx=2,MODx=5*/void DCO_Set_Freq(unsigned char Num,unsigned char modTemp) /參數(shù)設(shè)定DCO頻率DCOCTL = (Num%8)5)+modTemp; /數(shù)據(jù)拆分BCSCTL1 &=0 x0F;BCSCTL1 |=Num/8;_delay_cycles(15000); /等待DCO頻率穩(wěn)定30WDT定時中斷服務(wù)子函數(shù)定時中斷服務(wù)子函數(shù)/* * 名 稱:WDT_ISR() * 功 能:響應(yīng)WDT定時中斷服務(wù)* 說 明:程序內(nèi)部只有1句喚醒CPU代碼,這種寫法即用到了WD
28、T的定時功能,同時避免將 * 大量代碼寫入中斷服務(wù)函數(shù)中,影響程序的可讀性。*/#pragma vector=WDT_VECTOR_interrupt void WDT_ISR(void) _bic_SR_register_on_exit(LPM0_bits ); /退出中斷時,喚醒CPU31 WDT定時中斷僅起到了延時喚醒的作用。1、點亮紅燈Calibrate_Start(); 2、測量128個“純凈”DCO頻率Measure_Temp();3、找出最接近的16個“純凈”頻率Find_RSELx_DCOx_Winer();4、找出最優(yōu)MODxMeasure_MODx()5、合成校驗數(shù)組Cal
29、culate_InfoFlash_Data()6、寫入FlashWrite_InfoFlashB()7、點亮綠燈Calibrate_Finish();循環(huán)輸出DCODCOTest()32流水賬作業(yè)比較函數(shù)比較函數(shù)Find_RSELx_DCOx_Winer()/* * 名 稱:Find_RSELx_DCOx_Winer() * 功 能:從128個Temp中,找出與16個校驗頻率最接近的Temp的序號* 說 明:Temp的序號里包含了RSELx和DCOx的取值信息*/void Find_RSELx_DCOx_Winer() /步驟3:從128個純凈頻率中,找出最接近d的預(yù)設(shè)頻unsigned ch
30、ar i=0;unsigned int Delta_Min=0;unsigned int Delta_Now=0;unsigned char Calibrate_Num=0;for(Calibrate_Num=0;Calibrate_NumCAL_NUM;Calibrate_Num+) Delta_Min=65530; /第一次比較時,故意定一個大差值33比較函數(shù)比較函數(shù)Find_RSELx_DCOx_Winer() for(i=0;i128;i+) /-單方向取最小差值,一定要小于預(yù)設(shè)值- if(TempiCalibrate_FrequenceCalibrate_Num) Delta_Now
31、=Calibrate_FrequenceCalibrate_Num-Tempi; if (Delta_NowDelta_Min)/如果當(dāng)前差值比“世界記錄”還小時 RSELx_DCOx_WinerCalibrate_Num=i;/新Winner誕生 Delta_Min=Delta_Now; /取代前“世界記錄” 341、點亮紅燈Calibrate_Start(); 2、測量128個“純凈”DCO頻率Measure_Temp();3、找出最接近的16個“純凈”頻率Find_RSELx_DCOx_Winer();4、找出最優(yōu)MODxMeasure_MODx()5、合成校驗數(shù)組Calculate_I
32、nfoFlash_Data()6、寫入FlashWrite_InfoFlashB()7、點亮綠燈Calibrate_Finish();循環(huán)輸出DCODCOTest()35流水賬作業(yè)測頻比較函數(shù)測頻比較函數(shù)Measure_MODx()/* * 名 稱:Measure_MODx() * 功 能:基于已校驗成功的RSELx和DCOx,進(jìn)一步校驗出最合適的MODx* 說 明:本函數(shù)將固定RSELx和DCOx,窮舉32種MODx的取值,然后判斷最優(yōu)的MODx*/void Measure_MODx() /步驟4:在最近接的純凈頻率基礎(chǔ)上,窮舉找到最優(yōu)的MODx設(shè)置unsigned char mod_x =
33、 0;unsigned long Freq_Temp = 0;unsigned int Delta_Now=0;unsigned int Delta_Min=0;unsigned char Calibrate_Num=0;for(Calibrate_Num=0;Calibrate_NumCAL_NUM;Calibrate_Num+)Delta_Min=65530;/第一次比較時,故意定一個大差值36測頻比較函數(shù)測頻比較函數(shù)Measure_MODx()/-RSELx和DCOx一定時,測量mod_x改變時的系列頻率-for(mod_x=0;mod_x 32;mod_x+)DCO_Set_Freq(
34、RSELx_DCOx_WinerCalibrate_Num,mod_x);/改變mod_x設(shè)置DCO/-定時測頻代碼開始-TA0CTL |=TACLR;WDTCTL=WDT_ADLY_1_9;_bis_SR_register(LPM0_bits ); /CPU精確休眠1.9ms(1/512秒)WDTCTL=WDTPW+WDTHOLD;Freq_Temp = TA0R;/讀取測頻值 /-定時測頻代碼結(jié)束-Freq_Temp=(Freq_Temp)*512)/1000; /計算DCO準(zhǔn)確頻率 /-與Find_RSELx_DCOx_Winer()不同,這里的要求是正負(fù)差值最小-if(Freq_Tem
35、pCalibrate_FrequenceCalibrate_Num)Delta_Now=Calibrate_FrequenceCalibrate_Num-(unsigned int) Freq_Temp; elseDelta_Now=(unsigned int ) Freq_Temp - Calibrate_FrequenceCalibrate_Num;if (Delta_NowDelta_Min) /如果當(dāng)前差值比“世界記錄”還小時MODx_WinerCalibrate_Num=mod_x;/新Winner誕生Ture_FreqCalibrate_Num=(unsigned int )Fre
36、q_Temp; /記錄校驗后的準(zhǔn)確頻率Delta_Min=Delta_Now; /取代前“世界記錄”371、點亮紅燈Calibrate_Start(); 2、測量128個“純凈”DCO頻率Measure_Temp();3、找出最接近的16個“純凈”頻率Find_RSELx_DCOx_Winer();4、找出最優(yōu)MODxMeasure_MODx()5、合成校驗數(shù)組Calculate_InfoFlash_Data()6、寫入FlashWrite_InfoFlashB()7、點亮綠燈Calibrate_Finish();循環(huán)輸出DCODCOTest()38流水賬作業(yè)數(shù)據(jù)合成函數(shù)數(shù)據(jù)合成函數(shù)Calculate_InfoFlash_Data()/* * 名 稱:Calculate_InfoFlash_Data() * 功 能:基于已校驗成功的RSELx、DCOx和MODx封裝待寫入Flash的數(shù)據(jù)* 說 明:16位數(shù)據(jù)的格式完全仿照出廠校驗參數(shù),最高4位固定1000,然后依次為RSLEx、DCOx和MODx。*/void Calculate_InfoFlash_Data() /步驟5:將最合適的頻率設(shè)定參數(shù)組合成校驗數(shù)組unsigned char RSELx=0;unsigned char DCOx=0;unsigned char i=0;for
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 醫(yī)院入職合同范本
- 倉儲承諾合同范本
- 三年級口算題庫匯編1000道
- 二年級口算題目全集100道
- 2025云南省安全員C證考試題庫
- 出售注塑設(shè)備合同范本
- 單位電腦租賃合同范本
- 卡車鋼板采購合同范本
- 2025河北省安全員知識題庫及答案
- 半包水電安裝合同范本
- 遼寧省大連市2023-2024學(xué)年八年級下學(xué)期第一次月考語文試題(含答案解析)
- DataOps 實踐指南 2.0白皮書
- 供電所班組建設(shè)方案
- 委托處置不良資產(chǎn)協(xié)議(三篇)
- 胎膜早破的診斷與處理指南
- 新時代勞動教育教程(中職版勞動教育)全套教學(xué)課件
- 2024年02月國家鐵路局事業(yè)單位招考聘用27人筆試歷年(2016-2023年)真題薈萃帶答案解析
- 廚房用電安全知識
- 承德承德縣2023-2024學(xué)年八年級上學(xué)期期末數(shù)學(xué)綜合檢測卷(含答案)
- 人教鄂教版小學(xué)科學(xué)三年級下冊全冊教案教學(xué)設(shè)計
- 2024年湖南鐵道職業(yè)技術(shù)學(xué)院高職單招(英語/數(shù)學(xué)/語文)筆試歷年參考題庫含答案解析
評論
0/150
提交評論