看板 Electronics 關於我們 聯絡資訊
最近在閱讀PIC系列單晶片的使用手冊,有幾個小問題想不通,想請問: 1.以80C51來說,我們可以直接將常數值用立即定址的方式給輸出PORT,如: MOV P1,#10101010B 但是在PIC系列IC的標準指令集中,資料搬移指令細分為很多種,卻沒有一種可 以直接將常數丟往輸出PORT(根據使用手冊敘述,PORT似乎可以視為暫存器,但 仍然沒有一種資料搬移指令可以將常數丟往暫存器。),如果要達到上述功能, 僅能靠: MOVLW B'10101010' MOVWF PORTB 來實現,以執行所花費時間來看,的確不一定會比較久,但對於撰寫的過程中, 每次要操作輸出PORT(暫存器)都得經過W累加器感覺有點麻煩。 想請問一下是不是有更簡單或是更常用的方法呢? 2.以80C51來說,使用者很清楚基本的暫存器總共有8*4(R0~R7*4組暫存器庫),然 而在PIC的架構中,暫存器確是一個個"區塊",如果8-BIT劃成一個的話應該有非常 多暫存器可以用,但是縱使知道很多,卻不知道如何操作起,因為它們沒有"名字" ,想請問我該如何把這麼大一片記憶體空間,規劃成暫存器呢(像是R0就是指XXX位 址、R1就是指XXX位址這種感覺)? 3.之前詢問入門方式時,有版眾建議我可以參加該公司的教學課程,於是我上該公 司網站尋找課程資訊,並找其課程講義下來看,發現最基礎的課程中,都含有撰寫 程式的部分,這是不是代表要參加課程,至少要先把指令集背熟呢?因為我無法確 定課程要對公司產品熟悉到什麼樣的地步,才不會覺得無法理解上課內容,這點想 請有參加過這些課程的版眾能分享一點心得。 1、2點疑問因為我唯一學習過的單晶片只有89C51系列,所以都是以這個來做比較 ,當然我很了解兩者於架構上不同,所以不見得能做到我所敘述的問題,如果是觀 念上的錯誤,還請大家幫忙指正。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.67.181.137
cowbaoh:個人覺得第1個問題就那樣寫最好了吧!PIC要做什麼事都會經 04/29 22:31
cowbaoh:過w暫存器 習慣就好了 我們上課在寫也是都這樣用 04/29 22:32
cowbaoh:至於入門 有人帶最好啦 你也可以買書來看 或自己做一些小 04/29 22:33
cowbaoh:西之類的 練習書裡的例子也可以 或把你以前做過的事 轉到 04/29 22:34
cowbaoh:PIC上面寫寫看 看能不能work 這樣應該就可以了吧 04/29 22:36
cowbaoh:這本Embedded Design with the PIC18F452 Microcontroller 04/29 22:38
cowbaoh:還不錯 裡面有附一塊板子 自己把零件焊一焊 書上的練習就 04/29 22:39
cowbaoh:可以一一去試啦 至於指令 常用的記一記就好啦 04/29 22:41
icetofux:我目前就是打算把以前寫過的小東西,甚至是新東西換成 04/29 22:49
icetofux:PIC來嘗試看看,至於有人帶這個可能比較困難,因為 04/29 22:50
icetofux:身旁沒人在學這個,買書的話我在書店看過幾本,感覺 04/29 22:50
icetofux:內容都差不多,所以想說先從DATA SHEET先熟讀,再上 04/29 22:51
icetofux:教學網站看範例這樣。 04/29 22:52
※ 編輯: icetofux 來自: 218.167.84.181 (04/29 22:54)