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

論壇索引


Board index » All Posts (pic5566)




關於ice2000問題
#61
高級會員
高級會員


1. MPLAB IDE +ICE2000 模擬PIC18F8720我要如何看到EEPROM MEMORY 區域內容
2. ICE 2000模擬EEPROM 是真的EEPROM嗎?如果關掉ICE 2000電源資料會消失嗎?
因為我怕寫入太多次造成ICE2000損壞

發表於: 2005/3/15 12:09
頂部


關於靜電問題
#62
高級會員
高級會員


使用pic18f8720 and pic18f452
我是使用LCM模組與PIC18F8720 OR PIC18F452通信
我的LCM是圖像矩陣式當使用靜電槍打在機子(大約4KV)LCM出現亂碼
我有量D0~D7 DATA BUS都會出現異常信號
所以導致DATA錯誤造成顯示會有亂碼
不知哪位大哥有此經驗


發表於: 2005/3/14 16:01
頂部


Re: 請底下網友跟我連絡: (要送贈品)
#63
高級會員
高級會員


作夢也想不到發言也可以拿獎品
真是感恩啊


發表於: 2005/3/14 15:35
頂部


Re: ICD 2 問題
#64
高級會員
高級會員


應該是modify read modify write 問題
請看右邊的江湖一點訣
9.10 I/O 编程注意事项
使用端口及GPIO 作为I/O 时,为确保操作按预想的进行,需要考虑一些设计注意事项。
9.10.1 双向I/O 口
任何写操作指令实际上都是先执行一个读操作,再执行一个写操作。例如,BCF 和BSF 指令,先
读寄存器的值到CPU,然后执行位操作,最后将结果写回寄存器。当一个端口既有输入引脚又有
输出引脚时,对其的操作必须加倍小心。例如,对PORTB 的bit5 执行BSF 操作时,先将PORTB
的全部8 位数值读入CPU,然后将bit5 位置“1”,最后将PORTB 的结果写回输出锁存器。如
果另一个PORTB 的引脚是作为双向I/O 引脚(如:bit0),而且此时引脚定义为输入,则该引脚
当前的输入信号被读入CPU,然后将值重新写入该特定引脚的数据锁存器,覆盖先前的内容。只
要该引脚一直是输入模式,就毫无问题。然而,如果bit0 随后变成输出引脚,其数据锁存器的内
容已经改变而无法得知。
对端口寄存器的读操作,是读端口引脚的电平值。对端口寄存器的写操作是向端口锁存器写值。
对一个端口使用读- 修改- 写指令(如:BCF 和BSF 等)时,首先读入端口引脚的数值,然后对
读入值执行指定的操作,最后将操作结果写入端口锁存器。
例9-9 显示了对一个I/O 端口执行两个连续的读- 修改- 写指令的情况。
你應該是大陸同胞吧
所以我就不用翻成繁體字了

發表於: 2005/1/29 11:06
頂部


Re: 無線電干擾問題
#65
高級會員
高級會員


告訴你一個資料
www.microchip.com search "ds00924a_tw"
這一份文件或許對你很有用
當中介紹一些LAYOUT原則

發表於: 2005/1/29 11:01
頂部


Re: 請問一下看門狗的意義..怎麼用?
#66
高級會員
高級會員


26.1 簡介
看門狗計時器(WDT)是一個運行在片內的RC 振盪器,它不需要任何的外接元件。圖26-1 為
看門狗計時器的結構框圖。該RC 振盪器獨立於OSC1/CLKIN 引腳上的RC 振盪器。這樣,即使
器件的OSC1 和OSC2 引腳上的時鐘停振(例如執行了SLEEP指令),WDT 仍將正常工作。
有一個器件配置位元是控制看門狗計時器(WDT)的使能/ 關閉。如果WDT 被使能,就不能通過
軟體關閉此功能。
看門狗計時器(WDT)的操作
在正常操作期間,一次WDT 超時溢出將產生一次器件復位。如果器件處於休眠狀態,一次WDT
超時溢出將喚醒器件,使其繼續正常操作(即稱作WDT 喚醒)。對WDTE 設置位清零可以永久
性地關閉WDT。
後分頻器分配完全是由軟體控制,即它可在程式執行期間隨時更改。
注: 為避免發生不可預測的器件復位,當從Timer0 預分頻器的分配改為WDT 後分頻器
的分配時,必須執行下列指令序列(如例26-1 所示)。即使WDT 被禁止,也要執
行這個指令序列。
在例26-1 中,如果需要的預分頻值不是1:1,就不需要對OPTION_REG 寄存器做初始修改。如
果需要的預分頻值是1:1,那麼先向OPTION_REG 設置一個非1:1 的臨時預分頻值,在完成其
它操作後,在最後修改OPTION_REG 時再設置1:1 的預分頻值。這樣操作,主要是因為無法知
道TMR0 預分頻器的當前計數值,而且分頻器更改後,該值將變為WDT 後分頻器的當前計數值,
所以必須遵循示例中的代碼順序。如果沒有按照示例中的代碼順序改變OPTION_REG 寄存器,
那麼無法準確得知WDT 復位前的時間。
26.3.1 WDT 週期
WDT 的超時溢出週期在不使用後分頻器時的典型值為18ms。這個週期隨著溫度、VDD 和製造工
藝偏差而不盡相同(見DC規範)。如果需要更長的超時溢出週期,可以用軟體設置OPTION_REG
寄存器,把後分頻器分配給WDT ;這時最大分頻率可達1:128,可以實現2.3s 左右的超時溢出
週期。
CLRWDT 和SLEEP 指令將對WDT 和後分頻器(如果分配給WDT)清零,防止其超時而引起器件複
位 。
看門狗計時器超時溢出使WDT 重定(正常工作狀態下)或WDT 喚醒(休眠狀態下),同時狀
態寄存器中的TO 位將被清零。
26.3.2 WDT 編程注意事項
在最惡劣的情況下(VDD 最小、溫度最高、WDT 後分頻比最大),要過幾秒鐘WDT 才會發生
超時溢出,因此在編寫程式時要考慮到這一點。
表26-1: 和看門狗計時器有關的寄存器
注: 當後分頻器分配給WDT 時,在改變後分頻值前應務必先執行一條CLRWDT 指令,否
則可能會發生WDT 復位。


發表於: 2005/1/29 10:56
頂部


Re: p16f877, 關TMR1中斷使用問題
#67
高級會員
高級會員


ORG 0x000 ; processor reset vector
clrf PCLATH ; 保證頁位元被清除
goto main ; 到程式開始位址


;**************************************
;*** INTERRUPT SERVICE ROUTINE ***
;*** PROGRAM BY LEE-CHIN-WEI ***
;*** INITIAL DATE : 2003-06-09 ***
;**************************************

ORG 0x004 ; 中斷向量位址
movwf w_temp ; save off current W register contents
movf STATUS,w ; move status register into W register
movwf status_temp ; save off contents of STATUS register
BTFSS INTCON,T0IF ; TIMER INT 0 FLAG == 1 ?
GOTO END_INT ; NO THEN RETURN

BCF INTCON,T0IF ; YES THEN CLEAR T0IF FLAG
BSF F_TMAIN ; SET THE MAIN LOOP FLAG=1
MOVLW .6
MOVWF TMR0

; isr code can go here or be located as a call subroutine elsewhere

END_INT:
movf status_temp,w ; retrieve copy of STATUS register
movwf STATUS ; restore pre-isr STATUS register contents
swapf w_temp,f
swapf w_temp,w ; restore pre-isr W register contents
retfie ; return from interrupt

;*********************************************
;*** MAIN SERVICE ROUTINE
;*** INITIAL DATE 2003-06-09
;*********************************************

main
CALL INIT_IO ; initial all IO port
CALL CLEAR_ALL_MEMORY ; clear all memory
CALL SYSTEM_INITIAL ; the system initial service routine
LOOP:
CALL KEY_SCAN ; KEY SCAN
CALL KEY_DEBOUNCE_PROC ; KEY DEBOUNCE PROCESS
CALL CHECK_SYSTEM_TIME ; CHECK THE SYSTEM TIME
CALL FUN_PROC
LOOP1:
BTFSS F_TMAIN ;
GOTO LOOP1 ;
BCF F_TMAIN ;
NOP ;
GOTO LOOP ;
;**************************************
;*** SYSTEM INITIAL SERVICE ROUTINE ***
;*** INITIAL DATE : 2003-06-09 ***
;*** PROGRAM BY LEE-CHIN-WEI ***
;**************************************
SYSTEM_INITIAL:
BANKSEL OPTION_REG ;OPTION_REG IN RAM BANK 1這一點要特別注意
MOVLW B'00000011' ; 1:16 FOR TIMER
MOVWF OPTION_REG
BSF INTCON,GIE
BSF INTCON,T0IE
BANKSEL TMR0
MOVLW .6
MOVWF TMR0
RETLW 0


我想你可能忘了切BANK
我在systems_initial第一行註解你可以看一下

發表於: 2005/1/11 13:34
頂部


Re: p16f877, 關TMR1中斷使用問題
#68
高級會員
高級會員


把程式貼上
這樣很難替你診斷

發表於: 2005/1/11 13:28
頂部


Re: ICD2 的問題??
#69
高級會員
高級會員


traget board 電源接了嗎?
ICD2接線對嗎
ICD2自身電源有接嗎?

發表於: 2005/1/7 17:12
頂部


Re: encoder問題請教
#70
高級會員
高級會員


if ( ( INTCON3bits.INT1IE == 1 ) && ( INTCON3bits.INT1IF == 1 ) )
{
INT1_CHATTER = 100; // INT1_CHAT = 100 = 抑制雜訊出現的次數 = JOG chatter 的處理
while ( ( P_JOG1 == 1 ) && ( INT1_CHATTER != 0 ) ) // 對策雜訊的千擾
{
INT1_CHATTER--;
DLY10US();
}
while ( ( P_JOG1 ==0 ) && ( INT1_CHATTER != 0 ) ) /* Low_Level */
{
if ( P_JOG2 == 0 )
{
JOG_CW();
}
else if ( P_JOG2 == 1 )
{
JOG_CCW();
}
break;
}
F_CUESET = 1; //CUE SET
F_POWER_ON = 0; //CUE SET
INTCON3bits.INT1IF = 0; // Clear INT1 interrupt flag
}
void JOG_CW()
{
F_JOGCW=1;
F_JOGCCW=0;
JOG_BUF++; // BUFF + 1
if ( JOG_SPD.bit7 == 1 )
JOG_SPD.all = 0x01; // 反轉 -> 正轉 -> (ENCSPD)=01H ;<<JOG>>
else
JOG_SPD.all++; // speed counter + 1 ;<<JOG>>
}

void JOG_CCW()
{
F_JOGCW=0;
F_JOGCCW=1;
JOG_BUF--; // BUFF - 1
if ( JOG_SPD.bit7 == 0 )
JOG_SPD.all = 0x81; // 正轉 -> 反轉 -> (ENCSPD)=81H ;<<JOG>>
else
JOG_SPD.all++; // speed counter + 1 ;<<JOG>>
}
嘿嘿

發表於: 2005/1/7 17:02
頂部



« 1 ... 4 5 6 (7) 8 9 10 ... 13 »



:::

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

教育訓練中心

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