Re: 求救 16F690 EEPROM 搞不定 !
|
||||
---|---|---|---|---|
資深會員
|
我真的很想把這文章關掉 但天不從
睡眠不足 心情不好 才 PO 了上來 有關 ( 3 ) : 我忘記加 TO_WRITE 的旗標測試 當然會一直停在這裡 而且 EE_DAT 我也忘了更新 但雖然更正後 只要一執行到這裡它依舊停在這裡 這是參考 DATA SHEET 的範例 我也試過 右邊範例程式中的寫法 雖然我記的以前有試過 範例程式 也成功過(但不知放到那裡了) 但這次好像不行 只好在這裡繼續向各位高手求救了 !!!
發表於: 2007/1/8 2:21
|
|||
|
Re: 16F877 的WDT和sleep
|
||||
---|---|---|---|---|
資深會員
|
WDT 在正常程序中 好像不能關 , 控制 WDT 開關是在 CONFIG bit
而CONFIG bit 只能在燒錄時設定 在正常程式中好像不能關 通常我都是把 WDT DISABLE 省得麻煩 在程式開頭處 加入 : #include <p16F877.INC> __CONFIG _WDT_OFF 有關 CONFIG 的其他設定 可參考 P16F877.INC 的最尾端 這檔案在C:\PROGRAM FILES\MICROCHIP\MPASM Suite\可找到 當然 也要常參考其他的範例案本
發表於: 2007/1/8 1:54
|
|||
|
Re: 新手I/O 問題
|
||||
---|---|---|---|---|
資深會員
|
串個電阻(1K~10K) 再接對地按鈕(input) 和 npn tr b極 ( out put) 就比較安全
但你對 I/O 有何要求 , 你自己要考量清楚 !
發表於: 2007/1/8 1:18
|
|||
|
Re: PICkit 2 更新 ???
|
||||
---|---|---|---|---|
資深會員
|
SORRY !
MPLAB 7.5 用的 PIClit 2 的 FIRM WARE 確實是 2.01 但 USER INTERFACE 太差勁了 還是回去外部 用 V1.2 比較安心 PICStar + 魂去來兮
發表於: 2007/1/5 15:47
|
|||
|
Re: 請問PIC16F627A如何使用TIMER1計時中斷
|
||||
---|---|---|---|---|
資深會員
|
ORG 04 BCF PIR1 , TMR1IF ; DO SOMETHING HERE RETFIE ; BACK TO MAIN ROUTINE BANKSEL TRISA BSF PIE1 , TMR1IE ; TIMER 1 中斷 BANKSEL PORTA MOVLW 0 MOVWF T1CON ; 設定 TIMER 1 參數 BSF INTCON , PEIE ; 周邊中斷 BSF INTCON , GIE ; 總 中斷 BSF T1CON , TMR1ON ; 開始計時
發表於: 2007/1/5 15:36
|
|||
|
Re: PIC16F877之14位元的問題
|
||||
---|---|---|---|---|
資深會員
|
6 * 7 = 42 ; 少一支 I/O 又不用借東借西 多好
發表於: 2007/1/5 15:16
|
|||
|
Re: 請教一個計時問題
|
||||
---|---|---|---|---|
資深會員
|
這應該是 兩組 DATA
一組為REAL TIME 由內部中斷 處理資料改變 一組為顯示用 你要更改時間 但沒有儲存時 , 當回到主流程時 它會抓 REAL TIME 來更新顯示用DATA 故時間沒有被中斷 但當你儲存時, 就改變 REAL TIME DATA 所以時間就改變了
發表於: 2007/1/5 14:22
|
|||
|
求救 16F690 EEPROM 搞不定 !
|
||||
---|---|---|---|---|
資深會員
|
1. 試著在 程式裡宣告 EEPROM 啟始值 但似乎無用
2.讀不到 EEPROM 可是用 PICkit 2 確定裏面有資料 3.這段程式更神奇 , 明明沒執行到 但只要一加進去 整顆 uC 就死在那裡 4.救命啊 .......... ! (1). ORG 0X2101 my_data de 5,6,0 , 3 (2). ; READ EEPROM ; +++++++++ READ START +++++++++++ MOVLW B1 MOVWF FSR MOVLW 1 MOVWF EE_ADR READ_NEXT: BANK2 MOVLW EE_ADR MOVWF EEADR BANK3 BCF EECON1 , EEPGD ; POINT TO DATA BCF EECON1 , RD ; EE READ BANK2 MOVF EEDAT , W BANK0 MOVWF INDF INCF FSR , F INCF EE_ADR , F BTFSS FSR , 2 GOTO READ_NEXT CHECK_DAT: MOVLW .10 SUBWF B1 , W BTFSC CARRY GOTO GET_DAT ; C = 1 --> F >= W (3). PS. BANK1 , BANK2 ... IS MACRO IS_TO_WRITE: ; ++++++ WRITE EE ++++++++ BCF T1CON , TMR1ON ; STOP TIMER 1 BCF INTCON , GIE MOVLW 0X03 ; 修飾 變數 ANDWF L_BYTE , F ; ONLY bit 0 & 1 有用 MOVLW B1 ; 變數指標 MOVWF FSR CALL STOP_BEEP ; STOP PWM MOVLW 0XDF ; TURN OFF LIGHT MOVWF PORTC MOVLW 1 ; EE ADR MOVWF EE_ADR BANK1 BCF PIE1 , TMR1IE ; DISABLE TIMER 1 INTERRUPT BSF PIE2 , EEIE ; ENABLE EE INTERRUPT ITW_1: BANK2 MOVF EE_ADR , W ; EE_ADR & EE_DAT AT 0X71 0X72 MOVWF EEADR MOVF EE_DAT , W ; +++++++++++++++ MOVWF EEDAT BANK3 BCF EECON1,EEPGD ; Selected Data EEPROM for Writing BSF EECON1,WREN ; Enable write function BCF INTCON , GIE MOVLW 0x55 ; Write Sequence control MOVWF EECON2 MOVLW 0xAA MOVWF EECON2 BSF EECON1,WR ; Start EEPROM write operation BSF INTCON , GIE SLEEP ; IN ISR HAVE BCF EEIF BCF EECON1 , WREN BANK0 INCF EE_ADR , F INCF FSR , F ; +++++++++++++++ BTFSS FSR , 2 ; 4 BYTE GOTO ITW_1 BANK1 BSF PIE1 , TMR1IE ; ENABLE TIMER 1 INTERRUPT BCF PIE2 , EEIE ; DISABLE EE INTERRUPT BANK0 MOVLW B1 MOVWF FSR BSF T1CON , TMR1ON ; START TIMER 1 BSF INTCON , GIE BSF T1CON , TMR1ON ; +++++++ END WRITE EE +++++++
發表於: 2007/1/5 13:29
|
|||
|
Re: PICkit 2 更新 ???
|
||||
---|---|---|---|---|
資深會員
|
版主大人 :
FIRMWARE 2.10 在那裡可 DOWN LOAD ? 目前我只找到 V2.01 版 http://www.microchip.com/stellent/idc ... Id=1406&dDocName=en023805 上列網址 仍然只有 V2.01 (事實上 之前我就是在此 DOWN LOAD)
發表於: 2006/12/21 11:43
|
|||
|