音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網
技術交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術 | 電源技術 | 測控之家 | EMC技術 | ARM技術 | EDA技術 | PCB技術 | 嵌入式系統(tǒng)
驅動編程 | 集成電路 | 器件替換 | 模擬技術 | 新手園地 | 單 片 機 | DSP技術 | MCU技術 | IC 設計 | IC 產業(yè) | CAN-bus/DeviceNe

急,請幫忙

作者:king99112 欄目:單片機
急,請幫忙
我是新手,碰到了很麻煩,請大家?guī)蛶兔?br>



LIST        P=16F877
#INCLUDE    "P16F877.INC"
   
   STATUS   equ   0x03
   TRISA    equ   0x85
   PORTA    equ   0x05
   PORTC    equ   0x07
   TRISC    equ   0x87
   DATA_OLD equ   0X18
   ADCON0   equ   0X1F
   adcon1   equ   0X9F
   adresh   equ  0X1E
   adresl   equ   0x9E
   ACCBH    equ   0x08
   ACCBL    equ   0x09
   ACCAH    equ   0x0A
   ACCAL    equ   0x0B
   
   ORG    0X00
   nop
   GOTO   MAIN
   ORG    0X10
MAIN
   NOP
   call      INITPORTS
   goto      INITREG
  
INITPORTS
   BSF    STATUS,RP0
   BCF    STATUS,RP1
   CLRF   TRISA
   MOVLW  01H
   MOVWF  TRISA
   BCF    3,RP0
   CLRF   PORTA
   CLRF   PORTC
   return
INITREG
   BCF    STATUS,RP0
   CLRF   DATA_OLD
    NOP
AD
   CLRF   ADCON0
   MOVLW  0xC1  
   MOVWF  ADCON0
   CLRF   adresh
   BSF    3,RP0
   CLRF   adcon1
   CLRF   adresl
   MOVLW  0x0E
   MOVWF  ADCON1
   BCF    3,RP0
   MOVLW  0X5
   MOVWF  10

DELAY_1
   clrwdt
   DECFSZ  10,1
   goto   DELAY_1         
   BSF    ADCON0,GO
DELAY_2
   btfss  PIR1,ADIF
   GOTO   DELAY_2
   banksel PORTC
   clrf   PORTC
   BSF    3,RP0
   clrf   TRISC
   BCF    3,RP0
   CLRF   ACCAL
   MOVF   adresh,0   
   MOVWF  PORTC
   MOVWF  ACCAH :這兒的高兩位不能存
   NOP       :這兒寄存器ACCAH會變?yōu)榱?br>   BSF    STATUS,5
   banksel adresl
   MOVF   adresl ,0
   CLRF   ACCAL
   MOVWF  ACCAL   
   BCF    STATUS,5
   MOVLW  0X85
   MOVWF  ACCBL
   MOVLW  0X02
   MOVWF  ACCBH  :這兒存不了數(shù)據

上面是我在做模數(shù)轉換是碰到的問題,請幫忙
 

2樓: >>參與討論
king99112
怎么沒人能解決嗎,還是我的問題太容易了
真的請各位能幫忙啊

3樓: >>參與討論
king99112
謝了,斑竹
我是新手,所以請班主多原諒我的錯誤
一開始我一直以為都可以亂定義的,后來實踐中發(fā)現(xiàn)變量應該不能定義在前0X20的地址里面,不知道是不是怎么回事啊
請斑竹多多幫助,謝謝了



4樓: >>參與討論
張明峰
對了
bank0的0x00-0x1f單元是特殊功能寄存器,有專門用圖。其他bank中也有特殊功能寄存器。用戶的自定義變量不能和特殊功能寄存器沖突。

5樓: >>參與討論
delta_sun
獨家提供:告訴你一個用好PIC的好辦法!
PIC的特點是指令少,內部RAM地址復雜,系列又多。
你可以從你正在用的芯片DATASHEET內取出寄存器在RAM中的地址映射圖表,排在同一圖形文件內,目的就是做成WINDOWS的桌面墻紙。這樣每天你開機,沒事的時候都面對它,很快就能記住了。
當換用其他芯片時,就再制作其它芯片的墻紙,放在桌面上查信息也方便。


6樓: >>參與討論
king99112
是啊,我也覺的頭很疼,寄存器特多,
不過現(xiàn)在稍微好了一點,用多了
對了,斑竹,我先問一下,就是假設我定義一個寄存器并給他值,如果它第一次的值跟第二次的值相等時,是不是在程序運行到它第二次的時候不執(zhí)行的。我在仿真的時候發(fā)現(xiàn)它(我上面說的哪個寄存器)不會變紅。
第二個問題就是也成不上問題,就是如果我程序中要用到一個特殊的寄存器例如A/D控制寄存器的一個開啟A/D轉換的位,前面不給這個位定義是不是也可以的?

7樓: >>參與討論
aliner
當然會執(zhí)行,他不變紅是仿真軟件的高明之處!
只有寄存器值變化的時候它才會變紅來提醒你注意,如果值沒有變的時候你當然可以暫時不用關心他了.你當然在用那個寄存器本身有FSR來提示呀!

第二個問題:你不定義位當然可以,其實如果你的記憶力很強的話,那你所有的寄存器都可以不定義,你定義只是為了自己看程序簡單明了!
例如:bsf 0x1f,2 等同于bsf ADCON0,GODONE!

8樓: >>參與討論
king99112
謝謝aliner 老兄,真的很感謝,
謝謝aliner 老兄,真的很感謝!
  雖然我的問題很簡單,其實有時我是知道,但是由于我們這邊沒什么人懂
所以有時不敢斷定自己的判斷是不是對,所以要上網來問問
  我現(xiàn)在有個問題想問一下,就是我用置位命令來置寄存器所在的存儲體(即置3寄存器的5位)不行,但是用BANKSEL 直接置就可以,不知道怎么回事。
   還有能不能留個聯(lián)系方式。∫院笥袉栴}可以請教。

參與討論
昵稱:
討論內容:
 
 
相關帖子
有用pic做過手操器的嗎?
有誰寫過電磁爐的程序 請交流!
pic508燒寫的問題
請教;pic16c57的定時器中斷有甚麼硬件置位沒有?
中斷為什么會亂來!?
免費注冊為維庫電子開發(fā)網會員,參與電子工程師社區(qū)討論,點此進入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號