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

論壇索引


Board index » All Posts (gotokoji)




Re: 請問關於adcresh.adcresl...和retlw的小問題
#21
初級會員
初級會員


感謝大大的回答

我再試試看

發表於: 2007/2/13 17:47
頂部


Re: 請問查表這樣的寫法對嗎
#22
初級會員
初級會員


感謝Cwen大大和Blake的回答
我對RETLW比較清楚了

另外還有一點疑問
Cwen大大提到值不能超過255.若超過要建2個表

那ADC的值出來後是要CALL HIGH&LOW這2個表

EX.. movf adresh,w
movwf acd_value
call adc_high_table
call adc_low_table
這樣嗎??還是
EX.. movf adresh,w
movwf acd_value
call adc_table

adc_table
addwf pcl,w
adc_high_table
retlw high(D'928')
.
.
adc_low_table
retlw low(D'928')
.
.
還是這樣嗎??
PS: 我是個大嫩咖~"~ 麻煩各位解答一下...感謝



發表於: 2007/2/13 17:45
頂部


請問查表這樣的寫法對嗎
#23
初級會員
初級會員


這是我練習寫ADC的一部份程式
我只想讀出特定幾個值.所以加了一張TABLE
想把表中的特定值抓出來就好
請問這樣子的寫法對嗎

AD_CONVERT
BSF ADCON0,GO

ADC_WAIT
BTFSC ADCON0,GO
GOTO ADC_WAIT
movf ADRESH,W
MOVWF ADC_TEMP1
CALL ADC_VAL
MOVWF TMR1H
BSF ADCON0,GO
goto AD_CONVERT

ADC_TABLE
ADDWF PCL,F
RETLW D'928'
RETLW D'923'
RETLW D'918'
RETLW D'912'
RETLW D'907'
RETLW D'901'
RETLW D'894'
RETLW D'888'
RETLW D'881'
RETLW D'874'
RETLW D'867'
RETLW D'860'
RETLW D'852'
RETLW D'845'
RETLW D'837'
RETLW D'828'
RETLW D'820'
RETLW D'811'

發表於: 2007/2/13 16:31
頂部


請問關於adcresh.adcresl...和retlw的小問題
#24
初級會員
初級會員


請問一下...ADC轉換出來的值..
會儲存在ADCRESH.L2個暫存器共16位元
我用的是PIC16F873A..可是只能一次處理8位元
請問是不是我抓ADCRESH.PIC就會自動從高位元讀取資料一直到BIT0..還是要使用其他方法處理..可否告知一 下該往哪方向思考....我想好久想不出來><不知道怎麼把被拆成2個8位元的值
恢復成16位元

還有RETLW這個指令

RETLW B'01100000' ;1
這行的意思是...查表時會對照 ; 後面的數值再把B"01100000"
傳回去嗎??
我看了幾篇範例還是看不太懂

請各位高手幫我解答一下...謝謝

發表於: 2007/2/12 19:47
頂部


請問PIC16F873A中斷一問..新手
#25
初級會員
初級會員


我想利用TMRO做中斷一秒鐘的程式
用了預除器1:16
請問是哪邊有問題....compiler ok卻不能中斷
可以請各位高手指點一下嘛
下面是我的程式碼
ORG        0x80
Main
          Bank1
          MOVLW    0X00               
;清除PORTC
          MOVWF    TRISC
          BankSEL  OPTION_REG         
;選擇OPTION_REG暫存器
          MOVLW    
b'00000011'        ;設定預除器為1:16  TMR0使用
          MOVWF    OPTION_REG        
          BSF      INTCON
,GIE         ;設定INTCON中的GIE為1
          BSF      INTCON
,TMR0IE      ;設定INTCON中的TMR0IE為1
          Bank0
          BankSEL  TMR0
          MOVLW    0XFD
          MOVWF    TMR0               
;設定TMR0初始值
          MOVWF    SECOND
          MOVLW    0X01
          MOVWF    PORTC
REDO
          CALL     SEC_LOOP   
          RLF      PORTC
          NOP
          NOP
          NOP
          
GOTO     REDO

SEC_LOOP       
          INCFSZ   SECOND              
;SECOND+1..若SECOND為0跳過下一個指令
          
GOTO     SEC_LOOP
          MOVLW    0XFD                
;重設SECOND初值
          MOVWF    SECOND
        
SEC_CON
          MOVLW    0X06                
;重設TMR0初值
          MOVWF    TMR0     
          BCF      INTCON
,TMR0IF       ;清除TMR0IF中斷棋標 
        
          RETFIE                       
;中斷返回
END

發表於: 2006/12/26 14:31
頂部



« 1 2 (3)



:::

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

教育訓練中心

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