音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 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

請教張版主!

作者:ecaibird 欄目:單片機
請教張版主!
看了你精華區(qū)里的關(guān)于異步通訊的例子。有點地方可否解釋一下。比如:#define TMR0CONST    .118      ;256-OSC_FREQ*1000/4/(BAUDRATE*3) + 2    解釋一下波特率與定時的關(guān)系。
還有就是有一句:movlw    high($) 什么意思呢?

非常感謝。

2樓: >>參與討論
ecaibird
!!
張版主不在!MARTING版主也不在嗎?那位高手知道的告訴我啊。我真的很急。

3樓: >>參與討論
ecaibird
!!
 在例程中設(shè)置TMR0值是。118,即使用TMR0的中斷時間是140us,也就是說每次查詢接收開始位的時間是140us,查詢到接收開始位后,接收每一位的時間還是104us,就是說查詢開始位的時間和接收數(shù)據(jù)位的時間是一樣的。這樣會不會有問題?在例程中給出的定時時間計算公式中有BAUTRATE*3,也就是說定時中斷地時間是一位所持續(xù)時間的三分之一了,如果波特率是2380,根據(jù)公式,定時時間是104us,那么TMRO值應該是。118了,不知道我這樣的理解有沒有問題。

4樓: >>參與討論
martin
簡單地說
簡單地說,TMR0產(chǎn)生的定時時間要是波特率對應1位時間的三分之一,相應的TMR0的初值自己算都可以,當然公式更方便。之所以用三分之一的定時時間,是為了讓采樣點落在每個位的中間(把一個位分成三格的中間一格),看程序里的Slice,接收到起始位后間隔時間片(定時時間)分別是4,3,3……
movlw    high($)把當前PC的高位送W。

5樓: >>參與討論
ecaibird
^_^
多謝marting,還有一點問題,為什么第一位是4,而后面都是3呢?還有就是程序里保存PC的高位不知有什么用?

6樓: >>參與討論
martin
答復
第一個問題看圖

第二個問題:
應用例子
movlw high($)
movwf PCLATH
movf  VALUE,W
andlw 0x0f
addwf PCL,F
retlw 0x01
retlw 0x02
...
該例中有修改PCL,在修改PCL的時候PCLATH會自動裝入PCH(PC的實際高位),如果沒有前面兩句,PCLATH里的值有可能不是指向當前塊(256字節(jié)),于是會產(chǎn)生錯誤跳轉(zhuǎn)。


7樓: >>參與討論
ecaibird
^_^
呵呵,不錯!非常感謝。

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
要PIC C 的,大家動作要快喲!
請教各位:關(guān)于I2C總線問題
本來用89的,現(xiàn)在卻要用pic編了,只有一個月不知時間是否來得及
sos!!!!!sos!!!!
請問一下,12c508的GP0、GP2、GP4是否已有內(nèi)部弱上拉?
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


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