久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3862|回復: 1
打印 上一主題 下一主題
收起左側

關于中檔PIC系列單片機的頁和PCLATH

[復制鏈接]
跳轉到指定樓層
樓主
ID:104287 發表于 2016-1-31 20:49 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式

首先想從CALL和GOTO指令的機器碼講起。PIC16是14位的長字指令,操作碼和操作數放到同一個指令字里,也就是所謂單字指令。

CALL 指令(14位的指令字長)

-------------------------------------------

| 1| 0| 0| k| k| k| k| k| k| k| k| k| k| k|

-------------------------------------------

100是CALL指令的操作碼,GOTO指令類似上面,只是操作碼為101.后面11位的k,就是所要CALL或者GOTO的地址。顯然,11位的地址只能訪問2K的地址范圍,為了實現在8K范圍內調用和跳轉,于是引入了Page的概念。Page其實就是實際要調用或跳轉到的地址的高兩位。PC的高兩位在發生GOTO或CALL指令時從PCLATH寄存器的4:3位裝入(如下圖)

   PCLATH 5bits

----------------

|4|3|          |

----------------

  |

  V

---------------- ---------------------

|x|x|          | |                   |  (實際PC)

---------------- ---------------------

   PCH 5bits           PCL 8bits

PC 13bit地址,可尋址8K字程序空間。

所以,在CALL或者GOTO指令執行前,要設定好PCLATH的4:3位,也就是設置好Page.PC的高位字節PCH是不可由程序直接寫入的,它必須是在PC改變時通過它的鎖存器PCLATH裝入。PCLATH始終是作為裝載PCH用的一個鎖存器,它自己的值不會隨著PCH的改變而改變。一個很簡單的例子,程序假如順序執行從00一直到8K末尾,這樣PCH的最高兩位也就從00一直變成11,但PCLATH的高兩位,如果你沒有人為改變,原來是什么還是什么。當CALL子程序時,CALL指令當前PC+1的13位PC地址壓入堆棧(因為硬件堆棧是和PC等寬的)。所以RETURN時能從堆棧彈出整個13位PC的返回地址,就不再需瓚≒CLATH了。但是,要記住,不設定并不代表它自己會改變。假設你CALL之前設定到Page1了,Return之后回到Page0了,但此時,PCLATH里的4:3位還是0:1。當發生直接修改PC時,也就是直接改寫PCL,如addwf PCL,F

此時,在改寫PCL的同時,作為PCH鎖存器的PCLATH會把整個5位的值瞬間傳遞給PCH,如下圖

PCLATH 5bits

----------------

| 4| 3| 2| 1| 0|

----------------     程序修改PC低位字節

       |                  |

       V                  V

---------------- ---------------------

| x| x| x| x| x| |                   |  (實際PC)

---------------- ---------------------

  PCH 5bits           PCL 8bits


PCLATH是個很重要的寄存器,你對它稍不注意,它就會讓你跑飛.

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

使用道具 舉報

沙發
ID:124627 發表于 2016-6-2 10:05 | 只看該作者
謝謝樓主分享經驗
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 国产中文字幕在线观看 | 岛国av免费在线观看 | 亚洲三级国产 | 国产精品国产成人国产三级 | 久久爱综合 | 国产成人久久精品一区二区三区 | 99久热在线精品视频观看 | 成人三级视频 | 久久亚洲国产精品 | 99精品久久久久久 | 成人av观看 | 日韩有码一区 | 日韩视频一区在线观看 | 97伊人 | 国产精品国产三级国产aⅴ原创 | 极品久久 | 日本三级全黄三级a | 精品一区二区三区在线播放 | 免费1区2区3区 | 亚洲a一区 | 久久国产精品99久久久大便 | 精品一区二区三区在线观看 | 日韩一区二区三区在线视频 | 一区二区三区精品在线视频 | 日韩高清黄色 | 国产精品久久久久久婷婷天堂 | 蜜桃视频成人 | 中文字幕乱码一区二区三区 | 99久久国产 | 中文字幕在线免费观看 | 亚洲大片在线观看 | 国产午夜精品一区二区三区四区 | 国产成人精品一区二区三区在线观看 | 免费黄色录像片 | 亚洲一区二区三区久久 | 日韩视频在线观看一区二区 | 射久久 | 欧美日韩精品一区 | 伊人啪啪网 | 国产传媒视频在线观看 | 免费在线观看一区二区三区 |