日韩在线不卡免费视频一区,日韩欧美精品一区二区三区经典,日产精品码2码三码四码区,人妻无码一区二区三区免费,日本feerbbwdh少妇丰满

  • 回復(fù)
  • 收藏
  • 點贊
  • 分享
  • 發(fā)新帖

PIC單片機學(xué)習(xí)提問,望高手解答

大家好,我是單片機的愛好者,正在學(xué)習(xí)PIC的單片機,在學(xué)習(xí)中遇到一些問題,希望大家不吝賜教.謝謝大家!
同時希望能與和我一樣的初學(xué)者共同進步.
再次感謝!
全部回復(fù)(14)
正序查看
倒序查看
pro-power
LV.5
2
2008-10-05 22:42
我學(xué)習(xí)的一本書上的有一個程序的開頭是這樣定義的:
1:       tmr0          equ   01h
2:       pcl           equ   02h
3:       status        equ   03h
4:       option_reg    equ   81h
5:       intcon        equ   0bh
......
8:       tmr0b         equ   6
9:       count         equ   20h
10:      rp0           equ   5h
......
以上都是定義寄存器的,比如第一句,就是定義地址是01h的寄存器取個代號為tmr0,如此類推.
在此我請問大家,第8句是什么意思,因為后面的6不是代表地址的,實際上書上說是為定時器賦初始值為6,就是從6開始計時.
請大家指教!! (同理第10句也是同樣的問題)
0
回復(fù)
ice3fly
LV.1
3
2008-10-07 15:24
我也是新手,啥都不懂的噢!!互相學(xué)習(xí)噢,呵
0
回復(fù)
xiongls
LV.3
4
2008-10-09 16:08
@pro-power
我學(xué)習(xí)的一本書上的有一個程序的開頭是這樣定義的:1:      tmr0          equ  01h2:      pcl          equ  02h3:      status        equ  03h4:      option_reg    equ  81h5:      intcon        equ  0bh......8:      tmr0b        equ  69:      count        equ  20h10:      rp0          equ  5h......以上都是定義寄存器的,比如第一句,就是定義地址是01h的寄存器取個代號為tmr0,如此類推.在此我請問大家,第8句是什么意思,因為后面的6不是代表地址的,實際上書上說是為定時器賦初始值為6,就是從6開始計時.請大家指教!!(同理第10句也是同樣的問題)
前5句都是定義頭文件的,你應(yīng)該會在相應(yīng)的.H文件中找到,編程的時候可以不管它.直接加一條#INCLUDE《PIC.H》就可以了,用匯編的話把《PIC.H》換成相應(yīng)的型號.
第8句是給TMR0寄存器賦值,從6開始記數(shù)或者定時.第9句是定義變量count的位置.第10句和1——5句是一樣的,都是定義寄存器,相當于頭文件.
這些都是很簡單的東西.光看書是不行的,下個編譯器自己敲程序什么都明白了.
另外單純的MCU問題建議去其他網(wǎng)站,這個網(wǎng)站好象就這些問題回答較少.
www.pic16.com可能會好些
0
回復(fù)
liuyaf
LV.4
5
2008-10-29 11:32
@ice3fly
我也是新手,啥都不懂的噢!!互相學(xué)習(xí)噢,呵
我也是學(xué)了一點點,希望可以相互學(xué)習(xí).
0
回復(fù)
pro-power
LV.5
6
2008-11-16 18:13
@pro-power
我學(xué)習(xí)的一本書上的有一個程序的開頭是這樣定義的:1:      tmr0          equ  01h2:      pcl          equ  02h3:      status        equ  03h4:      option_reg    equ  81h5:      intcon        equ  0bh......8:      tmr0b        equ  69:      count        equ  20h10:      rp0          equ  5h......以上都是定義寄存器的,比如第一句,就是定義地址是01h的寄存器取個代號為tmr0,如此類推.在此我請問大家,第8句是什么意思,因為后面的6不是代表地址的,實際上書上說是為定時器賦初始值為6,就是從6開始計時.請大家指教!!(同理第10句也是同樣的問題)
謝謝大家的解答,我把我看的一本書《pic單片機實用教程-基礎(chǔ)篇》上傳給大家,希望對大家有幫助.

68471226830175.part1.rar

68471226830235.part2.rar
0
回復(fù)
pro-power
LV.5
7
2008-11-16 18:14
@pro-power
謝謝大家的解答,我把我看的一本書《pic單片機實用教程-基礎(chǔ)篇》上傳給大家,希望對大家有幫助.68471226830175.part1.rar68471226830235.part2.rar
0
回復(fù)
pro-power
LV.5
8
2008-11-16 18:14
@pro-power
繼續(xù),共4個壓縮包68471226830339.part3.rar68471226830443.part4.rar
以上與大家分享,謝謝大家
0
回復(fù)
pro-power
LV.5
9
2008-11-16 18:19
@xiongls
前5句都是定義頭文件的,你應(yīng)該會在相應(yīng)的.H文件中找到,編程的時候可以不管它.直接加一條#INCLUDE《PIC.H》就可以了,用匯編的話把《PIC.H》換成相應(yīng)的型號.第8句是給TMR0寄存器賦值,從6開始記數(shù)或者定時.第9句是定義變量count的位置.第10句和1——5句是一樣的,都是定義寄存器,相當于頭文件.這些都是很簡單的東西.光看書是不行的,下個編譯器自己敲程序什么都明白了.另外單純的MCU問題建議去其他網(wǎng)站,這個網(wǎng)站好象就這些問題回答較少.www.pic16.com可能會好些
請教高手,紅外線遙控接收的程序是怎么寫啊,能給個思路嗎?下圖是我繪制的紅外接收頭輸出端的波形
500) {this.resized=true; this.width=500; this.alt='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';this.style.cursor='hand'}" onclick="if(!this.resized) {return true;} else {window.open('http://u.dianyuan.com/bbs/u/71/68471226830772.jpg');}" onmousewheel="return imgzoom(this);">
0
回復(fù)
njyd
LV.8
10
2008-11-19 23:07
@pro-power
我學(xué)習(xí)的一本書上的有一個程序的開頭是這樣定義的:1:      tmr0          equ  01h2:      pcl          equ  02h3:      status        equ  03h4:      option_reg    equ  81h5:      intcon        equ  0bh......8:      tmr0b        equ  69:      count        equ  20h10:      rp0          equ  5h......以上都是定義寄存器的,比如第一句,就是定義地址是01h的寄存器取個代號為tmr0,如此類推.在此我請問大家,第8句是什么意思,因為后面的6不是代表地址的,實際上書上說是為定時器賦初始值為6,就是從6開始計時.請大家指教!!(同理第10句也是同樣的問題)
  俺下面說的是51系列單片機的,不知與你這個一樣不一樣.
  這個equ不一定要定義寄存器,有點類似一般程序語言中的 字符串常量賦值.
  equ前面的就是字符串常量名,后面的是字符串.
  這樣定義后,在這個程序中,前面的就等同于后面的,比如說你那個第8行,編譯時編譯程序見到“tmr0b”這個詞就用“6”代替,
  比如說在我的51匯編程序中定義了你的第8行:
  MOV a,#tmr0b 等同于 MOV a,#6
  使用equ的好處之一是,如果你的程序中有某個數(shù)值或寄存器要在多處統(tǒng)一修改時(不是運行中修改,是編程時修改),用了它可以在程序頭改一處就行了,不必到程序中一處處去找.
0
回復(fù)
njyd
LV.8
11
2008-11-19 23:10
@pro-power
請教高手,紅外線遙控接收的程序是怎么寫啊,能給個思路嗎?下圖是我繪制的紅外接收頭輸出端的波形[圖片]500){this.resized=true;this.width=500;this.alt='這是一張縮略圖,點擊可放大。\n按住CTRL,滾動鼠標滾輪可自由縮放';this.style.cursor='hand'}"onclick="if(!this.resized){returntrue;}else{window.open('http://u.dianyuan.com/bbs/u/71/68471226830772.jpg');}"onmousewheel="returnimgzoom(this);">
  這是否有編碼,編碼規(guī)則?
0
回復(fù)
pro-power
LV.5
12
2008-11-20 16:23
@njyd
  這是否有編碼,編碼規(guī)則?
有規(guī)則的,前面是頭,接著是8位的用戶碼,再接著是8位的數(shù)據(jù)碼,最后是結(jié)尾,普通的遙控都是類似的.
0
回復(fù)
pro-power
LV.5
13
2008-11-20 16:25
@njyd
  俺下面說的是51系列單片機的,不知與你這個一樣不一樣.  這個equ不一定要定義寄存器,有點類似一般程序語言中的字符串常量賦值.  equ前面的就是字符串常量名,后面的是字符串.  這樣定義后,在這個程序中,前面的就等同于后面的,比如說你那個第8行,編譯時編譯程序見到“tmr0b”這個詞就用“6”代替,  比如說在我的51匯編程序中定義了你的第8行:  MOVa,#tmr0b等同于MOVa,#6  使用equ的好處之一是,如果你的程序中有某個數(shù)值或寄存器要在多處統(tǒng)一修改時(不是運行中修改,是編程時修改),用了它可以在程序頭改一處就行了,不必到程序中一處處去找.
是的,我現(xiàn)在也搞懂了,謝謝指教
0
回復(fù)
hunter-007
LV.4
14
2009-04-10 14:08
@pro-power
繼續(xù),共4個壓縮包68471226830339.part3.rar68471226830443.part4.rar
你的4個壓縮包解壓后從174頁開始就打不開,不知是不是上傳的問題.前面的可以,最后的也可打開,能否將第2、3個壓縮包重傳或是發(fā)到我的郵箱里,謝謝.
sunpower_wu@126.com
shuiping_wsp@163.com
0
回復(fù)
mysunuy
LV.2
15
2009-04-10 14:26
@xiongls
前5句都是定義頭文件的,你應(yīng)該會在相應(yīng)的.H文件中找到,編程的時候可以不管它.直接加一條#INCLUDE《PIC.H》就可以了,用匯編的話把《PIC.H》換成相應(yīng)的型號.第8句是給TMR0寄存器賦值,從6開始記數(shù)或者定時.第9句是定義變量count的位置.第10句和1——5句是一樣的,都是定義寄存器,相當于頭文件.這些都是很簡單的東西.光看書是不行的,下個編譯器自己敲程序什么都明白了.另外單純的MCU問題建議去其他網(wǎng)站,這個網(wǎng)站好象就這些問題回答較少.www.pic16.com可能會好些
真是暈,EQU怎么是賦值的助記符了呢
EQU等同于C中的#defule  tmr0b  6
就是說以后定時器用到6的時候就不用寫6了,直接寫tmr0b就可以了,這樣直觀一點.
0
回復(fù)
發(fā)