音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊(cè) 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

想討論一下TRISX=0之后PORT口的電平狀態(tài)

作者:xieyuanbin 欄目:單片機(jī)
想討論一下TRISX=0之后PORT口的電平狀態(tài)
我知在復(fù)位后I/O口在高阻輸入狀態(tài),卻不知在TRISX=0后,I/O口在什么電平。后來有本書介紹純軟件I2C通訊時(shí)僅僅通過BCF TRIS*,BIT來使I/O口在低電平和高阻狀態(tài)轉(zhuǎn)換,當(dāng)時(shí)稍試了一下,覺得有些問題,但由于時(shí)間問題沒試下去。前一段時(shí)間又有程序必須使I/O口在低電平和高阻狀態(tài)切換,無奈PIC不支持推挽和開漏之間的選擇,只好又重新和TRIS*過不去,但發(fā)現(xiàn)事實(shí)并不如想象那么簡單,程序有時(shí)行,有時(shí)不行,我就用我現(xiàn)在用的芯片16F72測試,在A、B、C三個(gè)口分別接一個(gè)LED并通過電阻高掛,其中B口打開弱上拉,A口設(shè)置成數(shù)字模式,不用的口懸空,用一個(gè)簡單的程序來隔一定時(shí)間改變TRIS的狀態(tài)。測試結(jié)果有些看不懂,芯片使用外部RC振蕩:
第一次上電:程序如我所愿,在TRIS=1時(shí)LED滅,TRIS=0時(shí)LED亮。
第二次上電:A、C口LED如上,B口始終不亮,經(jīng)測試,B口在TRISB=0時(shí)輸出高電平……
第三次上電:用導(dǎo)線使B口對(duì)地放電,然后上電,結(jié)果又和第一次一樣;
第N此上電:每次上電時(shí)都用導(dǎo)線使所有的口對(duì)地放電之后上電,結(jié)果B口有大約70%的機(jī)會(huì)在TRISB=0時(shí)輸出高電平,C口有大約20%的機(jī)會(huì)在TRISC=0是輸出高電平,A口則最忠實(shí),一次也沒有出現(xiàn)LED不亮的情況。
每次上電的結(jié)果可能都不一樣,但是上電后就不會(huì)再改變LED顯示的狀態(tài)。
這種現(xiàn)象是DATASHEET里面沒有提到的。
我想知道的是,是否PIC的設(shè)計(jì)人員也不知道TRIS之后端口的電平?是否所有系列的PIC都一樣?
以前沒有碰到這樣的情況,因?yàn)槲颐看味挤浅P⌒,在TRIS之后CLR PORT.現(xiàn)在想起來,還真的有點(diǎn)后怕。

* - 本貼最后修改時(shí)間:2004-9-20 21:00:55 修改者:xieyuanbin

2樓: >>參與討論
wuyibang
trisx只是設(shè)置I/O的狀態(tài),好像不應(yīng)該用來.....
trisx只是設(shè)置I/O的狀態(tài),你好像把它當(dāng)成一條i/o的輸出輸入指令了吧

3樓: >>參與討論
張明峰
小問題
上電時(shí)TRISx是確定的全1,但PORTx的值卻不定。只要改變一下順序:在設(shè)置TRISx之前先設(shè)置PORTx,即可滿足一切要求了。

用TRISx控制單片機(jī)引腳狀態(tài)時(shí)需注意“讀-修改-寫”的問題。PORTx有可能在暗地里被改而你沒有及時(shí)更新處理。

4樓: >>參與討論
xieyuanbin
的確可以這樣設(shè)定:
看到張工書上提到,PORT口有一個(gè)鎖存器,鎖存器在輸入狀態(tài)下并不影響PORT口的值,我現(xiàn)在的理解是當(dāng)TRIS的值變成輸出時(shí)PORT口的狀態(tài)應(yīng)該等于鎖存器的狀態(tài)(不考慮外圍電路的影響)
我特地做了一下實(shí)驗(yàn),仍使用16F72,這下PORT口聽話了:)))
謝謝張工!
TO:wuyibang
因?yàn)橛袝r(shí)需要PORT口工作在高阻狀態(tài)和低電平狀態(tài),類似于I/O口只有一個(gè)三極管拉到地,也就是只有吸入電流這樣的狀態(tài),而PIC又不支持開漏與推挽可選,所以只能這樣設(shè)定。這在普通I/O口模擬I2C通訊時(shí)必須要這樣設(shè)置。

5樓: >>參與討論
wuyibang
謝謝喲,又學(xué)了好東西,請(qǐng)?jiān)徫业臒o知
 
參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
求救
obj轉(zhuǎn)hex
PICC的疑問
無法再線調(diào)試,并且program,脫機(jī)后,晶振不振,無法正常運(yùn)行!
把BANK0的RAMX,1位轉(zhuǎn)移到BANK2的RAMY,3位。有什么好方法?
免費(fèi)注冊(cè)為維庫電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào)