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

論壇索引


Board index » All Posts




Re: 偶又碰到問題啦....
資深會員
資深會員


大哥知了 3Q a lot.....笨鴨偶受益多多

發表於: 2005/10/12 0:22
頂部


Re: ADRESH和ADRESL
初級會員
初級會員


請問原PO或是網上的各位前輩,可以對原PO的問題解決方法
做個詳細的解說嗎?
就是把AD的值儲存在記憶體中

對不起~~我真的是新手中的新手

發表於: 2005/10/11 23:08
頂部


Re: BANK1變數定義問題
初級會員
初級會員


Dear Jubel,
您的問題晾了很幾天了,我試著回答一下吧!
1. PIC系列的Memory Banking是user要自理且要很注意的。
2. 在MPLAB IDE下,“Help” -> “Topics” -> “MPASM assembler” -> “索引” -> “Bank Selecting”可以找到以下範例:
group1 udata 0x20 ;group1 data stored at locations
;starting at 0x20 (bank 0).
group1_var1 res 1 ;group1_var1 located at 0x20.
group1_var2 res 1 ;group1_var2 located at 0x21.
group2 udata 0xA0 ;group2 data stored at locations
;starting at 0xA0 (bank 1)
group2_var1 res 1
group2_var2 res 1
RST CODE 0x0 ;The code section named RST
;is placed at program memory
;location 0x0. The next two
;instructions are placed in
;code section RST.
pagesel start ;Jumps to the location labelled
goto start ;'start'.
PGM CODE ;This is the begining of the
;code section named PGM. It is
;a relocatable code section
;since no absolute address is
;given along with directive CODE.
start
banksel group1_var1 ;This directive generates code
;to set/clear bank select bits
;RP0 & RP1 of STATUS register
;depending upon the address of
;group1_var1.
clrf group1_var1
clrf group1_var2
banksel group2_var1 ;This directive generates code
;to set/clear bank select bits
;RP0 & RP1 of STATUS register
;depending upon the address of
;group2_var1.
clrf group2_var1
clrf group2_var2
goto $ ;Go to current line (loop here)
end
3. udata-res提供relocatable 定址方式。這與您的絕對定址不同。
4. 您似乎比較喜歡絕對定址?除非有絕對必要,建議您培養使用relocatable 定址的習慣,程式的可攜性較佳。

發表於: 2005/10/11 23:04
頂部


關於18F452 的問題
新會員
新會員


本人寫了一個如下的小程式

#include <p18f452.h>

#pragma config OSC =HS
#pragma config WDT =OFF
#pragma config LVP =OFF

unsigned char i;

void main(void)
{
i=1;
while(1)
{
Rlncf(i,1,0);
}
}



Build 這個程式時並沒有任可問題
但是 i 的 的數值並沒有改變
以Step Over 運行 i 不停也是 0000 0001
就像沒有執行Rlncf 一樣

而 Rlncf(i,1,0); 的Disassembly 竟是

8: Rlncf(i,1,0);
00D8 0100 MOVLB 0
00DA 4600 RLNCF 0, F, ACCESS

請高手指教我程序問題之處

Thx

Ps. 已試 MPLAB SIM 及 ICD2 的結果都是一樣呢

發表於: 2005/10/11 20:48
頂部


Re: 偶又碰到問題啦....
初級會員
初級會員


Dear duck288,
請注意,最後的脈衝寬度是1.1ms 不是 1.0ms。如果,最後脈寬需要 1.0ms,可修改以下指令:
1. “movlw d'30';” 改為 “movlw d'31';”
2. “movlw d'10';” 改為 “movlw d'09';”

然而一般我們在程式中會避免直接引用常數,以免一但需要變更該常數時,就要「上窮碧落下黃泉」的到處找問題,因此多半在宣告區來處理常數。
程式可作以下修改:
; -------------------------------------------------------------------------
#define N_of_LongestPulse 40 ; 最長脈寬的 N
#define N_of_ShortestPulse 11 ; 最短脈寬的 N

#define ExcutionTimes N_of_LongestPulse- N_of_ShortestPulse+1
; 執行次數
#define Bias ShortestPulse-1 ; 偏壓值

於是程式碼就可以改成:
1. “movlw d'30';” 改為 “movlw ExcutionTimes;”
2. “movlw d'10';” 改為 “movlw Bias;”
; -------------------------------------------------------------------------
這樣,只須依需要修改 N_of_LongestPulse 及 N_of_ShortestPulse 數值,再組譯即可。實際執行次數及偏壓值的計算,可交由組譯器處理。

發表於: 2005/10/11 16:05
頂部


Re: 使用何种IC和何种方法来扩充DSPIC的I/O
新會員
新會員


你可以使用74F245 或其他的bi-directional buffer來進行擴充
,但是會比較麻煩而已

發表於: 2005/10/11 15:40
頂部


是否有以CAN BUS來更新U-COM 的SOLUTION
新會員
新會員


請問一下各位前輩~市場上是否有以CAN BUS來更新U-COM
的軟體的TOOLS 或相關SOLUTION ~

發表於: 2005/10/11 11:55
頂部


请教keeloq的除错问题
新會員
新會員


初写keeloq解码,用的是16F630,采用可重定位代码,组译后出现:
Error - section 'Encrypt_Data' can not fit the absolute section. Section 'Encrypt_Data' start=0x00000020, length=0x00000008
Errors : 1
分配八个连续的单元不能被定位言主程式是这样的:
Encrypt_Data UDATA 0x20
KEY0 res 1
。。。。。。。。。
KEY7 res 1

请问前辈如何除错啊?新手

發表於: 2005/10/11 9:19
頂部


Re: 偶又碰到問題啦....
資深會員
資深會員


研究了一下午, 重新整理如下, 不知道有沒有對耶?
好像有給它懂一點點 , 程式一下子 瘦了100Kg...hahaha
用我的程式可以寫爆 12F508, 哈哈..真是有夠笨瓜耶..
待笨鴨偶重新整理整理, 在燒來試看看囉...3q lar.

;-----[Main routine]---------------------------------------------------------
start
movlw d'30' ;
movwf chDelay ;
sync_1
btfss GPIO,0 ; 等同步訊號
goto sync_1 ; No, check again ..
goto loop_1 ; Yes..
loop_1
movlw d'10' ;
addwf chDelay,w ;
movwf chInner_delay ;
call fnDelayNx100us ;
bsf GPIO,1 ; set GP1 to triger
call fnDelay100us ; set triger width =100us.
bcf GPIO,1 ; Clear triger
decfsz chDelay,1 ;
goto loop_1 ;
goto strart ;

;-----------------------------[Sub routine]-----------------------------------
fnDelay100us
movlw d'33'
movwf count
keep_1
decfsz count1,f
goto keep_1 ; Total delay 100us..
retlw 0
fnDelayNx100us
call fnDelay100us
decfsz chInner_delay ;
goto fnDelayNx100us ;
retlw 0

發表於: 2005/10/11 6:49
頂部


Re: 偶又碰到問題啦....
資深會員
資深會員


3Q 3Q +阿里阿多 ,abewu...
笨鴨我 了解程式能力還很低...
也沒學過組合語言,玩PIC純粹是興趣,
所以會問一些很笨, 很好笑的問題;
在這兒還真是能得到很多幫助.... thanks lar!
希望有機會能回台北參加教育訓練課程...
Well....我需要好好研究一陣子您的程式...
也就是說會有更多很笨, 很好笑的問題要請教,,lor ,hahaha..

發表於: 2005/10/11 1:17
頂部



« 1 ... 6904 6905 6906 (6907) 6908 6909 6910 ... 7522 »



:::

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... ]

教育訓練中心

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