• slider image 442
  • slider image 483
  • slider image 484
  • slider image 485
  • slider image 486
  • slider image 487
:::


Browsing this Thread:   1 Anonymous Users




(1) 2 »


Re: 看不懂的一個簡單PIC程式
#18
高級會員
高級會員


查看用戶資訊
大大??你說的這個是放在哪裡??DataSheet第19頁

=========>可到下列網址下載
http://ww1.microchip.com/downloads/en/DeviceDoc/30292c.pdf


其中 3.4節就是 PORTD 與 TRISD 的介紹

發表於: 2008/5/7 0:40
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 看不懂的一個簡單PIC程式
#17
新會員
新會員


查看用戶資訊
個人覺得您的問題還是沒有把PIC16F877的架構給看懂
建議看一下DataSheet

你的問題請參考DataSheet第19頁
上面有PIC16F877特殊暫存器的位置

大大??你說的這個是放在哪裡??DataSheet第19頁

這個網站有一些連結還不是很清楚 謝謝

發表於: 2008/5/6 18:05
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 看不懂的一個簡單PIC程式
#16
版主
版主


查看用戶資訊
如果對 PIC 的架構不了解及指令也不懂的話,那就真的會不懂程式在做什麼功能,這是基本功需多看書的。

發表於: 2008/5/6 14:08
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 看不懂的一個簡單PIC程式
#15
資深會員
資深會員


查看用戶資訊
個人覺得您的問題還是沒有把PIC16F877的架構給看懂
建議看一下DataSheet

你的問題請參考DataSheet第19頁
上面有PIC16F877特殊暫存器的位置

建議直接使用banksel這個指令 直接切換到你要的BANK
我這裡有一個網址,這是人家高職的教學網址
妳可以看看
單晶片燒阿!

發表於: 2008/5/6 9:11
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 看不懂的一個簡單PIC程式
#14
新會員
新會員


查看用戶資訊
現在第二個改程式弄這個改
以下指令動作是按SW5全部的燈會亮 放掉的話就熄滅

List p=16f877
#include<p16f877.inc>
ORG 00H
BANKSEL TRISE
MOVLW B'00000111'
MOVWF TRISE
CLRF TRISD
MOVLW B'00000111'
MOVWF ADCON1
BANKSEL PORTD
CLRF PORTD

PB_ST:

MOVLW 0X00
MOVWF PORTD
BTFSC PORTE,2
GOTO PB_ST

MOVLW 0XFF
MOVWF PORTD
GOTO PB_ST
END


====================================
然後擷取下面的一些程式來修改以上的程式
讓他的動作為
直接按SW5一次霹靂燈做右旋一次動作
連續按SW5二次霹靂燈做左旋一次動作
連續按SW5三次霹靂燈做連續閃爍0101 0101=1010 1010 動作
第四次的話就回到按第一次右旋的動作
第五次的話就回到按第二次左旋的動作
第六次就是做第三次的動作
以此類推.....

LIST p=16F877
#INCLUDE<p16F877.INC>

DELAY1 EQU 0X20
DELAY2 EQU 0X21
DELAY3 EQU 0X22

ORG 00H
MAIN:
BSF STATUS,RP0
MOVLW 0X00
MOVWF TRISD
BCF STATUS,RP0

MOVLW 0X00
MOVWF PORTD
BSF STATUS,C

COUNTER:
MOVLW 0X05
MOVWF DELAY3

RL:
RLF PORTD,F
CALL DELAY
BTFSS PORTD,7
GOTO RL

RR:
RRF PORTD,F
CALL DELAY
BTFSS PORTD,0
GOTO RR
SW0:
MOVLW 0X55
MOVWF PORTD
CALL DELAY
CALL DELAY
SW1:
MOVLW 0XAA
MOVWF PORTD
CALL DELAY
CALL DELAY
GOTO DELAY4

DELAY:
MOVLW 0XFF
MOVWF DELAY1
MOVWF DELAY2
DELAY0:
DECFSZ DELAY1,F
GOTO DELAY0
DECFSZ DELAY2,F
GOTO DELAY0
RETURN
DELAY4:
DECFSZ DELAY3,F
GOTO SW0
GOTO MAIN
END

不知道誰會??即時你們幫我解出答案~我還是一樣要被老師問過一次程式的跑法與指令動作等...

發表於: 2008/5/5 22:33
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 看不懂的一個簡單PIC程式
#13
新會員
新會員


查看用戶資訊
LIST p=16F877
#INCLUDE<p16F877.INC>

DELAY1 EQU 0X20
DELAY2 EQU 0X21
DELAY3 EQU 0X22

ORG 00H
MAIN:
BSF STATUS,RP0
MOVLW 0X00
MOVWF TRISD
BCF STATUS,RP0

MOVLW 0X00
MOVWF PORTD
BSF STATUS,C

COUNTER:
MOVLW 0X05
MOVWF DELAY3

RL:
RLF PORTD,F
CALL DELAY
BTFSS PORTD,7
GOTO RL

RR:
RRF PORTD,F
CALL DELAY
BTFSS PORTD,0
GOTO RR
SW0:
MOVLW 0X55
MOVWF PORTD
CALL DELAY
CALL DELAY
SW1:
MOVLW 0XAA
MOVWF PORTD
CALL DELAY
CALL DELAY
GOTO DELAY4

DELAY:
MOVLW 0XFF
MOVWF DELAY1
MOVWF DELAY2
DELAY0:
DECFSZ DELAY1,F
GOTO DELAY0
DECFSZ DELAY2,F
GOTO DELAY0
RETURN
DELAY4:
DECFSZ DELAY3,F
GOTO SW0
GOTO MAIN
END

今天老師都一直問以下這些
MAIN:
BSF STATUS,RP0 這個是BANK1ㄇ
MOVLW 0X00
MOVWF TRISD TRISD這是什麼意思
BCF STATUS,RP0 這個是BANK0ㄇ

MOVLW 0X00
MOVWF PORTD PORTD這是什麼意思
BSF STATUS,C 這是什麼意思??

但是會越問越深 好像故意要把你給搞亂是的 因為很多人會去問被問的人問什麼樣的問題 但是老師都知道 所以就故意 問深一點的

發表於: 2008/5/5 22:21
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 看不懂的一個簡單PIC程式
#12
版主
版主


查看用戶資訊
找一下貴校電機系 趙春棠或洪正瑞老師的書對 PIC16F877 有很詳細的說明。

發表於: 2008/5/5 18:12
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 看不懂的一個簡單PIC程式
#11
新會員
新會員


查看用戶資訊
謝謝各位版大們~想不到你們都很好心~真的很謝謝~

小弟會虛心的接受指教

我是74年次 就讀南台科技大學 電機系 進修部 三年級

所以現在要必修PIC程式

發表於: 2008/5/5 18:10
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 看不懂的一個簡單PIC程式
#10
版主
版主


查看用戶資訊
http://www.microchip.com.tw/toppage11.htm
這裡有一些早期的中文書,如果在台北就到重慶南路盧林書局找一下。

發表於: 2008/5/5 13:27
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: 看不懂的一個簡單PIC程式
#9
資深會員
資深會員


查看用戶資訊
建議你可以去找一本pic16f877系列的書來讀讀看
先了解pic的架構為何。還有pic與8051是完全不同的架構
基本上不能用來比較,只不過速度上pic絕對比"正常"的8051還快。
變種的8051就另當別論了。

關於出路方面?我也不知道,只要懂其中一種,要上手其實不難
我也是學8051起來了,到大學才改學pic

因為後來我都習慣寫c語言所以我覺得都差不多,要改8051或pic都可以,只要把一些參數修改一下,就可以用了。

在這簡單說明一下PORTX和TRISX的關係

因pic架構的關係,pic的IO PORT在使用前必須
先告訴單晶片這些IO PORT要做為輸入或者是輸出使用
而TRISX就是控制相對應之IO PORT的狀態暫存器

當TRISX設定完後,就可以直接對PORTX做讀取或輸出的動作

這樣夠清楚了吧!我記的在下載區有pic16f877的教學資料
你可以去翻翻看,我覺得寫的很詳細,而且又有範例可以看
可以省下一筆買書錢

發表於: 2008/5/5 13:25
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部







You can view topic.
不可以 發起新主題
You cannot reply to posts.
You cannot edit your posts.
You cannot delete your posts.
You cannot add new polls.
You cannot vote in polls.
You cannot attach files to posts.
You cannot post without approval.
You cannot use topic type.
You cannot use HTML syntax.
You cannot use signature.
You cannot create PDF files.
You cannot get print page.

[進階搜尋]


:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------