<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > stm32對(duì)1.8V外圍器件的識(shí)別率(不加電平轉(zhuǎn)換)

          stm32對(duì)1.8V外圍器件的識(shí)別率(不加電平轉(zhuǎn)換)

          作者: 時(shí)間:2016-11-28 來源:網(wǎng)絡(luò) 收藏
          stm32要驅(qū)動(dòng)一個(gè)1.8v的器件,SPI口是雙向口,其他口都是單向的。
          其他的單向口用的是“開漏+上拉”,就這一個(gè)雙向口,嫌麻煩,之前不想上電平轉(zhuǎn)換芯片,但是又不知道影響大不大,就做了個(gè)實(shí)驗(yàn)。

          想測(cè)試一下stm32能把大概多高電壓識(shí)別為高。
          方案很簡(jiǎn)單,就是檢測(cè)到高電平,就點(diǎn)亮led
          while(1)
          {
          if(PBin(10)==1)PCout(13)=1;
          elsePCout(13)=0;
          }
          PC13的接口接的是一個(gè)led,模式推挽。
          PB10的接口接的是一個(gè)滑動(dòng)變阻器,模式下拉。
          我轉(zhuǎn)動(dòng)滑動(dòng)變阻器的時(shí)候發(fā)現(xiàn),
          0.9v以下,led不亮,
          0.9~1.3v,led逐漸變亮,
          1.3v以上,基本上亮度就不變了,很亮。
          把PB10改成浮空狀態(tài)也差不多,區(qū)別就是PB10在不接的時(shí)候,下拉不亮,浮空是亮的。

          為了更直觀的驗(yàn)證,PB10接到1.8v上,
          寫了一個(gè)小程序測(cè)試了一下:
          while(1)
          {
          if(PBin(10)==1) {i++;j++;}
          else {i++;}
          delay_ms(1);
          UART1_Put_String("測(cè)試總次數(shù):");
          UART1_Putw_Dec(i);
          UART1_Put_String("檢測(cè)為高次數(shù):");
          UART1_Putw_Dec(j);
          UART1_Put_String("");
          }
          結(jié)果大概是這樣的
          測(cè)試總次數(shù):132835檢測(cè)為高次數(shù):131906
          測(cè)試總次數(shù):132836檢測(cè)為高次數(shù):131907……
          測(cè)試總次數(shù):611184檢測(cè)為高次數(shù):606143
          測(cè)試總次數(shù):611185檢測(cè)為高次數(shù):606144……
          大約有0.5%~1%的情況檢測(cè)不出來。

          作為對(duì)比,我把PB10接到3.3v
          測(cè)試總次數(shù):147005檢測(cè)為高次數(shù):147005
          測(cè)試總次數(shù):147006檢測(cè)為高次數(shù):147006……
          完全沒有失誤率

          看來穩(wěn)妥的設(shè)計(jì)還得上電平轉(zhuǎn)換芯片,還要搭外圍模塊,感覺還占地兒的??赡芤院蟀?805的封裝都改成0603的會(huì)好些。



          評(píng)論


          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();