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

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

請幫忙看看這么個情況

作者:qingxia 欄目:單片機
請幫忙看看這么個情況
 16F873A程序的一段

     BSF    STATUS,RP0
     MOVLW    B'11000111'
     MOVWF    TRISB
     MOVLW    B'00000001'
     MOVWF    TRISC;
     MOVLW    B'00000011'
     MOVWF    TRISA
     BCF    STATUS,RP0    ;

這段程序在單步運行的時候居然能對PORTB,PORTC的值進行修改。。。(B,C口上有外設(shè)動作,內(nèi)部文件寄存器值也變了),這時怎么回事呀??


2樓: >>參與討論
hotpower
頭加  BCF STATUS,RP1
 
3樓: >>參與討論
張明峰
一點問題都沒有
在你的程序執(zhí)行前,所有的TRISx寄存器都是0xff,即全部的IO引腳都是輸入狀態(tài)。此時你觀察到的PORTx寄存器為當(dāng)前管腳上的輸入電平(0/1),注意這些值是由外部電路(信號)決定的。于此同時端口輸出鎖存器上的值是隨機的,由于管腳處于輸入狀態(tài),這些值“躲”起來了。

當(dāng)你做了端口TRISx的設(shè)定后,某些引腳變成了輸出狀態(tài),此時,原本在端口輸出鎖存器上的值就輸出到了管腳上,這些電平完全有可能和你作為輸入時讀到的外部電平不一樣。這就是你所謂的。。。

4樓: >>參與討論
qingxia
恍然大悟。。。其實此前問題已解決
感謝斑竹的指點。。。明白了原理。在此之前,我已經(jīng)解決了這個問題:我在前面對PORTB,PORTC寄存器進行了清零,結(jié)果就沒有這個問題了。按照原理來看,對于PORTB,PORTC的清零似乎是可以對輸出鎖存器進行清除的?

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
請問picc中printf函數(shù)是干什么用的?
在MPLAB中要使用C編譯器,應(yīng)該如何設(shè)置啊?
我想學(xué)PIC 單片機
pic16c72的一頁是多大。
請介紹一個WINDOWS版的PIC的C編譯軟件,最好能軟仿真。
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號