乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      單片機工程師面試題

       Houblt 2017-04-13

      一、

      什么是TTL電平,什么是CMOS電平,他們的區(qū)別
      (
      )TTL高電平3.6~5V,低電平0V~2.4V 
      CMOS
      電平Vcc可達(dá)到12V 
      CMOS
      電路輸出高電平約為0.9Vcc,而輸出低電平約為 
      0.1Vcc
       
      CMOS
      電路不使用的輸入端不能懸空,會造成邏輯混亂。 
      TTL
      電路不使用的輸入端懸空為高電平 
      另外,CMOS集成電路電源電壓可以在較大范圍內(nèi)變化,因而對電源的要求不像TTL集成電路那樣嚴(yán)格。 
      TTL電平他們就可以兼容
      (
      )TTL電平是5VCMOS電平一般是12V 
      因為TTL電路電源電壓是5V,CMOS電路電源電壓一般是12V。 
      5V
      的電平不能觸發(fā)CMOS電路,12V的電平會損壞TTL電路,因此不能互相兼容匹配。
      (
      )TTL電平標(biāo)準(zhǔn) 
      輸出 L <0.8V ; H>2.4V。 
      輸入 L <1.2V ; H>2.0V 
      TTL
      器件輸出低電平要小于0.8V,高電平要大于2.4V。輸入,低于1.2V就認(rèn)為是0,高于2.0就認(rèn)為是1。 

      CMOS
      電平: 
      輸出 L <0.1*Vcc ; H>0.9*Vcc。 
      輸入 L <0.3*Vcc ; H>0.7*Vcc. 

      一般單片機、DSP、FPGA他們之間管教能否直接相連. 一般情況下,同電壓的是可以的,不過最好是要好好查查技術(shù)手冊上的VIL,VIH,VOL,VOH的值,看是否能夠匹配(VOL要小于VILVOH要大于VIH,是指一個連接當(dāng)中的)。有些在一般應(yīng)用中沒有問題,但是參數(shù)上就是有點不夠匹配,在某些情況下可能就不夠穩(wěn)定,或者不同批次的器件就不能運行。 

      例如:74LS的器件的輸出,接入74HC的器件。在一般情況下都能好好運行,但是,在參數(shù)上卻是不匹配的,有些情況下就不能運行。  


      74LS
      54系列是TTL電路,74HCCMOS電路。如果它們的序號相同,則邏輯功能一樣,但電氣性能和動態(tài)性能略有不同。如,TTL的邏輯高電平為>  2.7V,CMOS>  3.6V。如果CMOS電路的前一級為TTL則隱藏著不可靠隱患,反之則沒問題。

      *****************************************************************************************************************

      TTL電平:
         
      輸出高電平  2.4V         輸出低電平 0.4V
        
      在室溫下,一般輸出高電平是3.5V  輸出低電平是0.2V。
         
      最小輸入高電平和低電平
         
      輸入高電平  =2.0V          輸入低電平  =0.8V   
      它的噪聲容限是0.4V.
      CMOS
      電平:
        1
      邏輯電平電壓接近于電源電壓,0邏輯電平接近于0V。而且具有很寬的噪聲容限。

      電平轉(zhuǎn)換電路:因為TTLCOMS的高低電平的值不一樣(ttl 5v《==》cmos 3。3v),所以互相連接時需要電平的轉(zhuǎn)換:就
      是用兩個電阻對電平分壓,沒有什么高深的東西。


      OC
      門,即集電極開路門電路,它必須外界上拉電阻和電源才能將開關(guān)電平作為高低電平用。否則它一般只作為開關(guān)大電壓和
      大電流負(fù)載,所以  又叫做驅(qū)動門電路。

      TTL
      COMS電路比較:
      1
      、TTL電路是電流控制器件,而coms電路是電壓控制器件。
      2
      、TTL電路的速度快,傳輸延遲時間短(5-10ns),但是功耗大。
         COMS
      電路的速度慢,傳輸延遲時間長(25--50ns),但功耗低。
         COMS
      電路本身的功耗與輸入信號的脈沖頻率有關(guān),頻率越高,芯片集越熱,這是正?,F(xiàn)象。
      3
      COMS電路的鎖定效應(yīng):
         COMS
      電路由于輸入太大的電流,內(nèi)部的電流急劇增大,除非切斷電源,電流一直在增大。這種效應(yīng)就是鎖定效應(yīng)。當(dāng)產(chǎn)生
      鎖定效應(yīng)時,COMS的內(nèi)部電流能達(dá)到40mA以上,很容易燒毀芯片。
      防御措施:
        (1)
      、在輸入端和輸出端加鉗位電路,使輸入和輸出不超過不超過規(guī)定電壓。
        (2)
      、芯片的電源輸入端加去耦電路,防止VDD端出現(xiàn)瞬間的高壓。
        (3)
      、在VDD和外電源之間加線流電阻,即使有大的電流也不讓它進(jìn)去。
        (4)
      、當(dāng)系統(tǒng)由幾個電源分別供電時,開關(guān)要按下列順序:開啟時,先開啟COMS電路得電源,再開啟輸入信號和負(fù)載的電
      源;關(guān)閉時,先關(guān)閉輸入信號和負(fù)載的電源,再關(guān)閉COMS電路的電源。

      4
      、COMS電路的使用注意事項
        (1)
      COMS電路時電壓控制器件,它的輸入總抗很大,對干擾信號的捕捉能力很強。所以,不用的管腳不要懸空,要接上拉
      電阻或者下拉電阻,給它一個恒定的電平。
        (2)
      、輸入端接低內(nèi)組的信號源時,要在輸入端和信號源之間要串聯(lián)限流電阻,使輸入的電流限制在1mA之內(nèi)。
        (3)
      、當(dāng)接長信號傳輸線時,在COMS電路端接匹配電阻。
        (4)
      、當(dāng)輸入端接大電容時,應(yīng)該在輸入端和電容間接保護(hù)電阻。電阻值為R=V0/1mA.V0是外界電容上的電壓。
        (5)
      、COMS的輸入電流超過1mA,就有可能燒壞COMS。 
         


      5
      TTL門電路中輸入端負(fù)載特性(輸入端帶電阻特殊情況的處理):
        1
      、懸空時相當(dāng)于輸入端接高電平。因為這時可以看作是輸入端接一個無窮大的電阻。
        2
      、在門電路輸入端串聯(lián)10K電阻后再輸入低電平,輸入端出呈現(xiàn)的是高電平而不是低電平。因為由TTL門電路的輸入端負(fù)載
      特性可知,只有在輸入端接的串聯(lián)電阻小于910歐時,它輸入來的低電平信號才能被門電路識別出來,串聯(lián)電阻再大的話輸入
      端就一直呈現(xiàn)高電平。這個一定要注意。
      COMS
      門電路就不用考慮這些了。


      6
      、TTL電路有集電極開路OC門,MOS管也有和集電極對應(yīng)的漏極開路的OD門,它的輸出就叫做開漏輸出。
         OC
      門在截止時有漏電流輸出,那就是漏電流,為什么有漏電流呢?那是因為當(dāng)三機管截止的時候,它的基極電流約等于
      0
      ,但是并不是真正的為0,經(jīng)過三極管的集電極的電流也就不是真正的0,而是約0。而這個就是漏電流。
         
      開漏輸出:OC門的輸出就是開漏輸出;OD門的輸出也是開漏輸出。它可以吸收很大的電流,但是不能向外輸出的電流。所
      以,為了能輸入和輸出電流,它使用的時候要跟電源和上拉電阻一齊用。

         OD
      門一般作為輸出緩沖/驅(qū)動器、電平轉(zhuǎn)換器以及滿足吸收大負(fù)載電流的需要。
      7
      、什么叫做圖騰柱,它與開漏電路有什么區(qū)別?

      TTL
      集成電路中,輸出有接上拉三極管的輸出叫做圖騰柱輸出,沒有的叫做OC門。因為TTL就是一個三級   關(guān),圖騰柱也就是
      兩個三級管推挽相連。所以推挽就是圖騰。
      一般圖騰式輸出,高電平400UA,低電平8MA 
        
      TTL
      電平(L電平:小于等于0.8V ;H電平:大于等于2V 
      COMS
      電平(L電平:小于等于0.3Vcc ;H電平:大于等于0.7Vcc 

      CMOS 
      器件不用的輸入端必須連到高電平或低電平這是因為 CMOS 是高輸入阻抗器件理想狀態(tài)是沒有輸入電流的如果不用的輸入引腳懸空很容易感應(yīng)到干擾信號影響芯片的邏輯運行甚至靜電積累永久性的擊穿這個輸入端造成芯片失效.
      另外只有 4000 系列的 CMOS 器件可以工作在 15伏電源下, 74HC, 74HCT 等都只能工作在 5伏電源下現(xiàn)在已經(jīng)有工作在 3伏和 2.5伏電源下的 CMOS 邏輯電路芯片了
        
      CMOS
      電平和TTL電平: CMOS電平電壓范圍在315V,比如4000系列當(dāng)5V供電時,輸出在4.6以上為高電平,輸出在0.05V以下為低電平。輸入在3.5V以上為高電 平,輸入在1.5V以下為低電平。而對于TTL芯片,供電范圍在05V,常見都是5V,如74系列5V供電,輸出在2.7V以上為高電平,輸出在 0.5V以下為低電平,輸入在2V以上為高電平,在0.8V以下為低電平。因此,CMOS電路與TTL電路就有一個電平轉(zhuǎn)換的問題,使兩者電平域值能匹 配。 
        
      有關(guān)邏輯電平的一些概念 
      要了解邏輯電平的內(nèi)容,首先要知道以下幾個概念的含義:
      1
      :輸入高電平(Vih): 保證邏輯門的輸入為高電平時所允許的最小輸入高電平,當(dāng)輸入電平高于Vih時,則認(rèn)為輸入電平為高電平。
      2
      :輸入低電平(Vil):保證邏輯門的輸入為低電平時所允許的最大輸入低電平,當(dāng)輸入電平低于Vil時,則認(rèn)為輸入電平為低電平。
      3
      :輸出高電平(Voh):保證邏輯門的輸出為高電平時的輸出電平的最小值,邏輯門的輸出為高電平時的電平值都必須大于此Voh。
      4
      :輸出低電平(Vol):保證邏輯門的輸出為低電平時的輸出電平的最大值,邏輯門的輸出為低電平時的電平值都必須小于此Vol。
      5
       閥值電平(Vt):數(shù)字電路芯片都存在一個閾值電平,就是電路剛剛勉強能翻轉(zhuǎn)動作時的電平。它是一個界于Vil、Vih之間的電壓值,對于CMOS電路的 閾值電平,基本上是二分之一的電源電壓值,但要保證穩(wěn)定的輸出,則必須要求輸入高電平> Vih,輸入低電平<Vil,而如果輸入電平在閾值上下,也就是VilVih這個區(qū)域,電路的輸出會處于不穩(wěn)定狀態(tài)。
      對于一般的邏輯電平,以上參數(shù)的關(guān)系如下:
      Voh > Vih > Vt > Vil > Vol
      。
      6
      Ioh:邏輯門輸出為高電平時的負(fù)載電流(為拉電流)。
      7
      Iol:邏輯門輸出為低電平時的負(fù)載電流(為灌電流)。
      8
      Iih:邏輯門輸入為高電平時的電流(為灌電流)。
      9
      Iil:邏輯門輸入為低電平時的電流(為拉電流)。
       電路輸出極在集成單元內(nèi)不接負(fù)載電阻而直接引出作為輸出端,這種形式的門稱為開路門。開路的TTL、CMOSECL門分別稱為集電極開路(OC)、漏極 開路(OD)、發(fā)射極開路(OE),使用時應(yīng)審查是否接上拉電阻(OCOD門)或下拉電阻(OE門),以及電阻阻值是否合適。對于集電極開路(OC 門,其上拉電阻阻值RL應(yīng)滿足下面條件:
      1): RL < VCCVoh/n*Iohm*Iih
      2):RL > VCCVol/Iolm*Iil
      其中n:線與的開路門數(shù);m:被驅(qū)動的輸入端數(shù)。
      :常用的邏輯電平
      ·
      邏輯電平:有TTLCMOSLVTTL、ECL、PECL、GTL;RS232、RS422、LVDS等。
      ·
      其中TTLCMOS的邏輯電平按典型電壓可分為四類:5V系列(5V TTL5V CMOS)、3.3V系列,2.5V系列和1.8V系列。
      ·5V TTL
      5V CMOS邏輯電平是通用的邏輯電平。
      ·3.3V
      及以下的邏輯電平被稱為低電壓邏輯電平,常用的為LVTTL電平。
      ·
      低電壓的邏輯電平還有2.5V1.8V兩種。
      ·ECL/PECL
      LVDS是差分輸入輸出。
      ·RS-422/485
      RS-232是串口的接口標(biāo)準(zhǔn),RS-422/485是差分輸入輸出,RS-232是單端輸入輸出。

      ******************************************************************************************************************

      1.CMOS是場效應(yīng)管構(gòu)成,TTL為雙極晶體管構(gòu)成 
      2.COMS
      的邏輯電平范圍比較大(515V),TTL只能在5V下工作 
      3.CMOS
      的高低電平之間相差比較大、抗干擾性強,TTL則相差小,抗干擾能力差 
      4.CMOS
      功耗很小,TTL功耗較大(15mA/門) 
      5.CMOS
      的工作頻率較TTL略低,但是高速CMOS速度與TTL差不多相當(dāng)。

      *******************************************************************************************************************

      OC門,又稱集電極開路(漏極開路)與非門門電路,Open CollectorOpen Drain)。為什么引入OC門? 

      實際使用中,有時需要兩個或兩個以上與非門的輸出端連接在同一條導(dǎo)線上,將這些與非門上的數(shù)據(jù)(狀態(tài)電平)用同一條導(dǎo)線輸送出去。因此,需要一種新的與非門電路--OC門來實現(xiàn)線與邏輯。 

      OC
      門主要用于3個方面: 
      1
      、 

      實現(xiàn)與或非邏輯,用做電平轉(zhuǎn)換,用做驅(qū)動器。由于OC門電路的輸出管的集電極懸空,使用時需外接一個上拉電阻Rp到電源VCC。OC門使用上拉電阻以輸出高電平,此外為了加大輸出引腳的驅(qū)動能力,上拉電阻阻值的選擇原則,從降低功耗及芯片的灌電流能力考慮應(yīng)當(dāng)足夠大;從確保足夠的驅(qū)動電流考慮應(yīng)當(dāng)足夠小。 
      2
      、 
      線與邏輯,即兩個輸出端(包括兩個以上)直接互連就可以實現(xiàn)“AND”的邏輯功能。在總線傳輸?shù)葘嶋H應(yīng)用中需要多個門的輸出端并聯(lián)連接使用,而一般TTL門輸出端并不能直接并接使用,否則這些門的輸出管之間由于低阻抗形成很大的短路電流(灌電流),而燒壞器件。在硬件上,可用OC門或三態(tài)門(ST門)來實現(xiàn)。 OC門實現(xiàn)線與,應(yīng)同時在輸出端口應(yīng)加一個上拉電阻。 
      3
       
      三態(tài)門(ST門)主要用在應(yīng)用于多個門輸出共享數(shù)據(jù)總線,為避免多個門輸出同時占用數(shù)據(jù)總線,這些門的使能信號(EN)中只允許有一個為有效電平(如高電平),由于三態(tài)門的輸出是推拉式的低阻輸出,且不需接上拉(負(fù)載)電阻,所以開關(guān)速度比OC門快,常用三態(tài)門作為輸出緩沖器。

      *******************************************************************************************************************

              a) 什么是Setup Holdup時間? 
       
      建立時間(setup time)是指在觸發(fā)器的時鐘信號上升沿到來以前,數(shù)據(jù)穩(wěn)定不變的時間,如果建立時間不夠,數(shù)據(jù)將不能在這個時鐘上升沿被打入觸發(fā)器;保持時間(hold time)是指在觸發(fā)器的時鐘信號上升沿到來以后,數(shù)據(jù)穩(wěn)定不變的時間, 如果保持時間不夠,數(shù)據(jù)同樣不能被打入觸發(fā)器。
        
        b)
      什么是競爭與冒險現(xiàn)象?怎樣判斷?如何消除?
         
      信號在FPGA器件內(nèi)部通過連線和邏輯單元時,都有一定的延時。延時的大小與連線的長短和邏輯單元的數(shù)目有關(guān),同時還受器件的制造工藝、工作電壓、溫度等條件的影響。信號的高低電平轉(zhuǎn)換也需要一定的過渡時間。由于存在這兩方面因素,多路信號的電平值發(fā)生變化時,在信號變化的瞬間,組合邏輯的輸出有先后順序,并不是同時變化,往往會出現(xiàn)一些不正確的尖峰信號,這些尖峰信號稱為"毛刺"。如果一個組合邏輯電路中有"毛刺"出現(xiàn),就說明該電路存在"冒險"。用D觸發(fā)器,格雷碼計數(shù)器,同步電路等優(yōu)秀的設(shè)計方案可以消除。 
      
        c)
      請畫出用D觸發(fā)器實現(xiàn)2倍分頻的邏輯電路?
         
      就是把D觸發(fā)器的輸出端加非門接到D端。


        d)
      什么是"線與"邏輯,要實現(xiàn)它,在硬件特性上有什么具體要求? 
         
      將幾個OC門結(jié)構(gòu)與非門輸出并聯(lián),當(dāng)每個OC門輸出為高電平時,總輸出才為高,這種連接方式稱為線與。
        
        e)
      什么是同步邏輯和異步邏輯? 
         
      整個設(shè)計中只有一個全局時鐘成為同步邏輯。
         
      多時鐘系統(tǒng)邏輯設(shè)計成為異步邏輯。
          f)
      請畫出微機接口電路中,典型的輸入設(shè)備與微機接口邏輯示意圖(數(shù)據(jù)接口、控制接口、所存器/緩沖器)。
         
      是不是結(jié)構(gòu)圖?


        g)
      你知道那些常用邏輯電平?TTLCOMS電平可以直接互連嗎?
         TTL,cmos
      ,不能直連
         LVDS:LVDS
      Low Voltage Differential Signal)即低電壓差分信號,LVDS接口又稱RS644總線接口,是20世紀(jì)90年代才出現(xiàn)的一種數(shù)據(jù)傳輸和接口技術(shù)。
         ECL
      :(EmitterCoupled Logic)即射極耦合邏輯,是帶有射隨輸出結(jié)構(gòu)的典型輸入輸出接口電路
         CML: CML
      電平是所有高速數(shù)據(jù)接口中最簡單的一種。其輸入和輸出是匹配好的,減少了外圍器件,適合于更高頻段工作。

      二、

      最近一個項目總體方案設(shè)計為分布式系統(tǒng),于是在通訊上糾結(jié)于CAN總線還是RS485。因此在網(wǎng)上搜索一些了一些關(guān)于RS485CAN總線的資料,除進(jìn)一步認(rèn)識RS485通訊特點外,認(rèn)識了CAN總線的特點及其與RS485的比較,總結(jié)如下:

       

      注:以下是從網(wǎng)上搜索總結(jié)的。

       

      CAN總線特點:

      1、國際標(biāo)準(zhǔn)的工業(yè)級現(xiàn)場總線,傳輸可靠,實時性高;  
      2
      、傳輸距離遠(yuǎn)(最遠(yuǎn)10Km),傳輸速率快(最高1MHz bps); 
      3
      、單條總線最多可接110個節(jié)點,并可方便的擴充節(jié)點數(shù);  
      4
      、多主結(jié)構(gòu),各節(jié)點的地位平等,方便區(qū)域組網(wǎng),總線利用率高;  
      5
      、實時性高,非破壞總線仲裁技術(shù),優(yōu)先級高的節(jié)點無延時;  
      6
      、出錯的CAN節(jié)點會自動關(guān)閉并切斷和總線的聯(lián)系,不影響總線的通訊;  
      7
      、報文為短幀結(jié)構(gòu)并有硬件CRC校驗,受干擾概率小,數(shù)據(jù)出錯率極低;  
      8
      、自動檢測報文發(fā)送成功與否,可硬件自動重發(fā),傳輸可靠性很高;  
      9
      、硬件報文濾波功能,只接收必要信息,減輕cpu負(fù)擔(dān),簡化軟件編制;  
      10
      、通訊介質(zhì)可用普通的雙絞線,同軸電纜或光纖等;  
      11
      CAN總線系統(tǒng)結(jié)構(gòu)簡單,有極高的性價比。

       

      RS485接口標(biāo)準(zhǔn)特點:

      1 RS-485的電氣特性:邏輯"1"以兩線間的電壓差為+2-6V表示;邏輯"0"以兩線間的電壓差為-2-6V表示。接口信號電平比RS-232-C降低了,就不易損壞接口電路的芯片,且該電平與TTL電平兼容,可方便與TTL 電路連接。
      2 RS-485的數(shù)據(jù)最高傳輸速率為10Mbps
      3 RS-485接口是采用平衡驅(qū)動器和差分接收器的組合,抗共模干能力增強,即抗噪聲干擾性好。
      4 RS-485接口的最大傳輸距離標(biāo)準(zhǔn)值為4000英尺,實際上可達(dá) 3000米,另外RS-232-C接口在總線上只允許連接1個收發(fā)器,即單站能力。而RS-485接口在總線上是允許連接多達(dá)128個收發(fā)器。即具有多站能力,這樣用戶可以利用單一的RS-485接口方便地建立起設(shè)備網(wǎng)絡(luò)。但RS-485總線上任何時候只能有一發(fā)送器發(fā)送。
      5 RS-485接口具有良好的抗噪聲干擾性,長的傳輸距離和多站能力等上述優(yōu)點就使其成為首選的串行接口。 
      6 因為RS485接口組成的半雙工網(wǎng)絡(luò),一般只需二根連線,所以RS485接口均采用屏蔽雙絞線傳輸。 

       

      CAN總線與RS485的比較:

      1,速度與距離:CANRS4851Mbit/S的高速率傳輸?shù)木嚯x都不超過100M,可謂高速上的距離差不多。但是在低速時CAN5Kbit/S時,距離可達(dá)10KM,而485再低的速率也只能到1219米左右(都無中繼)??梢?/span>CAN在長距離的傳輸上擁有絕對的優(yōu)勢。

      2,總線利用率:RS485是單主從結(jié)構(gòu),就是一個總線上只能有一臺主機,通訊都由它發(fā)起的,它沒有下命令,下面的節(jié)點不能發(fā)送,而且要發(fā)完即答,受到答復(fù)后,主機才向下一個節(jié)點詢問,這樣是為了防止多個節(jié)點向總線發(fā)送數(shù)據(jù),而造成數(shù)據(jù)錯亂。而CANbus是多主從結(jié)構(gòu),每個節(jié)點都有CAN控制器,多個節(jié)點發(fā)送時,以發(fā)送的ID號自動進(jìn)行仲裁,這樣就可以實現(xiàn)總線數(shù)據(jù)不錯亂,而且一個節(jié)點發(fā)完,另一個節(jié)點可以探測到總線空閑,而馬上發(fā)送,這樣省去了主機的詢問,提高了總線利用率,增強了快速性。所以在汽車等實性要求高的系統(tǒng),都是用CAN總線,或者其他類似的總線。

      3,錯誤檢測機制,RS485只規(guī)定了物理層,而沒有數(shù)據(jù)鏈路層,所以它對錯誤是無法識別的,除非一些短路等物理錯誤。這樣容易造成一個節(jié)點破壞了,拼命向總線發(fā)數(shù)據(jù)(一直發(fā)1),這樣造成整個總線癱瘓。所以RS485一旦壞一個節(jié)點,這個總線網(wǎng)絡(luò)都掛。而CAN總線有CAN控制器,可以對總線任何錯誤進(jìn)行檢測,如果自身錯誤超過128個,就自動閉鎖。保護(hù)總線。如果檢測到其他節(jié)點錯誤或者自身錯誤,都會向總線發(fā)送錯誤幀,來提示其他節(jié)點,這個數(shù)據(jù)是錯誤的。大家小心。這樣CAN總線一旦有一個節(jié)點CPU程序跑飛了,它的控制器自動閉鎖。保護(hù)總線。所以在安全性要求高的網(wǎng)路,CAN是很強的。

      4,價格與培訓(xùn)成本:CAN器件的價格大約是4852倍這樣,485的通訊從軟件上是很方便的,只要懂串行通訊,就可以編程,而CAN需要底層工程師了解CAN復(fù)雜的層,編寫上位機軟件也要了解CAN的協(xié)議。可謂培訓(xùn)成本較高。

      5,CAN總線通過CAN控制器接口芯片82C250的兩個輸出端CANHCANL與物理總線相連,而CANH端的狀態(tài)只能是高電平或懸浮狀態(tài),CANL端只能是低電平或懸浮狀態(tài)。這就保證不會出現(xiàn)象在RS-485網(wǎng)絡(luò)中,當(dāng)系統(tǒng)有錯誤,出現(xiàn)多節(jié)點同時向總線發(fā)送數(shù)據(jù)時,導(dǎo)致總線呈現(xiàn)短路,從而損壞某些節(jié)點的現(xiàn)象。而且CAN節(jié)點在錯誤嚴(yán)重的情況下具有自動關(guān)閉輸出功能,以使總線上其他節(jié)點的操作不受影響,從而保證不會出現(xiàn)象在網(wǎng)絡(luò)中,因個別節(jié)點出現(xiàn)問題,使得總線處于死鎖狀態(tài)。

      6,CAN具有完善的通信協(xié)議,可由CAN控制器芯片及其接口芯片來實現(xiàn),從而大大降低了系統(tǒng)的開發(fā)難度,縮短了開發(fā)周期,這些是只僅僅有電氣協(xié)議的RS-485所無法比擬的。

       

         特性

      RS-485

      CAN-bus

      單點成本

      低廉

      稍高

      系統(tǒng)成本

      較低

      總線利用率

      網(wǎng)絡(luò)特性

      單主網(wǎng)絡(luò)

      多主網(wǎng)絡(luò)

      數(shù)據(jù)傳輸率

      容錯機制

      可靠的錯誤處理和檢錯機制

      通訊失敗率

      極低

      節(jié)點錯誤的影響

      導(dǎo)致整個網(wǎng)絡(luò)的癱瘓

      無任何影響

      通訊距離

      <1.5km

      可達(dá)10km5kbps

      網(wǎng)絡(luò)調(diào)試

      困難

      非常容易

      開發(fā)難度

      標(biāo)準(zhǔn)Modbus協(xié)議

      標(biāo)準(zhǔn)CAN-bus協(xié)議

      后期維護(hù)成本

       

      三、

      一、線性電源的原理

      線性電源主要包括工頻變壓器、輸出整流濾波器、控制電路、保護(hù)電路等。如圖1。

      開關(guān)電源與線性電源的區(qū)別

      1

      線性電源是先將交流電經(jīng)過變壓器變壓,再經(jīng)過整流電路整流濾波得到未穩(wěn)定的直流電壓,要達(dá)到高精度的直流電壓,必須經(jīng)過電壓反饋調(diào)整輸出電壓,這種電源技術(shù)很成熟,可以達(dá)到很高的穩(wěn)定度,波紋也很小,而且沒有開關(guān)電源具有的干擾與噪音。但是它的缺點是需要龐大而笨重的變壓器,所需的濾波電容的體積和重量也相當(dāng)大,而且電壓反饋電路是工作在線性狀態(tài),調(diào)整管上有一定的電壓降,在輸出較大工作電流時,致使調(diào)整管的功耗太大,轉(zhuǎn)換效率低,還要安裝很大的散熱片。這種電源不適合計算機等設(shè)備的需要,將逐步被開關(guān)電源所取代。

      二、開關(guān)電源的原理:

      開關(guān)電源主要包括輸入電網(wǎng)濾波器、輸入整流濾波器、逆變器、輸出整流濾波器、控制電路、保護(hù)電路。如圖。

      開關(guān)電源與線性電源的區(qū)別

      2

      它們的功能是:

      1.輸入電網(wǎng)濾波器:消除來自電網(wǎng),如電動機的啟動、電器的開關(guān)、雷擊等產(chǎn)生的干擾,同時也防止開關(guān)電源產(chǎn)生的高頻噪聲向電網(wǎng)擴散。

      2.輸入整流濾波器:將電網(wǎng)輸入電壓進(jìn)行整流濾波,為變換器提供直流電壓。

      3.逆變器:是開關(guān)電源的關(guān)鍵部分。它把直流電壓變換成高頻交流電壓,并且起到將輸出部分與輸入電網(wǎng)隔離的作用。

      4.輸出整流濾波器:將變換器輸出的高頻交流電壓整流濾波得到需要的直流電壓,同時還防止高頻噪聲對負(fù)載的干擾。

      5.控制電路:檢測輸出直流電壓,并將其與基準(zhǔn)電壓比較,進(jìn)行放大。調(diào)制振蕩器的脈沖寬度,從而控制變換器以保持輸出電壓的穩(wěn)定。

      6.保護(hù)電路:當(dāng)開關(guān)電源發(fā)生過電壓、過電流短路時,保護(hù)電路使開關(guān)電源停止工作以保護(hù)負(fù)載和電源本身。

      開關(guān)電源是將交流電先整流成直流電,在將直流逆變成交流電,在整流輸出成所需要的直流電壓。這樣開關(guān)電源省去下線性電源中的變壓器,以及電壓反饋電路。而開關(guān)電源中的逆變電路完全是數(shù)字調(diào)整,同樣能達(dá)到非常高的調(diào)整精度。

      開關(guān)電源的主要優(yōu)點:體積小、重量輕(體積和重量只有線性電源的2030%)、效率高(一般為6070%,而線性電源只有3040%)、自身抗干擾性強、輸出電壓范圍寬、模塊化。

      開關(guān)電源的主要缺點:由于逆變電路中會產(chǎn)生高頻電壓,對周圍設(shè)備有一定的干擾。需要良好的屏蔽及接地。

       

      交流電經(jīng)過整流,可以得到直流電。但是,由于交流電壓及負(fù)載電流的變化,整流后得到的直流電壓通常會造成20%40%的電壓變化。為了得到穩(wěn)定的直流電壓,必須采用穩(wěn)壓電路來實現(xiàn)穩(wěn)壓。按照實現(xiàn)方法的不同,穩(wěn)壓電源可分為三種:線性穩(wěn)壓電源、相控穩(wěn)壓電源、開關(guān)穩(wěn)壓電源。其中開關(guān)電源代表低碳環(huán)保和先進(jìn)電源的發(fā)展趨勢。

        常用的低壓直流開關(guān)電源就是將220V交流電經(jīng)過EMI濾波器后直接整流成300V左右的直流電,通過電路控制開關(guān)管進(jìn)行高速的道通與截止再轉(zhuǎn)化為高頻率的交流電提供給變壓器進(jìn)行變壓,從而產(chǎn)生所需要的一組或多組電壓,而后再整流成所需要電壓的直流電。轉(zhuǎn)化為高頻交流電的原因是高頻交流在變壓器變壓電路中的效率要比50Hz高很多,所以主變壓器可以做的很小,且使用磁芯,它工作時也不是很熱;另外,在高頻下,貯存能量和濾波電容和電感要比50Hz 下小很多,成本很低。如果不將50Hz 變?yōu)楦哳l那開關(guān)電源就沒有意義!開關(guān)變壓器也不神秘,就是一個普通的磁芯變壓器!這就是開關(guān)電源。
        開關(guān)電源,是通過電子技術(shù)實現(xiàn)的,主要環(huán)節(jié):整流成直流電——逆變成所需電壓的交流電(主要來調(diào)整電壓)——再經(jīng)過整流成直流電壓輸出。
          
       開關(guān)電源的結(jié)構(gòu)中由于中間沒有笨重的變壓器和散熱片,因而體積非常小。同時,開關(guān)電源內(nèi)部都是電子元件,效率高、發(fā)熱小。雖然,具有電磁干擾大等缺點,但現(xiàn)在歐美日本土銷售和中國制造但沒有偷工減料的開關(guān)電源抗電磁干擾濾波器和屏蔽技術(shù)已經(jīng)非常到位。
          
       開關(guān)電源大體可以分為隔離和非隔離兩種,隔離型的必定有開關(guān)變壓器,而非隔離的未必一定有。
      簡單地說,開關(guān)電源的工作原理是:
        1.交流電源輸入經(jīng)整流濾波成直流;
        2.通過高頻PWM(脈沖寬度調(diào)制)或者脈沖頻率調(diào)制(PFM)控制開關(guān)管,將那個直流加到開關(guān)變壓器初級上;
        3.開關(guān)變壓器次級感應(yīng)出高頻電壓,經(jīng)整流濾波供給負(fù)載;
        4.輸出部分通過一定的電路反饋給控制電路,控制PWM占空比,以達(dá)到穩(wěn)定輸出的目的.
          
       交流電源輸入時一般要經(jīng)過電感電容濾波器一類的東西,過濾掉電網(wǎng)上的干擾,同時也過濾掉電源對電網(wǎng)的干擾;在功率相同時,開關(guān)頻率越高,開關(guān)變壓器的體積就越小,但對開關(guān)管的要求就越高;開關(guān)變壓器的次級可以有多個繞組或一個繞組有多個抽頭,以得到需要的輸出;一般還應(yīng)該增加一些保護(hù)電路,比如空載、短路等保護(hù), 否則可能會燒毀開關(guān)電源。
          
       以上說的就是開關(guān)電源的大致工作原理。
          
       其實現(xiàn)在已經(jīng)有了集成度非常高的專用芯片,可以使外圍電路非常簡單,甚至做到免調(diào)試。
      例如TOP系列的開關(guān)電源芯片(或稱模塊),只要配合一些阻容元件,和一個開關(guān)變壓器,就可以做成一個基本的開關(guān)電源。
        開關(guān)電源&線性電源
        普通半橋開關(guān)電源的主要工作原理就是上橋和下橋的開關(guān)管(頻率高時開關(guān)管為VMOS)輪流導(dǎo)通,首先電流通過上橋開關(guān)管流入,利用電感線圈的存儲功能,將電能集聚在線圈中,最后關(guān)閉上橋開關(guān)管,打開下橋的開關(guān)管,電感線圈和電容持續(xù)給外部供電。然后又關(guān)閉下橋開關(guān)管,再打開上橋讓電流進(jìn)入,就這樣重復(fù)進(jìn)行,因為要輪流開關(guān)兩開關(guān)管,所以稱為開關(guān)電源。
          
       而線性電源就不一樣了,由于沒有開關(guān)介入,使得上水管一直在放水,如果有多的,就會漏出來,這就是我們經(jīng)??吹降哪承┚€性電源的調(diào)整管發(fā)熱量很大,用不完的電能,全部轉(zhuǎn)換成了熱能。從這個角度來看,線性電源的轉(zhuǎn)換效率就非常低了,而且熱量高的時候,元件的壽命勢必要下降,影響最終的使用效果 。

           開關(guān)電源和線性電源的區(qū)別主要是他們的工作方式。
        線性電源的功率調(diào)整管總是工作在放大區(qū),流過的電流是連續(xù)的。由于調(diào)整管上損耗較大的功率,所以需要較大功率調(diào)整管并裝有體積很大的散熱器,發(fā)熱嚴(yán)重,效率很低。一般在40%~60%,還得說他是很好的線性電源。線性電源的工作方式,使他從高壓變低壓必須有將壓裝置,一般的都是變壓器,也有別的像KX電源,再經(jīng)過整流輸出直流電壓。這樣一來他的體積也就很大,比較笨重,效率低、發(fā)熱量也大。他也有他的優(yōu)點:紋波小,調(diào)整率好,對外干擾小。適合用與模擬電路,各類放大器等。
        開關(guān)電源。它的功率器件工作在開關(guān)狀態(tài),在電壓調(diào)整時能量是通過電感線圈來臨時貯存,這樣他的損耗就小,效率也就高,對散熱的要求低,但它對變壓器和貯能電感也有了更高的要求,要用低損耗高磁導(dǎo)率的材料來做。它的變壓器就是一個字小。總效率在 80%~98%,開關(guān)電源的效率高但體積小,但是和線性電源比他的紋波,電壓電流調(diào)整率就有一定的折扣了 。

        業(yè)余電臺等無線電通信專用電源交流電源的特殊要求:

        1、電臺使用比較規(guī)范的室外天饋系統(tǒng),同軸電纜屏蔽層不參與無線電收發(fā)時主要考慮電源的ESD和電源穩(wěn)壓部分的抗干擾能力。原因是發(fā)射時電源負(fù)載阻抗瞬時變化很大,如果處理不當(dāng)會造成穩(wěn)壓系統(tǒng)取樣和執(zhí)行紊亂,因此須在穩(wěn)壓系統(tǒng)取樣與輸出間加裝低通濾波器。

        2、電臺使用很隨意的室外天饋系統(tǒng),同軸電纜屏蔽層參與無線電收發(fā)。此時此刻還需要在220V輸入端加裝低通濾波器抑制干擾。

        3、使用昂貴的電臺,因維修費用高,須加裝并聯(lián)型限壓電路以確保在任何時候電臺得到的電壓不超過額定電壓25%。

        
      開關(guān)電源設(shè)計的各項指標(biāo)概念和定義

      一. 描述輸入電壓影響輸出電壓的幾個指標(biāo)形式

      1 絕對穩(wěn)壓系數(shù)

      A.絕對穩(wěn)壓系數(shù):表示負(fù)載不變時,穩(wěn)壓電源輸出直流變化量U0 與輸入電網(wǎng)變化量Ui 之比。即:K= U0/ Ui 。

      B.相對穩(wěn)壓系數(shù):表示負(fù)載不變時,穩(wěn)壓器輸出直流電壓 Uo 的相對變化量Uo 與輸出電網(wǎng) Ui 的相對變化量Ui之比。即:S= Uo/Uo / Ui/Ui

      2. 電網(wǎng)調(diào)整率

      它表示輸入電網(wǎng)電壓由額定值變化±10%時,穩(wěn)壓電源輸出電壓的相對變化量,有時也以絕對值表示。

      3. 電壓穩(wěn)定度

      負(fù)載電流保持為額定范圍內(nèi)的任何值,輸入電壓在規(guī)定的范圍內(nèi)變化所引起的輸出電壓相對變化Uo/Uo(百分值),稱為穩(wěn)壓器的電壓穩(wěn)定度。

      二. 負(fù)載對輸出電壓影響的幾種指標(biāo)形式

      1 負(fù)載調(diào)整率(也稱電流調(diào)整率)

      在額定電網(wǎng)電壓下,負(fù)載電流從零變化到最大時,輸出電壓的最大相對變化量,常用百分?jǐn)?shù)表示,有時也用絕對變化量表示。

      2 輸出電阻(也稱等效內(nèi)阻或內(nèi)阻)

      在額定電網(wǎng)電壓下,由于負(fù)載電流變化IL 引起輸出電壓變化Uo,則輸出電阻為Ro=| Uo/ IL| 歐。

      三. 紋波電壓的幾個指標(biāo)形式

      1 最大紋波電壓

      在額定輸出電壓和負(fù)載電流下,輸出電壓的紋波(包括噪聲)的絕對值的大小,通常以峰峰值或有效值表示。

      2 紋波系數(shù) Y%

      在額定負(fù)載電流下,輸出紋波電壓的有效值Urms與輸出直流電壓Uo之比,即:y=Umrs/Uo x100%

      3 紋波電壓抑制比

      在規(guī)定的紋波頻率(例如 50HZ)下,輸出電壓中的紋波電壓 Ui~與輸出電壓中的紋波電壓 Uo~之比,即:紋波電壓抑制比=Ui~/Uo~

      這里聲明一下:噪聲不同于紋波。紋波是出現(xiàn)在輸出端子間的一種與輸入頻率和開關(guān)頻率同步的成分,用峰-峰(peak to peak)值表示,一般在輸出電壓的 0.5%以下;噪聲是出現(xiàn)在輸出端子間的紋波以外的一種高頻成分,也用峰-峰(peak to peak)值表示,一般在輸出電壓的 1%左右。紋波噪聲是二者的合成,用峰-峰(peak to peak)值表示,一般在輸出電壓的 2%以下。

      四. 沖擊電流

      沖擊電流是指輸入電壓按規(guī)定時間間隔接通或斷開時,輸入電流達(dá)到穩(wěn)定狀態(tài)前所通過的最大瞬間電流。一般是 20A30A。

      五. 過流保護(hù)

      是一種電源負(fù)載保護(hù)功能,以避免發(fā)生包括輸出端子上的短路在內(nèi)的過負(fù)載輸出電流對電源和負(fù)載的損壞。過流的給定值一般是額定電流的 110%130%。

      六. 過壓保護(hù)

      是一種對端子間過大電壓進(jìn)行負(fù)載保護(hù)的功能。一般規(guī)定為輸出電壓的 130%150%。

      七. 輸出欠壓保護(hù)

      當(dāng)輸出電壓在標(biāo)準(zhǔn)值以下時,檢測輸出電壓下降或為保護(hù)負(fù)載及防止誤操作而停止電源并發(fā)出報警信號,多為輸出電壓的 80%30%左右。

      八. 過熱保護(hù)

      在電源內(nèi)部發(fā)生異?;蛞蚴褂貌划?dāng)而使電源溫升超標(biāo)時停止電源的工作并發(fā)出報警信號。

      九. 溫度漂移和溫度系數(shù)

      溫度漂移:環(huán)境溫度的變化影響元器件的參數(shù)的變化,從而引起穩(wěn)壓器輸出電壓變化。常用溫度系數(shù)表示溫度漂移的大小。絕對溫度系數(shù):溫度變化1引起輸出電壓值的變化UoT,單位是 V/或毫伏每攝氏度。相對溫度系數(shù):溫度變化1引起輸出電壓相對變化UoT/Uo,單位是 V/。

      十. 漂移

      穩(wěn)壓器在輸入電壓、負(fù)載電流和環(huán)境溫度保持一定的情況下,元件參數(shù)的穩(wěn)定性也會造成輸出電壓的變化,慢變化叫漂移,快變化叫噪聲,介于兩者之間叫起伏。

      表示漂移的方法有兩種:

      1 在指定的時間內(nèi)輸出電壓值的變化Uot。

      2 在指定時間內(nèi)輸出電壓的相對變化Uot/Uo。

      考察漂移的時間可以定為 1 分鐘、10 分鐘、1 小時、8 小時或更長。只在精度較高的穩(wěn)壓器中,才有溫度系數(shù)和溫漂兩項指標(biāo)。

      十一. 響應(yīng)時間

      是指負(fù)載電流突然變化時,穩(wěn)壓器的輸出電壓從開始變化到達(dá)新的穩(wěn)定值的一段調(diào)整時間。在直流穩(wěn)壓器中,則是用在矩形波負(fù)載電流時的輸出電壓波形來表示這個特性,稱為過度特性。

      十二. 失真

      這是交流穩(wěn)壓器特有的。是指輸出波形不是正 波形,產(chǎn)生波形畸變,稱為畸變。

      十三. 噪聲

      30HZ18kHZ 的可聽頻率規(guī)定,這對開關(guān)電源的轉(zhuǎn)換頻率不成問題,但對帶風(fēng)扇的電源要根據(jù)需要加以規(guī)定。

      十四.輸入噪聲

      為使開關(guān)電源工作保持正常狀態(tài),要根據(jù)額定輸入條件,按由允許輸入外并疊加于工業(yè)用頻率的脈沖狀電壓(0peak)制定輸入噪聲指標(biāo)。一般外加脈沖寬度為 100800us,外加電壓 1000V。

      十五. 浪涌

      這是在輸入電壓,以 1 分鐘以上的間隔按規(guī)定次數(shù)加一種浪涌電壓,以避免發(fā)生絕緣破壞、閃絡(luò)、電弧等異?,F(xiàn)象。通信設(shè)備等規(guī)定的數(shù)值為數(shù)千伏,一般為 1200V

      十六. 靜電噪聲

      指在額定輸入條件下,外加到電源框體的任意部分時,全輸出電路能保持正常工作狀態(tài)的一種重復(fù)脈沖狀的靜電。一般保證 510KV 以內(nèi)。

      十七. 穩(wěn)定度

      允許使用條件下,輸出電壓最大相對變化Uo/Uo 。

      十八. 電氣安全要求(GB 4943-90

      1   電源結(jié)構(gòu)的安全要求

      1 空間要求。UL、CSA、VDE 安全規(guī)范強調(diào)了在帶電部分之間和帶電部分與非帶電金屬部分之間的表面、空間的距離要求。ULCSA 要求:極間電壓大于等于 250VAC 的高壓導(dǎo)體之間,以及高壓導(dǎo)體與非帶電金屬部分之間(這里不包括導(dǎo)線間),無論在表面間還是在空間,均應(yīng)有 0.1 英寸的距離;VDE 要求交流線之間有 3mm 的徐變或2mm 的凈空隙;IEC 要求:交流線間有 3mm 的凈空間隙及在交流線與接地導(dǎo)體間的 4mm 的凈空間隙。另外,VDE、IEC 要求在電源的輸出和輸入之間,至少有 8mm 的空間間距。

      2 電介質(zhì)實驗測試方法(打高壓:輸入與輸出、輸入和地、輸入 AC 兩級之間)。

      3 漏電流測量。漏電流是流經(jīng)輸入側(cè)地線的電流,在開關(guān)電源中主要是通過靜噪濾波器的旁路電容器泄露電流。ULCSA 均要求暴露的不帶電的金屬部分均應(yīng)與大地相接,漏電流測量是通過將這些部分與大地之間接一個 1.5K歐的電阻,其漏電流應(yīng)該不大于 5 毫安。VDE 允許:用 1.5K 歐的電阻與 150nP 電容并接。并施加 1.06 倍額定使用電壓,對數(shù)據(jù)處理設(shè)備,漏電流應(yīng)不大于 3.5 毫安。一般是 1 毫安左右。

      4 絕緣電阻測試。

      VDE 要求:輸入和低電壓輸出電路之間應(yīng)有 7M 歐的電阻,在可接觸到的金屬部分和輸入之間,應(yīng)有 2M 歐的電阻或加 500V 直流電壓持續(xù) 1 分鐘。

      5 印制電路板要求。要求是 UL 認(rèn)證的 94V-2 材料或比此更好的材料。

      2 對電源變壓器結(jié)構(gòu)的安全要求

      1 變壓器的絕緣。變壓器的繞組使用的銅線應(yīng)為漆包線,其他金屬部分應(yīng)涂有瓷、漆等絕緣物質(zhì)。

      2 變壓器的介電強度。在實驗中不應(yīng)出現(xiàn)絕緣層破裂和飛弧現(xiàn)象。

      3 變壓器的絕緣電阻。變壓器繞組間的絕緣電阻至少為 10M 歐,在繞組與磁心、骨架、屏蔽層間施加 500 伏直流電壓,持續(xù) 1 分鐘,不應(yīng)出現(xiàn)擊穿、飛弧現(xiàn)象。

      4 變壓器濕度電阻。變壓器必須在放置于潮濕的環(huán)境之后,立即進(jìn)行絕緣電阻和介電強度實驗,并滿足要求。潮濕環(huán)境一般是:相對濕度為 92%(公差為 2%),溫度穩(wěn)定在 20 30 攝氏度之間,誤差允許 1%,需在內(nèi)放置至少48 小時之后,立即進(jìn)行上述實驗。此時變壓器的本身溫度不應(yīng)該較進(jìn)入潮濕環(huán)境之前測試高出 4 攝氏度。

      5 VDE 關(guān)于變壓器溫度特性的要求。

      6 UL、CSA 關(guān)于變壓器溫度特性的要求。

        3. 功率因數(shù)校正要求

        為減少開關(guān)電源對電網(wǎng)的污染,國際電工委員會和一些國家與地區(qū)推出了IEC1000-3-2EN61000-3-2等標(biāo)準(zhǔn),對電流諧波作出了限量規(guī)定。為滿足輸入電流諧波限制要求,最有效的技術(shù)手段就有源功率因數(shù)校正(有源PFC)。

        圖1是開關(guān)電源輸入級的整流電路(不含EMC),開關(guān)電源因二極管的單向?qū)щ姾蜑V波貯能電容充放電的作用,在AC線路電壓的每個半周期內(nèi),只是在其峰值附近,二極管才會導(dǎo)通。雖然AC輸入電壓仍大體保持正弦波波形,但AC輸入電流卻呈高幅值的尖峰脈沖,如圖2所示。這種嚴(yán)重失真的電流波形含有大量的諧波成份,引起線路功率因數(shù)嚴(yán)重下降。為解決因供電電流呈強脈沖狀態(tài)而引起的電磁干擾(EMI)和電磁兼容(EMC)問題,現(xiàn)在的規(guī)范要求用電功率大于85W以上(有的資料顯示大于75W)的此類容性負(fù)載用電器具,必須增加校正其負(fù)載特性的校正電路,使其負(fù)載特性接近于阻性(電壓和電流波形同相且波形相近),這就是現(xiàn)代的有源功率因數(shù)校正(PFC)電路(見圖3和圖4)。

        低壓直流輸出的開關(guān)電源和線性電源 - 短波收聽愛好者 - 短波收聽愛好者

      四、

      既然講到信號源有內(nèi)阻,那么,輸入電阻應(yīng)當(dāng)是主因。雖然放大器的開環(huán)放大倍數(shù),也有一定的影響。

      如果是輸入電阻,應(yīng)當(dāng)是輸出大的那個輸入電阻大
      如果是輸出電阻,應(yīng)當(dāng)是輸出小的那個輸出電阻大

      五、

      差分線屬于高速線,特點是等長,等距

      具體繪制方法要看你使用的軟件 一般不管什么軟件,都是先定義兩條線為差分線,定義有些在原理圖里定義,有些在PCB里定義,然后走線前定義差分線走線規(guī)則,走線時軟件就會按差分線的規(guī)則處理了;

      六、

      C語言中講講static變量和static函數(shù)有什么作用
      static
      關(guān)鍵字有兩種意思,你看上下文來判斷

      1,表示變量是靜態(tài)存儲變量 
      表示變量存放在靜態(tài)存儲區(qū)
      2,
      表示該變量是內(nèi)部連接 
      (
      這種情況是指該變量不在任何{}之內(nèi),就象全局變量那樣,這時候加上static) 
      ,
      也就是說在其它的.cpp文件中,該變量是不可見的(你不能用).

      當(dāng)static加在函數(shù)前面的時候 
      表示該函數(shù)是內(nèi)部連接,之在本文件中有效,別的文件中不能應(yīng)用該函數(shù)
      不加static的函數(shù)默認(rèn)為是全局的
      也就是說在其他的.cpp中只要申明一下這個函數(shù),就可以使用它

      1、static全局變量與普通的全局變量有什么區(qū)別?static局部變量和普通局部變量有什么區(qū)別?static函數(shù)與普通函數(shù)有什么區(qū)別?
         
      答:全局變量(外部變量)的說明之前再冠以static 就構(gòu)成了靜態(tài)的全局變量。全局變量本身就是靜態(tài)存儲方式, 靜態(tài)全局變量當(dāng)然也是靜態(tài)存儲方式。 這兩者在存儲方式上并無不同。這兩者的區(qū)別雖在于非靜態(tài)全局變量的作用域是整個源程序,當(dāng)一個源程序由多個源文件組成時,非靜態(tài)的全局變量在各個源文件中都是有效的。 而靜態(tài)全局變量則限制了其作用域, 即只在定義該變量的源文件內(nèi)有效, 在同一源程序的其它源文件中不能使用它。由于靜態(tài)全局變量的作用域局限于一個源文件內(nèi),只能為該源文件內(nèi)的函數(shù)公用, 因此可以避免在其它源文件中引起錯誤。
         
      從以上分析可以看出, 把局部變量改變?yōu)殪o態(tài)變量后是改變了它的存儲方式即改變了它的生存期。把全局變量改變?yōu)殪o態(tài)變量后是改變了它的作用域, 限制了它的使用范圍。
          static
      函數(shù)與普通函數(shù)作用域不同。static函數(shù)僅在本文件中使用。只在當(dāng)前源文件中使用的函數(shù)應(yīng)該說明為內(nèi)部函數(shù)(static),內(nèi)部函數(shù)應(yīng)該在當(dāng)前源文件中說明和定義。對于可在當(dāng)前源文件以外使用的函數(shù),應(yīng)該在一個頭文件中說明,要使用這些函數(shù)的源文件要包含這個頭文件
          static
      全局變量與普通的全局變量有什么區(qū)別:static全局變量只初使化一次,防止在其他文件單元中被引用;
          static
      局部變量和普通局部變量有什么區(qū)別:static局部變量只被初始化一次,下一次依據(jù)上一次結(jié)果值;
          static
      函數(shù)與普通函數(shù)有什么區(qū)別:static函數(shù)在內(nèi)存中只有一份,普通函數(shù)在每個被調(diào)用中維持一份拷貝

      2、如何引用一個已經(jīng)定義過的全局變量?
          
      答:extern
          
      可以用引用頭文件的方式,也可以用extern關(guān)鍵字,如果用引用頭文件方式來引用某個在頭文件中聲明的全局變理,假定你將那個變寫錯了,那么在編譯期間 會報錯,如果你用extern方式引用時,假定你犯了同樣的錯誤,那么在編譯期間不會報錯,而在連接期間報錯。

      3、全局變量可不可以定義在可被多個.C文件包含的頭文件中?為什么?
         
      答:可以,在不同的C文件中以static形式來聲明同名全局變量。
         
      可以在不同的C文件中聲明同名的全局變量,前提是其中只能有一個C文件中對此變量賦初值,此時連接不會出錯。

      七、

      volatile 影響編譯器編譯的結(jié)果,指出,volatile 變量是隨時可能發(fā)生變化的,與volatile變量有關(guān)的運算,不要進(jìn)行編譯優(yōu)化,以免出錯

      八、

      編寫一個函數(shù),要求輸入年月日時分秒,
      輸出該年月日時分秒的下一秒。

      #include<stdio.h> 
      //
      定義全局變量 
      int year = 0, month = 0, day = 0, hour = 0, minute = 0, second = 0; 

      //
      函數(shù)的聲明 
      int inputDate(void); 
      int nextSceond(void); 
      int leapYear(int year); 
      int dayMonth(int month); 

      /* 
      *
      函數(shù)名:inputDate 
      *
      參數(shù) :void 
      *
      返回值:void 
      *
      功能 :接受用戶的輸入,并對數(shù)據(jù)進(jìn)行檢查 
      */ 
      int inputDate() 

      int loop = 0; 
      for(; loop < 3; loop++) 

      printf("
      請輸入年月日:"); 
      scanf("%d %d %d", &year, &month, &day); 
      if(month < 1 || month > 12) 

      printf("
      月份輸入錯誤!\n"); 
      continue; 

      else 

      if(day < 1 || day > dayMonth(month)) 

      printf("day
      輸入錯誤\n"); 
      continue; 

      else 

      break; 




      for(; loop < 3; loop++) 

      printf("
      請輸入時分秒:"); 
      scanf("%d %d %d", &hour, &minute, &second); 
      if(hour < 0 || hour > 23) 

      printf("hour
      輸入錯誤!\n"); 
      continue; 

      else 

      if(minute < 0 || minute > 59) 

      printf("minute !\n"); 
      continue; 

      else 

      if(second < 0 || second > 59) 

      printf("second!\n"); 
      continue; 

      else 

      break; 







      /* 
      *
      函數(shù)名:nextSecond 
      *
      參數(shù) :void 
      *
      返回值:void 
      *
      功能 :計算下一秒的時間 
      */ 
      int nextSceond() 

      if(59 == second) 

      minute += 1; 
      second = 0; 
      if(60 == minute) 

      hour += 1; 
      minute = 0; 
      if( 24 == hour) 

      day += 1; 
      hour = 0; 
      if(day > dayMonth(month)) 

      month += 1; 
      day = 1; 
      if(13 == month) 

      year += 1; 
      month = 1; 






      else 

      second += 1; 


      printf("%2d-%2d-%2d\n%2d:%2d:%2d\n",year,month,day,hour,minute,second); 


      /* 
      *
      函數(shù)名:leapYear 
      *
      參數(shù) :int year 
      *
      返回值:int 
      *
      功能 :判斷是否為閏年 
      */ 

      int leapYear(int year) 

      if(0 == year % 4 && 0 != year % 100 || 0 == year % 400) 
      return 1; 
      else 
      return 0; 


      /* 
      *
      函數(shù)名:dayMonth 
      *
      參數(shù) :int month 
      *
      返回值:int 
      *
      功能 :返回每個月份對應(yīng)的天數(shù) 
      */ 
      int dayMonth(int month) 

      switch(month) 

      case 1: 
      case 3: 
      case 5: 
      case 7: 
      case 8: 
      case 10: 
      case 12: 
      return 31; 
      case 4: 
      case 6: 
      case 9: 
      case 11: 
      return 30; 
      case 2: 
      if(0 == year % 4 && 0 != year % 100 || 0 == year %400) 
      return 29; 
      else 
      return 28; 


      int main() 

      inputDate(); 
      leapYear(year); 
      dayMonth(month); 
      nextSceond(); 
      return 0; 
      }

      九、

      遞歸(recursion:程序調(diào)用自身的編程技巧。

        遞歸滿足2個條件:

          1)有反復(fù)執(zhí)行的過程(調(diào)用自身)

          2)有跳出反復(fù)執(zhí)行過程的條件(遞歸出口)

       

      遞歸例子:

      1)階乘

               n! = n * (n-1) * (n-2) * ...* 1(n>0)

      //階乘

      int recursive(int i)

      {

               int sum = 0;

               if (0 == i)

                         return (1);

               else

                         sum = i * recursive(i-1);

               return sum;

      }

      2)河內(nèi)塔問題

      http://images./blog/202865/201302/21233227-fdbdf31ae5fe4ab7915f7b4352075ace.png

      //河內(nèi)塔

      void hanoi(int n,int p1,int p2,int p3)

      {

               if(1==n)

                         cout<<"盤子從"<<p1<<"移到"<<p3<<endl;

               else

               {

                         hanoi(n-1,p1,p3,p2);

                         cout<<"盤子從"<<p1<<"移到"<<p3<<endl;

                         hanoi(n-1,p2,p1,p3);

               }

      }

      3)全排列

        n個不同元素中任取mm≤n)個元素,按照一定的順序排列起來,叫做從n個不同元素中取出m個元素的一個排列。當(dāng)m=n時所有的排列情況叫全排列。

        1,2,3三個元素的全排列為:

        1,2,3

        1,3,2

        2,1,3

        2,3,1

        3,1,2

        3,2,1 

      //全排列

      inline void Swap(int &a,int &b)

      {

               int temp=a;

               a=b;

               b=temp;

      }

      void Perm(int list[],int k,int m)

      {

               if (k == m-1)

               {

                         for(int i=0;i<m;i++)

                         {

                                  printf("%d",list[i]);

                         }

                         printf("n");

               }

               else

               {

                         for(int i=k;i<m;i++)

                         {

                                  Swap(list[k],list[i]);

                                  Perm(list,k+1,m);

                                  Swap(list[k],list[i]);

                         }

               }

      }

      4)斐波那契數(shù)列

        斐波納契數(shù)列,又稱黃金分割數(shù)列,指的是這樣一個數(shù)列:11、2、35、8、13、21、……

        這個數(shù)列從第三項開始,每一項都等于前兩項之和。

        有趣的兔子問題:

      http://images./blog/202865/201302/21233239-44eda56a157844398e147ecaa5441486.png

       

        一般而言,兔子在出生兩個月后,就有繁殖能力,一對兔子每個月能生出一對小兔子來。如果所有兔子都不死,那么一年以后可以繁殖多少對兔子?

        分析如下:

        第一個月小兔子沒有繁殖能力,所以還是一對;

        兩個月后,生下一對小兔子,總數(shù)共有兩對;

        三個月以后,老兔子又生下一對,因為小兔子還沒有繁殖能力,總數(shù)共是三對;

        …… 

        依次類推可以列出下表:

      http://images./blog/202865/201302/21233247-26fa42141a6a42e48c25e9114dd0003c.png

      //斐波那契
      long Fib(int n)
      {
       if (n == 0) 
        return 0;
       if (n == 1) 
        return 1;
       if (n > 1) 
        return Fib(n-1) + Fib(n-2);
      }

      十、

      最精確的方法是接一個電流取樣電阻1歐姆足夠了,然后在電阻兩端采集電壓,然后減法器,減去4mA所產(chǎn)生的電壓,再經(jīng)過同向(反向)放大器,你需要選取合適的放大倍數(shù),如果用1歐姆的采樣電阻的話,需要將信號放大250倍,然后輸出。 還有一種方法就是通過三極管的電流放大,把電流的輸出接在三極管的基極上,然后三極管射級加一個電流采樣電阻,你可以直接用這個電阻上的電壓輸出也可以經(jīng)過適當(dāng)?shù)姆糯笤佥敵觥?/span> 還有一種辦法是用電流互感器,實際上就是初級阻抗一定的變壓器。當(dāng)輸入電流變化的時候,由歐姆定律可知初級線圈上的電壓也在變化,通過變壓器的升壓,可以得到你想要的0-5V,這個變壓器制作稍微麻煩點。

        本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多