亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

蟲蟲首頁| 資源下載| 資源專輯| 精品軟件
登錄| 注冊

Low-LEVEL

  • DS1820 C51 子程序 (一線數(shù)據(jù)傳輸)

    //芯片資料請到www.elecfans.com查找 //DS1820 C51 子程序//這里以11.0592M晶體為例,不同的晶體速度可能需要調(diào)整延時的時間//sbit DQ =P2^1;//根據(jù)實(shí)際情況定義端口 typedef unsigned char byte;typedef unsigned int  word; //延時void delay(word useconds){  for(;useconds>0;useconds--);} //復(fù)位byte ow_reset(void){  byte presence;  DQ = 0; //pull DQ line low  delay(29); // leave it low for 480us  DQ = 1; // allow line to return high  delay(3); // wait for presence  presence = DQ; // get presence signal  delay(25); // wait for end of timeslot  return(presence); // presence signal returned}     // 0=presence, 1 = no part //從 1-wire 總線上讀取一個字節(jié)byte read_byte(void){  byte i;  byte value = 0;  for (i=8;i>0;i--)  {    value>>=1;    DQ = 0; // pull DQ low to start timeslot    DQ = 1; // then return high    delay(1);  //for (i=0; i<3; i++);     if(DQ)value|=0x80;    delay(6); // wait for rest of timeslot  }  return(value);} //向 1-WIRE 總線上寫一個字節(jié)void write_byte(char val){  byte i;  for (i=8; i>0; i--) // writes byte, one bit at a time  {    DQ = 0; // pull DQ low to start timeslot    DQ = val&0x01;    delay(5); // hold value for remainder of timeslot    DQ = 1;    val=val/2;  }  delay(5);} //讀取溫度char Read_Temperature(void){  union{    byte c[2];    int x;  }temp;   ow_reset();  write_byte(0xCC); // Skip ROM  write_byte(0xBE); // Read Scratch Pad  temp.c[1]=read_byte();  temp.c[0]=read_byte();  ow_reset();  write_byte(0xCC); //Skip ROM  write_byte(0x44); // Start Conversion  return temp.x/2;}

    標(biāo)簽: 1820 C51 DS 程序

    上傳時間: 2013-11-03

    上傳用戶:hongmo

  • LC7461遙控解碼子程序源代碼

    //遙控解碼子程序,LC7461,用戶碼為11C//external interrupt0void isr_4(){  unsigned char r_count;//定義解碼的個數(shù) unsigned long use_data=0;//定義16位的用戶碼,只用到13位 unsigned long use_code=0;//定義16位的用戶反碼,只用到13位 unsigned long data=0;//定義16位數(shù)據(jù)碼,包括8位數(shù)據(jù)碼和反碼 unsigned char data_h=0;//數(shù)據(jù)反碼 unsigned char data_l=0;//數(shù)據(jù)碼 _clrwdt();// _delay(7000);//7461解碼,延時7000// _delay(7000);//7461解碼,延時7000//_delay(7000);//7461解碼,延時7000 if(remote==1)  goto error; while(remote==0);//wait to high //_delay(9744);count_delay=0; while(count_delay<143); if(remote==1)  goto error;     /////用戶碼解碼use_data//////////add//////////////////////////     for(r_count=13;r_count>0;r_count--)  {  while(remote==0);//wait to high  count_delay=0;     while(count_delay<24);//_delay(1680);  _c=remote;  if(_c==1)   {   _lrrc(&use_data);   count_delay=0;         while(count_delay<32);//_delay(2200);//wait to low   }  else   _lrrc(&use_data);  }  _nop(); //if(remote==1)  //_delay(1680);//wait to low while(remote==1);//wait to low     _nop();     ////////用戶碼解碼finish/////////add/////////add////////     /////用戶碼反碼解碼use_code//////////add//////////////////////////     for(r_count=13;r_count>0;r_count--)  {  while(remote==0);//wait to high  count_delay=0;         while(count_delay<24);//_delay(1680);  _c=remote;  if(_c==1)   {   _lrrc(&use_code);   count_delay=0;         while(count_delay<32);//_delay(2200);//wait to low   }  else   _lrrc(&use_code);  } _nop(); //if(remote==1) // _delay(1680);//wait to low while(remote==1);//wait to low     _nop();     ////////用戶碼反碼解碼finish/////////add/////////add////////     ////數(shù)據(jù)碼解碼開始////data_l為用戶碼,data_h為數(shù)據(jù)碼反碼//////////// for(r_count=16;r_count>0;r_count--)  {  while(remote==0);//wait to high  count_delay=0;         while(count_delay<24);//_delay(1680);  _c=remote;  if(_c==1)   {   _lrrc(&data);   count_delay=0;         while(count_delay<32);//_delay(2200);//wait to low   }  else   _lrrc(&data);  } ////數(shù)據(jù)碼解碼結(jié)束//////////////////////////////////////////////// data_l=data; data_h=data>>8; ///用戶碼////// use_data>>=3; use_code>>=3; use_code=~use_code; //////// ////如果用戶碼等與0x11c并且數(shù)據(jù)碼和數(shù)據(jù)反碼都校驗一致,解碼成功 //if((~data_h==data_l)&&use_data==0x11c)//使用用戶碼 //跳過用戶碼 if(~data_h==data_l)//如果數(shù)據(jù)碼和數(shù)據(jù)反碼(取反后)相等,解碼正確  {  _nop();  r_data=data_l;//r_data為解出的最終數(shù)據(jù)碼  } //否則解碼不成功 _nop(); _nop();error:  //r_data=nocode; _nop();    _nop(); _nop();}

    標(biāo)簽: 7461 LC 遙控 解碼

    上傳時間: 2014-03-27

    上傳用戶:shenlan

  • 單片機(jī)應(yīng)用技術(shù)選編3

    單片機(jī)應(yīng)用技術(shù)選編(3) 目錄  第一章 單片機(jī)的綜合應(yīng)用技術(shù)1.1 8098單片機(jī)存儲器的擴(kuò)展技術(shù)1.2 87C196KC單片機(jī)的DMA功能1.3 MCS?96系列單片機(jī)高精度接口設(shè)計1.4 利用PC機(jī)的8096軟件開發(fā)系統(tǒng)1.5 EPROM模擬器及其應(yīng)用1.6 MCS?51智能反匯編軟件的設(shè)計與實(shí)現(xiàn)1.7 MCS?51系列軟件設(shè)計與調(diào)試中一個值得注意的問題1.8 PL/M語言在微機(jī)開發(fā)系統(tǒng)中的應(yīng)用特性1.9 MCS?51單片機(jī)開發(fā)系統(tǒng)中的斷點(diǎn)產(chǎn)生1.10 C語言實(shí)型數(shù)與單片機(jī)浮點(diǎn)數(shù)之間數(shù)據(jù)格式的轉(zhuǎn)換1.11 微機(jī)控制系統(tǒng)初始化問題探討1.12 MCS?51中斷系統(tǒng)中的復(fù)位問題1.13 工業(yè)控制軟件的編程原則與編程技巧1.14 CMOS微處理器的功耗特性及其功耗控制原理和應(yīng)用1.15 基于PLL技術(shù)的A/D、D/A轉(zhuǎn)換器的設(shè)計1.16 智能儀器監(jiān)控程序的模塊化設(shè)計1.17 用軟件邏輯開關(guān)實(shí)現(xiàn)單片機(jī)的地址重疊使用1.18 8259A可編程中斷控制器與8031單片機(jī)接口電路及編程1.19 NSC810及其在各種微處理機(jī)中的應(yīng)用1.20 MC146818在使用中的幾個問題1.21 交流伺服系統(tǒng)中采用8155兼作雙口信箱存儲器的雙微機(jī)結(jié)構(gòu)1.22 實(shí)用漢字庫芯片的制作 第二章 新一代存儲器及邏輯器件2.1 新一代非易失性記憶元件--閃爍存儲器2.2 Flash存儲器及應(yīng)用2.3 隨機(jī)靜態(tài)存儲器HM628128及應(yīng)用2.4 非揮發(fā)性隨機(jī)存儲器NOVRAM2.5 ASIC的設(shè)計方法和設(shè)計工具2.6 GAL器件的編程方法及其應(yīng)用2.7 第三代可編程邏輯器件--高密EPLD輯器件EPLDFPGA設(shè)計轉(zhuǎn)換 第三章 數(shù)據(jù)采集、前向通道與測量技術(shù) 3.1 溫度傳感器通道接口技術(shù) 3.2 LM135系列精密溫度傳感器的原理和應(yīng)用 3.3 儀表放大器AD626的應(yīng)用 3.4 5G7650使用中應(yīng)注意的問題 3.5 用集成運(yùn)算放大器構(gòu)成電荷放大器組件 3.6 普通光電耦合器的線性應(yīng)用 3.7 高線性光耦合型隔離放大器的研制 3.8 一種隔離型16位單片機(jī)高精度模擬量接口3.9 單片16位A/D轉(zhuǎn)換器AD7701及其與8031單片機(jī)的串行接口3.10 雙積分型A/D轉(zhuǎn)換器與MCS?51系列單片機(jī)接口的新方法3.11 8031單片機(jī)與AD574A/D轉(zhuǎn)換器的最簡接口3.12 8098單片機(jī)A/D轉(zhuǎn)換接口及其程序設(shè)計3.13 提高A/D轉(zhuǎn)換器分辨率的實(shí)用方案3.14 用CD4051提高8098單片機(jī)內(nèi)10位A/D轉(zhuǎn)換器分辨率的方法3.15 單片機(jī)實(shí)現(xiàn)16位高速積分式A/D轉(zhuǎn)換器3.16 434位A/D轉(zhuǎn)換器MAX133(134)的原理及應(yīng)用3.17 AD574A應(yīng)用中應(yīng)注意的問題 3.18 CC14433使用中應(yīng)注意的問題 3.19 高精度寬范圍數(shù)據(jù)采集系統(tǒng)的溫度補(bǔ)償途徑 3.20 縮短ICL7135A/D采樣程序時間的一種方法 3.21 用單片機(jī)實(shí)現(xiàn)的數(shù)字式自動增益控制 3.22 自動量程轉(zhuǎn)換電路 3.23 雙積分型A/D的自動量程切換電路 3.24 常用雙積分型A/D轉(zhuǎn)換器自換程功能的擴(kuò)展3.25 具有自動量程轉(zhuǎn)換功能的單片機(jī)A/D接口3.26 混合型數(shù)據(jù)采集器SDM857的功能與應(yīng)用3.27 高速數(shù)據(jù)采集系統(tǒng)的傳輸接口3.28 SJ2000方向鑒別位移脈寬頻率檢測多用途專用集成電路3.29 多路高速高精度F/D專用集成電路3.30 數(shù)控帶通濾波器的實(shí)現(xiàn)及其典型應(yīng)用 第四章 控制系統(tǒng)與后向通道接口技術(shù)4.1 模糊邏輯與模糊控制4.2 自動控制技術(shù)的新發(fā)展--模糊控制技術(shù)4.3 模糊控制表的確定原則4.4 變結(jié)構(gòu)模糊控制系統(tǒng)的實(shí)驗研究4.5 新型集成模糊數(shù)據(jù)相關(guān)器NLX1124.6 功率固態(tài)繼電器的應(yīng)用4.7 雙向功率MOS固態(tài)繼電器4.8 SSR小型固態(tài)繼電器與PSSR功率參數(shù)固態(tài)繼電器4.9 JGD型多功能固態(tài)繼電器的原理和應(yīng)用4.10 光電耦合器在晶閘管觸發(fā)電路中的應(yīng)用4.11 一種廉價的12位D/A轉(zhuǎn)換器AD667及接口4.12 利用單片機(jī)構(gòu)成高精度PWM式12位D/A4.13 三相高頻PWM模塊SLE45204.14 專用集成電路TCA785及其應(yīng)用4.15 單片溫度控制器LM3911的應(yīng)用4.16 工業(yè)測控系統(tǒng)軟件設(shè)計的若干問題研究 第五章 人機(jī)對話通道接口技術(shù)5.1 廉價實(shí)用的8×8鍵盤5.2 單片機(jī)遙控鍵盤接口5.3 對8279鍵盤顯示接口的改進(jìn)5.4 用單片機(jī)8031的七根I/O線實(shí)現(xiàn)對鍵盤與顯示器的控制5.5 通用8位LED數(shù)碼管驅(qū)動電路ICM7218B5.6 利用條圖顯示驅(qū)動器LM3914組成100段LED顯示器的方法5.7 液晶顯示器的多極驅(qū)動方式5.8 點(diǎn)陣式液晶顯示屏的構(gòu)造與應(yīng)用5.9 點(diǎn)陣式液晶顯示器圖形程序設(shè)計5.10 DMF5001N點(diǎn)陣式液晶顯示器和8098單片機(jī)的接口技術(shù)5.11 8098單片機(jī)與液晶顯示控制器HD61830接口5.12 利用PL/M語言對點(diǎn)陣式液晶顯示器進(jìn)行漢字程序設(shè)計5.13 語音合成器TMS 5220的開發(fā)與應(yīng)用5.14 制作T6668語音系統(tǒng)的一些技術(shù)問題5.15 單片機(jī)、單板機(jī)在屏顯系統(tǒng)中的應(yīng)用 第六章 多機(jī)通訊網(wǎng)絡(luò)與遙控技術(shù)6.1 用雙UART構(gòu)成的可尋址遙測點(diǎn)裝置--兼談如何組成系統(tǒng)6.2 IBM?PC微機(jī)與8098單片機(jī)的多機(jī)通訊6.3 80C196單片機(jī)與IBM?PC機(jī)的串行通訊6.4 IBM?PC與MCS?51多機(jī)通訊的研究6.5 半雙工方式傳送的單片機(jī)多機(jī)通信接口電路及軟件設(shè)計6.6 單片機(jī)與IBM/PC機(jī)通訊的新型接口及編程6.7 用光耦實(shí)現(xiàn)一點(diǎn)對多點(diǎn)的總線式通訊電路6.8 用EPROM作為通訊變換器實(shí)現(xiàn)多機(jī)通訊6.9 ICL232單電源雙RS?232發(fā)送/接收器及其應(yīng)用6.10 DTMF信號發(fā)送/接收電路芯片MT8880及應(yīng)用6.11 通用紅外線遙控系統(tǒng)6.12 8031單片機(jī)在遙控解碼方面的應(yīng)用 第七章 電源、電壓變換及電源監(jiān)視7.1 用于微機(jī)控制系統(tǒng)的高可靠性供電方法7.2 80C31單片機(jī)防掉電和抗干擾電源的設(shè)計7.3 可編程基準(zhǔn)電壓源7.4 電源電壓監(jiān)視器件M81953B7.5 檢出電壓可任意設(shè)定的電源電壓監(jiān)測器7.6 低壓降(LDO?Low Drop?Out)穩(wěn)壓器7.7 LM317三端可調(diào)穩(wěn)壓器應(yīng)用二例7.8 三端集成穩(wěn)壓器的擴(kuò)流應(yīng)用 第八章 可靠性與抗干擾技術(shù)8.1 數(shù)字電路的可靠性設(shè)計實(shí)踐與體會8.2 單片機(jī)容錯系統(tǒng)的設(shè)計與實(shí)現(xiàn)8.3 微機(jī)測控系統(tǒng)的接地、屏蔽和電源供給8.4 ATE的抗干擾及接地技術(shù)8.5 微處理器監(jiān)控電路MAX690A/MAX692A8.6 電測儀表電路的實(shí)用抗干擾技術(shù)8.7 工業(yè)鍍鋅電阻爐溫度控制機(jī)的抗干擾措施8.8 一種簡單的抗干擾控制算法 ? 第九章 綜合應(yīng)用實(shí)例9.1 蔬菜灌溉相關(guān)參數(shù)的自動檢測9.2 MH?214溶解氧測定儀9.3 COP840C單片機(jī)在液晶線控空調(diào)電腦控制器中的應(yīng)用9.4 單片機(jī)在電飯煲中的應(yīng)用9.5 用PIC單片機(jī)制作電扇自然風(fēng)發(fā)生器 第十章 文章摘要 一、 單片機(jī)的綜合應(yīng)用技術(shù)1.1 摩托羅拉8位單片機(jī)的應(yīng)用和開發(fā)1.2 NS公司的COP800系列8位單片機(jī)1.3 M68HC11與MCS?51單片機(jī)功能比較1.4 8098單片機(jī)8M存儲空間的擴(kuò)展技術(shù)1.5 80C196KC單片機(jī)的外部設(shè)備事件服務(wù)器1.6 一種多進(jìn)程實(shí)時控制系統(tǒng)的軟件設(shè)計1.7 開發(fā)單片機(jī)的結(jié)構(gòu)化高級語言PL/M?961.8 應(yīng)用軟件開發(fā)中的菜單接口技術(shù)1.9 單片機(jī)用戶系統(tǒng)EPROM中用戶程序的剖析方法1.10 BJS?98硬件、軟件典型實(shí)驗1.11 FORTH語言系統(tǒng)的開發(fā)應(yīng)用1.12 在Transputer系統(tǒng)上用并行C語言編程的特點(diǎn)1.13 一種軟件擴(kuò)展8031內(nèi)部計數(shù)器簡易方法1.14 MCS 51系列單片機(jī)功能測試方法研究1.15 用CD 4520B設(shè)計對稱輸出分頻器的方法1.16 多路模擬開關(guān)CC 4051功能擴(kuò)展方法1.17 條形碼技術(shù)及其應(yīng)用系統(tǒng)的設(shè)計與實(shí)現(xiàn)? 二、 新一代存儲器及邏輯器件2.1 一種多功能存儲器M6M 72561J2.2 串行E2PROM及其在智能儀器中的應(yīng)用2.3 新型高性能的AT24C系列串行E2PROM2.4 2K~512K EPROM編程卡2.5 電子盤的設(shè)計與實(shí)現(xiàn)2.6 NS GAL器件的封裝標(biāo)簽、類型代碼和編程結(jié)構(gòu)間的關(guān)系 三、數(shù)據(jù)采集、前向通道與測量技術(shù)3.1 儀器用精密運(yùn)放CA3193的應(yīng)用3.2 集成電壓?電流轉(zhuǎn)換器XTR100的應(yīng)用3.3 瞬時浮點(diǎn)放大器及應(yīng)用3.4 隔離放大器289J及其應(yīng)用3.5 ICS?300系列新型加速度傳感器3.6 一種實(shí)用的壓力傳感器接口電路3.7 霍爾傳感器的應(yīng)用3.8 一種對多個傳感器進(jìn)行調(diào)理的方法3.9 兩線制壓力變送器3.10 小信號雙線變送器XTR101的使用3.11 兩線長距離頻率傳輸壓力變送器的設(shè)計3.12 測溫元件AD590及其應(yīng)用3.13 熱敏電阻應(yīng)用動態(tài)3.14 一種組合式A/D、D/A轉(zhuǎn)換器的設(shè)計3.15 一種復(fù)合式A/D轉(zhuǎn)換器3.16 TLC549串行輸出ADC及其應(yīng)用3.17 提高A/D轉(zhuǎn)換精度的方法--雙通道A/D轉(zhuǎn)換3.18 模數(shù)轉(zhuǎn)換器ICL7135的0~3.9999V顯示3.19 微型光耦合器3.20 一種高精度的分壓器電路3.21 利用單片機(jī)軟件作熱電偶非線性補(bǔ)償3.22 三線制RTD測量電路及應(yīng)用中要注意的問題3.23 微伏信號高精度檢測中極易被忽略的問題3.24 寬范圍等分辨率精密測量法3.25 傳感器在線校準(zhǔn)系統(tǒng)3.26 一種高精度的熱敏電阻測溫電路3.27 超聲波專用集成電路LM1812的原理與應(yīng)用3.28 旋轉(zhuǎn)變壓器數(shù)字化檢測及其在8098單片機(jī)控制伺服系統(tǒng)中的應(yīng)用3.29 單片集成兩端式感溫電流源AD590在溫度測控系統(tǒng)中的應(yīng)用?3.30 數(shù)字示波器和單片機(jī)構(gòu)成的自動測試系統(tǒng)3.31 霍爾效應(yīng)式功率測量研究 四、 控制系統(tǒng)與后向通道接口技術(shù)4.1 模糊邏輯與模糊控制(實(shí)用模糊控制講座之一)4.2 紅綠燈模糊控制器(實(shí)用模糊控制講座之二)4.3 國外模糊技術(shù)新產(chǎn)品4.4 交流串級調(diào)速雙環(huán)模糊PI單片機(jī)控制系統(tǒng)4.5 時序控制專用集成電路LT156及其應(yīng)用4.6 電池充電控制集成電路4.7 雙向晶閘管4.8 雙向可控硅的自觸發(fā)電路及其應(yīng)用4.9 微處理器晶閘管頻率自適應(yīng)觸發(fā)器4.10 F18系列晶閘管模塊介紹4.11 集成電路UAA4002的原理及應(yīng)用4.12 IGBT及其驅(qū)動電路4.13 TWH8751應(yīng)用集錦4.14 結(jié)構(gòu)可變式計算機(jī)工業(yè)控制系統(tǒng)設(shè)計4.15 單片機(jī)控制的音響編輯器 五、 人機(jī)對話通道接口技術(shù)5.1 5×7點(diǎn)陣LED智能顯示器的應(yīng)用5.2 基于8031串行口的LED電子廣告牌5.3 點(diǎn)陣液晶顯示控制器與計算機(jī)的接口技術(shù)5.4 單片機(jī)控制可編程液晶顯示系統(tǒng)5.5 大規(guī)模語言集成電路應(yīng)用綜述5.6 最新可編程語言集成電路MSSIO61的應(yīng)用5.7 用PC打印機(jī)接口擴(kuò)展并行接口 六、 多機(jī)系統(tǒng)、網(wǎng)絡(luò)與遙控技術(shù)6.1 用8098單片機(jī)構(gòu)成的分布式測溫系統(tǒng)6.2 平衡接口EIA?422和EIA485設(shè)計指南6.3 I2C BUS及其系統(tǒng)設(shè)計6.4 摩托羅拉可尋址異步接受/發(fā)送器6.5 用5V供電的RS232C接口芯片6.6 四通道紅外遙控器6.7 TA7333P和TA7657P的功能及應(yīng)用 七、 電源、電壓變換及電源監(jiān)視7.1 單片機(jī)控制的可控硅三相電源調(diào)壓穩(wěn)壓技術(shù)7.2 集成開關(guān)電源控制器MC34063的原理及應(yīng)用7.3 LM299精密基準(zhǔn)電壓源7.4 集成過壓保護(hù)器的應(yīng)用7.5 3V供電的革命7.6 HMOS微機(jī)的超低電源電壓運(yùn)行技術(shù) 八、 可靠性與抗干擾設(shè)計8.1 淺談艦船電磁兼容與可靠性 九、 綜合應(yīng)用實(shí)例9.1 8098單片機(jī)交流電氣參數(shù)測試系統(tǒng)的設(shè)計和應(yīng)用9.2 主軸回轉(zhuǎn)誤差補(bǔ)償控制器9.3 FWK?A型大功率發(fā)射臺微機(jī)控制系統(tǒng)9.4 高性能壓控振蕩型精密波形發(fā)生器ICL8038及應(yīng)用9.5 單片機(jī)COP 840C在洗碗機(jī)中的應(yīng)用

    標(biāo)簽: 單片機(jī) 應(yīng)用技術(shù)

    上傳時間: 2013-11-10

    上傳用戶:lijinchuan

  • 匯編+保護(hù)模式+教程

    九.輸入/輸出保護(hù)為了支持多任務(wù),80386不僅要有效地實(shí)現(xiàn)任務(wù)隔離,而且還要有效地控制各任務(wù)的輸入/輸出,避免輸入/輸出沖突。本文將介紹輸入輸出保護(hù)。 這里下載本文源代碼。 <一>輸入/輸出保護(hù)80386采用I/O特權(quán)級IPOL和I/O許可位圖的方法來控制輸入/輸出,實(shí)現(xiàn)輸入/輸出保護(hù)。 1.I/O敏感指令輸入輸出特權(quán)級(I/O Privilege Level)規(guī)定了可以執(zhí)行所有與I/O相關(guān)的指令和訪問I/O空間中所有地址的最外層特權(quán)級。IOPL的值在如下圖所示的標(biāo)志寄存器中。 標(biāo)  志寄存器 BIT31—BIT18 BIT17 BIT16 BIT15 BIT14 BIT13—BIT12 BIT11 BIT10 BIT9 BIT8 BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0 00000000000000 VM RF 0 NT IOPL OF DF IF TF SF ZF 0 AF 0 PF 1 CF I/O許可位圖規(guī)定了I/O空間中的哪些地址可以由在任何特權(quán)級執(zhí)行的程序所訪問。I/O許可位圖在任務(wù)狀態(tài)段TSS中。 I/O敏感指令 指令 功能 保護(hù)方式下的執(zhí)行條件 CLI 清除EFLAGS中的IF位 CPL<=IOPL STI 設(shè)置EFLAGS中的IF位 CPL<=IOPL IN 從I/O地址讀出數(shù)據(jù) CPL<=IOPL或I/O位圖許可 INS 從I/O地址讀出字符串 CPL<=IOPL或I/O位圖許可 OUT 向I/O地址寫數(shù)據(jù) CPL<=IOPL或I/O位圖許可 OUTS 向I/O地址寫字符串 CPL<=IOPL或I/O位圖許可 上表所列指令稱為I/O敏感指令,由于這些指令與I/O有關(guān),并且只有在滿足所列條件時才可以執(zhí)行,所以把它們稱為I/O敏感指令。從表中可見,當(dāng)前特權(quán)級不在I/O特權(quán)級外層時,可以正常執(zhí)行所列的全部I/O敏感指令;當(dāng)特權(quán)級在I/O特權(quán)級外層時,執(zhí)行CLI和STI指令將引起通用保護(hù)異常,而其它四條指令是否能夠被執(zhí)行要根據(jù)訪問的I/O地址及I/O許可位圖情況而定(在下面論述),如果條件不滿足而執(zhí)行,那么將引起出錯碼為0的通用保護(hù)異常。 由于每個任務(wù)使用各自的EFLAGS值和擁有自己的TSS,所以每個任務(wù)可以有不同的IOPL,并且可以定義不同的I/O許可位圖。注意,這些I/O敏感指令在實(shí)模式下總是可執(zhí)行的。 2.I/O許可位圖如果只用IOPL限制I/O指令的執(zhí)行是很不方便的,不能滿足實(shí)際要求需要。因為這樣做會使得在特權(quán)級3執(zhí)行的應(yīng)用程序要么可訪問所有I/O地址,要么不可訪問所有I/O地址。實(shí)際需要與此剛好相反,只允許任務(wù)甲的應(yīng)用程序訪問部分I/O地址,只允許任務(wù)乙的應(yīng)用程序訪問另一部分I/O地址,以避免任務(wù)甲和任務(wù)乙在訪問I/O地址時發(fā)生沖突,從而避免任務(wù)甲和任務(wù)乙使用使用獨(dú)享設(shè)備時發(fā)生沖突。 因此,在IOPL的基礎(chǔ)上又采用了I/O許可位圖。I/O許可位圖由二進(jìn)制位串組成。位串中的每一位依次對應(yīng)一個I/O地址,位串的第0位對應(yīng)I/O地址0,位串的第n位對應(yīng)I/O地址n。如果位串中的第位為0,那么對應(yīng)的I/O地址m可以由在任何特權(quán)級執(zhí)行的程序訪問;否則對應(yīng)的I/O地址m只能由在IOPL特權(quán)級或更內(nèi)層特權(quán)級執(zhí)行的程序訪問。如果在I/O外層特權(quán)級執(zhí)行的程序訪問位串中位值為1的位所對應(yīng)的I/O地址,那么將引起通用保護(hù)異常。 I/O地址空間按字節(jié)進(jìn)行編址。一條I/O指令最多可涉及四個I/O地址。在需要根據(jù)I/O位圖決定是否可訪問I/O地址的情況下,當(dāng)一條I/O指令涉及多個I/O地址時,只有這多個I/O地址所對應(yīng)的I/O許可位圖中的位都為0時,該I/O指令才能被正常執(zhí)行,如果對應(yīng)位中任一位為1,就會引起通用保護(hù)異常。 80386支持的I/O地址空間大小是64K,所以構(gòu)成I/O許可位圖的二進(jìn)制位串最大長度是64K個位,即位圖的有效部分最大為8K字節(jié)。一個任務(wù)實(shí)際需要使用的I/O許可位圖大小通常要遠(yuǎn)小于這個數(shù)目。 當(dāng)前任務(wù)使用的I/O許可位圖存儲在當(dāng)前任務(wù)TSS中低端的64K字節(jié)內(nèi)。I/O許可位圖總以字節(jié)為單位存儲,所以位串所含的位數(shù)總被認(rèn)為是8的倍數(shù)。從前文中所述的TSS格式可見,TSS內(nèi)偏移66H的字確定I/O許可位圖的開始偏移。由于I/O許可位圖最長可達(dá)8K字節(jié),所以開始偏移應(yīng)小于56K,但必須大于等于104,因為TSS中前104字節(jié)為TSS的固定格式,用于保存任務(wù)的狀態(tài)。 1.I/O訪問許可檢查細(xì)節(jié)保護(hù)模式下處理器在執(zhí)行I/O指令時進(jìn)行許可檢查的細(xì)節(jié)如下所示。 (1)若CPL<=IOPL,則直接轉(zhuǎn)步驟(8);(2)取得I/O位圖開始偏移;(3)計算I/O地址對應(yīng)位所在字節(jié)在I/O許可位圖內(nèi)的偏移;(4)計算位偏移以形成屏蔽碼值,即計算I/O地址對應(yīng)位在字節(jié)中的第幾位;(5)把字節(jié)偏移加上位圖開始偏移,再加1,所得值與TSS界限比較,若越界,則產(chǎn)生出錯碼為0的通用保護(hù)故障;(6)若不越界,則從位圖中讀對應(yīng)字節(jié)及下一個字節(jié);(7)把讀出的兩個字節(jié)與屏蔽碼進(jìn)行與運(yùn)算,若結(jié)果不為0表示檢查未通過,則產(chǎn)生出錯碼為0的通用保護(hù)故障;(8)進(jìn)行I/O訪問。設(shè)某一任務(wù)的TSS段如下: TSSSEG                  SEGMENT PARA USE16                        TSS     <>             ;TSS低端固定格式部分                        DB      8 DUP(0)       ;對應(yīng)I/O端口00H—3FH                        DB      10000000B      ;對應(yīng)I/O端口40H—47H                        DB      01100000B      ;對用I/O端口48H—4FH                        DB      8182 DUP(0ffH) ;對應(yīng)I/O端口50H—0FFFFH                        DB      0FFH           ;位圖結(jié)束字節(jié)TSSLen                  =       $TSSSEG                  ENDS 再假設(shè)IOPL=1,CPL=3。那么如下I/O指令有些能正常執(zhí)行,有些會引起通用保護(hù)異常:                         in      al,21h  ;(1)正常執(zhí)行                        in      al,47h  ;(2)引起異常                        out     20h,al  ;(3)正常實(shí)行                        out     4eh,al  ;(4)引起異常                        in      al,20h  ;(5)正常執(zhí)行                        out     20h,eax ;(6)正常執(zhí)行                        out     4ch,ax  ;(7)引起異常                        in      ax,46h  ;(8)引起異常                        in      eax,42h ;(9)正常執(zhí)行 由上述I/O許可檢查的細(xì)節(jié)可見,不論是否必要,當(dāng)進(jìn)行許可位檢查時,80386總是從I/O許可位圖中讀取兩個字節(jié)。目的是為了盡快地執(zhí)行I/O許可檢查。一方面,常常要讀取I/O許可位圖的兩個字節(jié)。例如,上面的第(8)條指令要對I/O位圖中的兩個位進(jìn)行檢查,其低位是某個字節(jié)的最高位,高位是下一個字節(jié)的最低位。可見即使只要檢查兩個位,也可能需要讀取兩個字節(jié)。另一方面,最多檢查四個連續(xù)的位,即最多也只需讀取兩個字節(jié)。所以每次要讀取兩個字節(jié)。這也是在判別是否越界時再加1的原因。為此,為了避免在讀取I/O許可位圖的最高字節(jié)時產(chǎn)生越界,必須在I/O許可位圖的最后填加一個全1的字節(jié),即0FFH。此全1的字節(jié)應(yīng)填加在最后一個位圖字節(jié)之后,TSS界限范圍之前,即讓填加的全1字節(jié)在TSS界限之內(nèi)。 I/O許可位圖開始偏移加8K所得的值與TSS界限值二者中較小的值決定I/O許可位圖的末端。當(dāng)TSS的界限大于I/O許可位圖開始偏移加8K時,I/O許可位圖的有效部分就有8K字節(jié),I/O許可檢查全部根據(jù)全部根據(jù)該位圖進(jìn)行。當(dāng)TSS的界限不大于I/O許可位圖開始偏移加8K時,I/O許可位圖有效部分就不到8K字節(jié),于是對較小I/O地址訪問的許可檢查根據(jù)位圖進(jìn)行,而對較大I/O地址訪問的許可檢查總被認(rèn)為不可訪問而引起通用保護(hù)故障。因為這時會發(fā)生字節(jié)越界而引起通用保護(hù)異常,所以在這種情況下,可認(rèn)為不足的I/O許可位圖的高端部分全為1。利用這個特點(diǎn),可大大節(jié)約TSS中I/O許可位圖占用的存儲單元,也就大大減小了TSS段的長度。 <二>重要標(biāo)志保護(hù)輸入輸出的保護(hù)與存儲在標(biāo)志寄存器EFLAGS中的IOPL密切相關(guān),顯然不能允許隨便地改變IOPL,否則就不能有效地實(shí)現(xiàn)輸入輸出保護(hù)。類似地,對EFLAGS中的IF位也必須加以保護(hù),否則CLI和STI作為敏感指令對待是無意義的。此外,EFLAGS中的VM位決定著處理器是否按虛擬8086方式工作。 80386對EFLAGS中的這三個字段的處理比較特殊,只有在較高特權(quán)級執(zhí)行的程序才能執(zhí)行IRET、POPF、CLI和STI等指令改變它們。下表列出了不同特權(quán)級下對這三個字段的處理情況。 不同特權(quán)級對標(biāo)志寄存器特殊字段的處理 特權(quán)級 VM標(biāo)志字段 IOPL標(biāo)志字段 IF標(biāo)志字段 CPL=0 可變(初POPF指令外) 可變 可變 0  不變 不變 可變 CPL>IOPL 不變 不變 不變 從表中可見,只有在特權(quán)級0執(zhí)行的程序才可以修改IOPL位及VM位;只能由相對于IOPL同級或更內(nèi)層特權(quán)級執(zhí)行的程序才可以修改IF位。與CLI和STI指令不同,在特權(quán)級不滿足上述條件的情況下,當(dāng)執(zhí)行POPF指令和IRET指令時,如果試圖修改這些字段中的任何一個字段,并不引起異常,但試圖要修改的字段也未被修改,也不給出任何特別的信息。此外,指令POPF總不能改變VM位,而PUSHF指令所壓入的標(biāo)志中的VM位總為0。 <三>演示輸入輸出保護(hù)的實(shí)例(實(shí)例九)下面給出一個用于演示輸入輸出保護(hù)的實(shí)例。演示內(nèi)容包括:I/O許可位圖的作用、I/O敏感指令引起的異常和特權(quán)指令引起的異常;使用段間調(diào)用指令CALL通過任務(wù)門調(diào)用任務(wù),實(shí)現(xiàn)任務(wù)嵌套。 1.演示步驟實(shí)例演示的內(nèi)容比較豐富,具體演示步驟如下:(1)在實(shí)模式下做必要準(zhǔn)備后,切換到保護(hù)模式;(2)進(jìn)入保護(hù)模式的臨時代碼段后,把演示任務(wù)的TSS段描述符裝入TR,并設(shè)置演示任務(wù)的堆棧;(3)進(jìn)入演示代碼段,演示代碼段的特權(quán)級是0;(4)通過任務(wù)門調(diào)用測試任務(wù)1。測試任務(wù)1能夠順利進(jìn)行;(5)通過任務(wù)門調(diào)用測試任務(wù)2。測試任務(wù)2演示由于違反I/O許可位圖規(guī)定而導(dǎo)致通用保護(hù)異常;(6)通過任務(wù)門調(diào)用測試任務(wù)3。測試任務(wù)3演示I/O敏感指令如何引起通用保護(hù)異常;(7)通過任務(wù)門調(diào)用測試任務(wù)4。測試任務(wù)4演示特權(quán)指令如何引起通用保護(hù)異常;(8)從演示代碼轉(zhuǎn)臨時代碼,準(zhǔn)備返回實(shí)模式;(9)返回實(shí)模式,并作結(jié)束處理。

    標(biāo)簽: 匯編 保護(hù)模式 教程

    上傳時間: 2013-12-11

    上傳用戶:nunnzhy

  • 51單片機(jī)讀寫u盤(含源程序和原理圖)

    附件有51單片機(jī)加上sl811讀寫U盤的源程序和原理圖 /*--------------------------------------------------------------------------AT89X52.H Header file for the low voltage Flash Atmel AT89C52 and AT89LV52.Copyright (c) 1995-1996 Keil Software, Inc.  All rights reserved.--------------------------------------------------------------------------*/ #ifndef AT89X52_HEADER_FILE#define AT89X52_HEADER_FILE 1 /*------------------------------------------------Byte Registers------------------------------------------------*/sfr P0      = 0x80;sfr SP      = 0x81;sfr DPL     = 0x82;sfr DPH     = 0x83;sfr PCON    = 0x87;sfr TCON    = 0x88;sfr TMOD    = 0x89;sfr TL0     = 0x8A;sfr TL1     = 0x8B;sfr TH0     = 0x8C;sfr TH1     = 0x8D;sfr P1      = 0x90;sfr SCON    = 0x98;sfr SBUF    = 0x99;sfr P2      = 0xA0;sfr IE      = 0xA8;sfr P3      = 0xB0;sfr IP      = 0xB8;sfr T2CON   = 0xC8;sfr T2MOD   = 0xC9;sfr RCAP2L  = 0xCA;sfr RCAP2H  = 0xCB;sfr TL2     = 0xCC;sfr TH2     = 0xCD;sfr PSW     = 0xD0;sfr ACC     = 0xE0;sfr B       = 0xF0;

    標(biāo)簽: 51單片機(jī) 讀寫 源程序 原理圖

    上傳時間: 2014-01-05

    上傳用戶:lnnn30

  • 帶通濾波器設(shè)計計算

    摘 要:用一種新的思路和方法,先計算低通、再計算高通濾波器的有關(guān)參數(shù),然后組合成帶通濾波器.關(guān)鍵詞:濾波器;參數(shù);新思路中圖分類號: TN713. 5  文獻(xiàn)識別碼:B  文章編號:1008 - 1666 (1999) 04 - 0089 - 03A New Consideration of the Band Filter’s CalculationGuo Wencheng( S hao Yang B usiness and Technology school , S haoyang , Hunan ,422000 )Abstract :This essay deals with a new method of calculating the band filters - first calculatingthe relevant parameters of low - pass filters ,then calculating the ones of high - pass filters.Key words :filter ; parameters ;new considercation八十年代后,信息產(chǎn)業(yè)得到了迅猛發(fā)展. 帶通濾波器在微波通信、廣播電視和精密儀器設(shè)備中得到了廣泛應(yīng)用. 帶通濾波器性能的優(yōu)劣,對提高接收機(jī)信噪比,防止鄰近信道干擾,提高設(shè)備的技術(shù)指標(biāo),有著十分重要的意義.我在長期的教學(xué)實(shí)踐中,用切比雪夫型方法設(shè)計、計算出寬帶濾波器集中參數(shù)元件的數(shù)據(jù). 該濾波器可運(yùn)用在檢測微波頻率的儀器和其他設(shè)備中. 再將其思路和計算方法介紹給大家,供參考.

    標(biāo)簽: 帶通濾波器設(shè)計 計算

    上傳時間: 2014-12-28

    上傳用戶:Yukiseop

  • at89c52 pdf

    The AT89C52 is a low-power, high-performance CMOS 8-bit microcomputer with 8Kbytes of Flash programmable and erasable read only memory (PEROM). The deviceis manufactured using Atmel’s high-density nonvolatile memory technology and iscompatible with the industry-standard 80C51 and 80C52 instruction set and pinout.The on-chip Flash allows the program memory to be reprogrammed in-system or by aconventional nonvolatile memory programmer. By combining a versatile 8-bit CPUwith Flash on a monolithic chip, the Atmel AT89C52 is a powerful microcomputerwhich provides a highly-flexible and cost-effective solution to many embedded controlapplications.

    標(biāo)簽: 89c c52 at

    上傳時間: 2013-11-10

    上傳用戶:1427796291

  • 基于DSP Builder數(shù)字信號處理器的FPGA設(shè)計

    針對使用硬件描述語言進(jìn)行設(shè)計存在的問題,提出一種基于FPGA并采用DSP Builder作為設(shè)計工具的數(shù)字信號處理器設(shè)計方法。并按照Matlab/Simulink/DSP Builder/QuartusⅡ設(shè)計流程,設(shè)計了一個12階FIR 低通數(shù)字濾波器,通過Quartus 時序仿真及嵌入式邏輯分析儀SignalTapⅡ硬件測試對設(shè)計進(jìn)行了驗證。結(jié)果表明,所設(shè)計的FIR 濾波器功能正確,性能良好。 Abstract:  Aiming at the problems in designing DSP using HDL,a method of designing DSP based on FPGA which using DSP Builder as designed tool is pointed out.A 12-order low-pass FIR digital filter was designed according to the process of Matlab/Simulink/DSP Builder/QuartusⅡ, and the design was verified by the timing simulation based on QuartusⅡand practical test based on SignalTapⅡ. The result shows the designed filter is correct in function and good in performance.

    標(biāo)簽: Builder FPGA DSP 數(shù)字信號處理器

    上傳時間: 2013-11-17

    上傳用戶:lo25643

  • 基于DSP的ATV-ATT中控系統(tǒng)設(shè)計

    設(shè)計一種應(yīng)用于某全地形ATV車載武器裝置中的中控系統(tǒng),該系統(tǒng)設(shè)計是以TMS320F2812型DSP為核心,采用模塊化設(shè)計思想,對其硬件部分進(jìn)行系統(tǒng)設(shè)計,能夠完成對武器裝置高低、回轉(zhuǎn)方向的運(yùn)動控制,實(shí)現(xiàn)靜止或行進(jìn)狀態(tài)中對目標(biāo)物的測距,自動瞄準(zhǔn)以及按既定發(fā)射模式發(fā)射彈丸和各項安全性能檢測等功能。通過編制相應(yīng)的軟件,對其進(jìn)行系統(tǒng)調(diào)試,驗證了該設(shè)計運(yùn)行穩(wěn)定。 Abstract:  A central control system applied to an ATV vehicle weapons is designed. The system design is based on TMS320F2812 DSP as the core, uses modular design for its hardware parts. The central control system can complete the motion control of the level of weapons and equipment, rotation direction, to achieve a state of static or moving objects on the target ranging, auto-targeting and according to the established target and the projectile and the launch of the security performance testing and other functions. Through the development of appropriate software and to carry out system testing to verify the stability of this design and operation.

    標(biāo)簽: ATV-ATT DSP 中控系統(tǒng)

    上傳時間: 2013-11-02

    上傳用戶:jshailingzzh

  • Xilinx UltraScale:新一代架構(gòu)滿足您的新一代架構(gòu)需求(EN)

      中文版詳情瀏覽:http://www.elecfans.com/emb/fpga/20130715324029.html   Xilinx UltraScale:The Next-Generation Architecture for Your Next-Generation Architecture    The Xilinx® UltraScale™ architecture delivers unprecedented levels of integration and capability with ASIC-class system- level performance for the most demanding applications.   The UltraScale architecture is the industr y's f irst application of leading-edge ASIC architectural enhancements in an All Programmable architecture that scales from 20 nm planar through 16 nm FinFET technologies and beyond, in addition to scaling from monolithic through 3D ICs. Through analytical co-optimization with the X ilinx V ivado® Design Suite, the UltraScale architecture provides massive routing capacity while intelligently resolving typical bottlenecks in ways never before possible. This design synergy achieves greater than 90% utilization with no performance degradation.   Some of the UltraScale architecture breakthroughs include:   • Strategic placement (virtually anywhere on the die) of ASIC-like system clocks, reducing clock skew by up to 50%    • Latency-producing pipelining is virtually unnecessary in systems with massively parallel bus architecture, increasing system speed and capability   • Potential timing-closure problems and interconnect bottlenecks are eliminated, even in systems requiring 90% or more resource utilization   • 3D IC integration makes it possible to build larger devices one process generation ahead of the current industr y standard    • Greatly increased system performance, including multi-gigabit serial transceivers, I/O, and memor y bandwidth is available within even smaller system power budgets   • Greatly enhanced DSP and packet handling   The Xilinx UltraScale architecture opens up whole new dimensions for designers of ultra-high-capacity solutions.

    標(biāo)簽: UltraScale Xilinx 架構(gòu)

    上傳時間: 2013-11-13

    上傳用戶:瓦力瓦力hong

主站蜘蛛池模板: 万年县| 永宁县| 宁化县| 沈丘县| 孟津县| SHOW| 房山区| 汝阳县| 交口县| 岚皋县| 永平县| 商都县| 盐亭县| 长乐市| 鄂托克前旗| 湖北省| 调兵山市| 保康县| 英德市| 泸州市| 吴忠市| 隆回县| 香港| 枝江市| 什邡市| 朔州市| 沙坪坝区| 梧州市| 昆山市| 当雄县| 凤山县| 黔西县| 大兴区| 二手房| 四子王旗| 高陵县| 如东县| 茌平县| 庆城县| 柳林县| 威宁|