• 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: ADC轉換3
#14
資深會員
資深會員


查看用戶資訊
參照:

a691228 寫道:
寫上癮的大大
太感謝伱了,搞這麼久模擬出來ADRESH這都有值只是都固定值,原來是錯在十位元常數與二位元的運算這,小弟一度以為自己連架構都錯了...^^!!!,是的,小弟馬上改正它來試試,加油加油...^^
謝謝優 !



我是 BEEE , 不是 寫上癮

試驗完 回報 ........... ( 我沒 硬體作實驗 ) .

發表於: 2009/6/26 11:52

Edited by Beee on 2009年06月26日 12:19:31
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: ADC轉換3
#13
新會員
新會員


查看用戶資訊
寫上癮的大大
太感謝伱了,搞這麼久模擬出來ADRESH這都有值只是都固定值,原來是錯在十位元常數與二位元的運算這,小弟一度以為自己連架構都錯了...^^!!!,是的,小弟馬上改正它來試試,加油加油...^^
謝謝優 !

發表於: 2009/6/26 9:57
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: ADC轉換3
#12
資深會員
資深會員


查看用戶資訊
list p=12f675
                
include <P12f675.INC>
                
__CONFIG _PWRTE_ON _WDT_OFF _INTRC_OSC_NOCLKOUT _BODEN_OFF

    CBLOCK    0X20
    scaler 
scaler1 ,  ADvalue W_temp STATUS_Temp
    ENDC

BANK0 MACRO
    BCF    STATUS 
RP0
    ENDM

BANK1 MACRO
    BSF    STATUS 
RP0
    ENDM
;***********Resect Vector***************
            
org     0x00
            nop
            
goto    MainLine
;************  interrupt  **************
            
org     0x04
 
;          goto    intService
intService
    movwf        W_temp
     swapf        STATUS
,w
    movwf        STATUS_Temp

;     btfss        PIR1,TMR1IF        what ?
;    GOTO        
ISR_RET
;  (TIMER1 )
    
bcf             PIR1,TMR1IF
 
;     clrf            TMR1L
     comf           ADvalue 
W        ;  反轉 ADvalue 
     movwf       TMR1H

    decfSZ          scaler
,f
    
GOTO        ISR_RET
    BSF        scaler 
5        ;  重新載入 SCALER --->  .32
    COMF        scaler1 
F        ;  EXCHANGE  LED  FLAG
ISR_RET
:    
     
swapf        STATUS_Temp w
     movwf        STATUS
     swapf        W_temp 
f
     swapf        W_temp 
w
     retfie
;************A/D converter**************
ADconverter:
   
BANK0
    bsf             ADCON0 
GO
ADwait
:
     
btfsc           ADCON0,GO
     
goto            $- 1        waiting for ad convert down

      movf           ADRESH 
W
      movwf           ADvalue
             
return
;********** 
Main Program ***************
MainLine:
    
call            Initial
   BANK0
     bsf         T1CON
,TMR1ON
MainLoop
:
    
call            ADconverter
      call            turn
                
goto            MainLoop
;*********Initial Subroutine************
Initial:
    
BANK1
                movlw           
B'00010100'
                
movwf       TRISIO
                bcf             STATUS
,RP0
                movlw           07h
                movwf           CMCON
     BANK0
                movlw          .16        
;*************
                
movwf           scaler        ;*************
                
bsf             GPIO,GP2    ; ?????
                
clrf            T1CON
                clrf            TMR1H
     clrf        TMR1L
       clrf        INTCON
       bsf        INTCON
,PEIE
    BANK1
       clrf        PIE1
    bsf        PIE1
,TMR1IE
    BANK0
    clrf            PIR1
      clrf            TMR1L
      movlw       0x15
     movwf       TMR1H
       movlw       0x9F
     movwf       TMR1L
     bSf        T1CON
,TMR1ON    ; ------------------
    
bsf        INTCON,GIE
        BANK1
    movlw           
B'00011000'
        
movwf       ANSEL
      bcf           STATUS 
RP0

  
;         clrf    ADCON0
    movlw           
B'00001101'
      
movwf       ADCON0
              
return

;***************************************
turn:
     
BANK0
    BTFSS        scaler1 
0         ;   SCALER1 0  --->  LED FLAG
    
GOTO        turn_off
turn_on
:
      
bsf             GPIO,GP5
     
RETURN
turn_off:
     
bcf             GPIO,GP5
     
return
             
end


是不是 這樣 ?

Attach file:


Link only for registered users

發表於: 2009/6/26 6:58
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: ADC轉換3
#11
資深會員
資深會員


查看用戶資訊
參照:
ADvalue        EQU      0x40

                                                            
 
;************A/D converter**************
ADconverter                        
            movlw   .2
            movwf   scaler1
            bcf     STATUS
,RP0            
            bsf     ADCON0
,GO
ADwait           
            btfss   scaler1
,0
            
goto    ADwait

Wait1                  
             
            btfsc   ADCON0
,GO                                
            
goto    Wait1                                    

            movf   ADRESH
,W
            movwf   ADvalue        
;  ADvalue 到底是 常數 還是 REGSTER  ?
            
movlw   LOW (.65535-ADvalue)        ;  ADvalue 到底是 常數 還是 REGSTER  ?
            
movwf   T1LCAP_1
            movlw   HIGH 
(.65535-ADvalue)        ;  ADvalue 到底是 常數 還是 REGSTER  ?
            
movwf   T1HCAP_1
            
return

;***************************************

發表於: 2009/6/26 4:25
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: ADC轉換3
#10
新會員
新會員


查看用戶資訊
大大們
小弟已固定在ADC3這固定問問題,造成大大的不便,不好意思ㄛ..^^!!!
在這個系統用LED表示有送訊號出來,再接示波器看脈波時間,
如上面的程式正常,再調10K電阻至少脈波的寬度會改變,有試過仍舊只有屬於第一次覆蓋後的單一時間的輸出,請問一下大大們指導一下是哪裡有問題ㄋ,…..拜託

^^!!!不曉得這樣的資訊夠嗎,rar檔看不到,,解決方式:解壓縮進去,會說未知檔案,不管他,點資料夾進去,再選擇ADC3,按"修復"扭,選擇rar方式修復,跳出一視窗按"是",另外建立為rebuiltADC3轉換.rar,即可,麻煩了 謝謝!!

Attach file:


Link only for registered users

發表於: 2009/6/25 8:56

Edited by a691228 on 2009年06月25日 11:21:54
Edited by a691228 on 2009年06月25日 11:34:15
Edited by a691228 on 2009年06月25日 11:34:57
Edited by a691228 on 2009年06月25日 11:40:09
Edited by a691228 on 2009年06月25日 11:42:55
Edited by a691228 on 2009年06月25日 11:54:26
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: ADC轉換3
#9
資深會員
資深會員


查看用戶資訊
$$$$請問一下大大們指導一下是哪裡有問題ㄋ,…..拜託^^$$$$

請先附上 功能明細 與 系統圖,
不要讓網友,望著<<摸不著頭緒,且錯誤的程式碼>>瞎猜.

網友的時間,也是很寶貴的.
請不要糟蹋網友的熱誠.

ADC轉換 a691228 6月14日 23:51:44
ADC轉換2 a691228 6月20日 16:15:27
ADC轉換2 a691228 6月21日 14:47:38
ADC轉換3 a691228 6月20日 23:32:56

一個問題,用一個主題,可以嗎?!

發表於: 2009/6/25 0:07
少年不知愁滋味,老來方知路難行。
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: ADC轉換3
#8
新會員
新會員


查看用戶資訊
經過大大們給的指教之後,小弟決定還是得不恥下問.
小弟改以最簡單的方式先來測定是否可透過可調的10K電阻由AN3輸入,指定GP5為輸出.看是否可造成不同時間的切斷.
但是經示波器測試之後仍舊只有屬於第一次覆蓋後的單一時間的輸出,請問一下大大們指導一下是哪裡有問題ㄋ,…..拜託^^!!!
list p=12f675                         
                
include <P12f675.INC>     
                
__CONFIG _PWRTE_ON _WDT_OFF _INTRC_OSC_NOCLKOUT _BODEN_OFF
               
ADStatus      EQU     0x20
W_temp        EQU     0x21
STATUS_Temp   EQU     0x22
scaler        EQU     0x27
scaler1       EQU     0x43
value         EQU      0x30
T1HCAP_1       EQU     0x34
T1LCAP_1       EQU     0x35
ADvalue        EQU      0x40
;***********Resect Vector***************
            
org     0x00
            nop
            
goto    MainLine
;************  interrupt  **************     
            
org     0x04
            
goto    intService

intService
            movwf    W_temp
            swapf    STATUS
,w
            movwf    STATUS_Temp
        
             btfsc    PIR1
,TMR1IF
            call    Timer1           
    
            swapf    STATUS_Temp
,w
            movwf    STATUS
            swapf    W_temp
,f
            swapf    W_temp
,w
            retfie

;**********    Timer1    ***************
Timer1          
            bcf     PIR1
,TMR1IF
            decf    scaler
,f
            decf    scaler1
,f
            clrf    TMR1L         
            movf   T1HCAP_1
,W          
            movwf   TMR1H
            movf   T1LCAP_1
,W       
            movwf   TMR1L           
            
return


;********** 
Main Program ***************
MainLine
            call    Initial
            bcf     STATUS
,RP0
            bsf     T1CON
,TMR1ON
MainLoop                           
            call    ADconverter
            call    turn
            
goto    MainLoop
;*********Initial Subroutine************
Initial
            bsf     STATUS
,RP0     
            clrf    TRISIO        
            movlw   
B'00010100'
            
movwf   TRISIO            
            bcf     STATUS
,RP0
            movlw   07h             
            movwf   CMCON                     
                                                                 
                                                                   
            bcf     STATUS
,RP0
            bsf     GPIO
,GP2
            clrf    T1CON
            clrf    TMR1H
            clrf    TMR1L       
            clrf    INTCON
            bsf        INTCON
,PEIE                            
            bsf     STATUS
,RP0
            clrf    PIE1
            bsf        PIE1
,TMR1IE                                
            bcf     STATUS
,RP0
            clrf    PIR1                                   
            clrf    TMR1L
            movlw   0x15
            movwf   TMR1H
            movlw   0x9F       
            movwf   TMR1L
            bcf        T1CON
,TMR1ON                            
            bsf        INTCON
,GIE                             
            bsf     STATUS
,RP0
            
            movlw   
B'00011000'
            
movwf   ANSEL
            bcf     STATUS
,RP0
                                                            
            clrf    ADCON0
            movlw   
B'00001101'           
            
movwf   ADCON0                                  
           
            
return

;************
A/D converter**************
ADconverter                        
            movlw   .2
            movwf   scaler1
            bcf     STATUS
,RP0            
            bsf     ADCON0
,GO
ADwait           
            btfss   scaler1
,0
            
goto    ADwait

Wait1                  
             
            btfsc   ADCON0
,GO                                
            
goto    Wait1                                    

            movf   ADRESH
,W
            movwf   ADvalue
            movlw   LOW 
(.65535-ADvalue)
            
movwf   T1LCAP_1
            movlw   HIGH 
(.65535-ADvalue)
            
movwf   T1HCAP_1
            
return

;***************************************                                  
turn
            movlw  .2
            movwf   scaler
turn_on            
            bcf     STATUS
,RP0       
            bsf     GPIO
,GP5            
            
            btfss   scaler
,0            
            
goto    turn_on        GPIO,GP5
turn_off            
            bcf     GPIO
,GP5
            btfsc   scaler
,0
           
            
goto    turn_off
           
            
return


             
end

發表於: 2009/6/24 23:40
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: ADC轉換3
#7
資深會員
資深會員


查看用戶資訊
參照:

a691228 寫道:
謝謝大大
又讓小弟多學一個方法 讚拉^^

可不可以麻煩這位大大,幫小弟看一下 "ADC轉換2 a691228 今天 14:47:38 "
的這個程式,測了很久還是一直同頻率,在想是不是比對次數過少,不知行不行 麻煩您??
謝謝優!!


拒絕 !......

改別人的程式 如同謀殺自己的腦細胞
不如你將欲表現的效果  仔細表明 
再用 類 BASIC 語言 表達流程,  我再考慮寫個 DEMO 看看....

發表於: 2009/6/23 3:27
Twitter Facebook Google Plus Linkedin Del.icio.us Digg Reddit Mr. Wong 頂部


Re: ADC轉換3
#6
新會員
新會員


查看用戶資訊
謝謝大大
又讓小弟多學一個方法 讚拉^^

可不可以麻煩這位大大,幫小弟看一下 "ADC轉換2 a691228 今天 14:47:38 "
的這個程式,測了很久還是一直同頻率,在想是不是比對次數過少,不知行不行 麻煩您??
謝謝優!!

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


Re: ADC轉換3
#5
資深會員
資深會員


查看用戶資訊
參照:


movlw LOW (.65536 - Countms)
movlw HIGH(.65536 - Countms)
是連LOW,HIGH都搬進去暫存器嗎...



HIGH  &  LOW  是取 後接運算式無論 10 16 進位 結果轉換成  16進位)取其 高(HIGH)   (LOW)  位元組當 運算元
這是屬於編譯階段  處理的 
,  與 CPU 無關
:
             
MOVLW          HIGH    .10005
             ADDLW          LOW     .10005
等同於  
             MOVLW         0X27         
;  .10005  =   0X2715
             ADDLW         0X15

---------------------------------------------------------------

GGYY     EQU     .2345
        
            MOVLW   HIGH  GGYY
            MOVWF    TEMP_HIGH
            MOVLW    LOW  GGYY
            MOVWF    TEMP_LOW

發表於: 2009/6/21 22:15
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... ]

教育訓練中心

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