找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 8281|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

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

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:70976 發(fā)表于 2014-12-28 01:57 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
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;
else                    PCout(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("\r\n");
}
結(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è)不出來(lái)。

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

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

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表