求微控制器return和return1的異同點

時間 2021-09-06 09:15:32

1樓:匿名使用者

一個是帶有返回值,一個是不帶有返回值的。肯定是有區別的了。

第二個語句呢可以看作是函式的返回值得,這樣就可以在函式進行處理完成過後,就會返回1,你可以在呼叫函式裡面得到返回結果的。這個的函式返回型別是int型別的。

第一個語句就是純粹的返回。就是直接返回到呼叫函式裡面,而且函式的返回值型別 應該是void型別的。。

2樓:幹什麼

這個我幫不到你 !!!我學彙編的,也只是學了一點皮毛

3樓:

#include

sbit di=p1^0; //di

sbit cp=p1^1; //cpdata1(int i)

}void delay(int k)

void main()

//end for t

}//end for m

delay(20);

}//end for i

}//end for while

}//end for main

//可參考程式

//不過裡面口線為clk,di

//另外移位輸出時是先送低位.

這是51微控制器中的一段函式,我想問一下最後的return(1);到底是什麼意思?有什麼作用?

4樓:手機使用者

別的函式呼叫本函式,從本函式中得到的0返回到主調函式中,return 1,同樣是這樣

5樓:匿名使用者

不懂,猜的。return 0返回一個整數0, return (1)返回一個bit 1。bit只有0,1兩個值。

6樓:

return 1 表示傳送成功,return 0 表示傳送失敗,呼叫該函式的地方可以利用這個返回值判斷髮送的成敗。

微控制器c語言中return後面什麼也沒帶什麼意思,比如

7樓:

if (irin==1)

return;表示返回的意思.

舉例你就明白了:

比如你的程式是這樣的

if (irin==1)

******

***即,return後面還有程式,那麼,如回果irin==1這個條件成答立的話,執行完ex0 = 1之後,就直接退出函式,而不再執行下面的***系列的**,如果這個條件不成立,那麼,還要執行完下面的*****。

8樓:匿名使用者

執行完子函式,不帶任何引數返回到當前的程式,並繼續往下執行。

9樓:黃曉輝

首先要bai知道你的return肯定

是用在函du數裡面的。有些zhi函式並不需要返dao回值。只是當程式執行版

到這裡時,不需要再

權往下執行了。就可以直接跳出這個函式,不需要執行這個return下面的程式了。

舉例說明一下:

void san() //函式名

這個函式當i = 3 時就可以跳出這個函式,不需要再進行自增了。

10樓:匿名使用者

這個return沒有任何意義,只是跳出子函式而已。。

求51微控制器關於return的問題

11樓:困中求生

return(keycode)是把keycode當做返回值返回到上一層呼叫程式,跟return()效果當然不一樣,return()是沒有返回值的,編譯會有警告。

12樓:匿名使用者

return(keycode)意思是返copy回keycode的值到函式

rdkeydat_ch451(void),至於和return()效果是不是一樣,沒試過,不知道。不過我想還是用return(keycode)比較清楚可靠。

微控制器c程式設計return語句問題

13樓:匿名使用者

這是對18b20程式設計的初始化函式

如果初始化成功,則會在15~60us內產生一個低電平你看那個i的賦值

i=dq_r

在後面的 if (flag & 0x80)裡面如果flag的最高位為1,即說明產生了一個復位訊號下面的if(i)與上面的 if (flag & 0x80)是並列的關係

。。。我怎麼看著你這個函式很不正道啊

前面用的char型定義的函式

又在()裡面加一個void

不可思議啊

我給你一個我的那個復位函式的形式吧

你只要把那個延時嚴格按照說明書的來

就能成功

void reset()

}因為是復位訊號

不是讀位元組那個函式

所以可以直接定義為一個空返回值的函式

st也是檢測那個復位訊號的

如果有復位訊號產生了

則延遲520us左右

然後退出這個復位 函式

我想了想,,你那個返回值0x00和0x01應該是作為一個判斷的如果i=0,則繼續返回這個函式重新檢測

如果i=1,則跳出這個函式

因為假設你這個函式能實現18b20的功能

那在那個復位函式裡面它只有這種意義了

希望能幫到你

14樓:做而論道

函式就是一個程式,執行結束後,應當有一定的結果。

其結果,可以以數值形式返回上級函式。

---------------------樓主補充的內容裡面,函式sei()的作用還是沒有說清,所以現在仍然、只能猜測return 0x00和return 0x01的含義。

函式unsigned char ds1820_reset(void),應該返回對ds1820進行復位的結果,是否成功、ds1820是否存在,就在return 0x00 或 0x01了。

一般認為return 0x01,是復位成功的意思。

15樓:匿名使用者

return 0x00的意思是,結束該子程式,並返回資料0x00作為結果。

一般情況下,return 0x00 完成的功能是:

1、將0x00寫入r0暫存器內;

2、執行子程式返回指令,返回到子程式呼叫處,通過讀r0暫存器而獲得0x00這個結果。

16樓:匿名使用者

一個函式可以定義為無返回值的,例如void ds1820_reset(void);在函式之前加入void,那麼就不會有return,但是有的時候函式是需要計算出一個結果的,在呼叫這個函式後要用到這個結果去進行下一步的計算,當然你也可以把函式定義為void形式,加入一個全域性變數來儲存這個結果,但這樣很浪費你的ram空間,一般常用的方法就是帶有返回值的函式,例如你呼叫了一個函式進行一系列計算,根據計算結果的不同需要不同的操作,那麼這時你定義一個unsigned char ds1820_reset(void)的函式,根據計算結果的不同可以這樣來寫:

if(ds1820_reset()==1)else if(ds1820_reset()==0)在上述語句中ds1820_reset()函式其實最終的結果就是return返回的數值,如果return返回的是0x00,那麼ds1820_reset()呼叫後就等於0x00

所謂return返回的就是你要得到的結果,只是一個數值而已。這個數值是你呼叫了這個函式後所關心的一個變數結果,而這個結果則是影響你程式繼續執行的關鍵變數

17樓:匿名使用者

return語句是退出當前執行的函式體,如果這個函式是有返回值的就返回相應的型別值,沒有返回值的就返回空;同時也把控制權交還給主調函式。

就像unsigned char ds1820_reset(void)是返回一個unsigned char型別的值;

ds1820_reset()是哪個函式呼叫的,就返回到**。

具體返回0x00還是0x01,還有返回值的意義,是和變數i(就是dq_r)有關。把返回值定義為常量,一般把相應的返回值當作標記使用,相當於約定好的暗號一樣。常規的做法是0x00表示某個動作失敗,0x00表示成功。

微控制器c語言中斷中的return返回:

18樓:匿名使用者

嗯,可以這麼理解,發生中斷時,主函式停止執行,調至中斷**執行了。

因為中斷時可以巢狀的,也有可能返回到之前被中斷的中斷程式那執行了。

總之就是返回之前中斷出的**繼續執行。

19樓:牛xx的小

如果這個條件滿足則直接返回,否則執行下面的語句!

20樓:匿名使用者

如果滿足條件則返回值,否則執行下面語句。

21樓:匿名使用者

return返回一個值。後面的程式就不會執行了。都是一樣的。

22樓:又一個暑假

執行到return 後面的語句就不執行了

23樓:匿名使用者

一、函式中的return,表示離開當前函式。

回到**,要看是誰或是在何時,進行呼叫的,一般如果是循序式的code,就是返回到呼叫的函式。

範例中,中斷函式,則是硬體觸發呼叫的,

硬體動作,會先把當前執行位置(pc, program counter)存下來,

才去執行中斷函式,當返回時,再將存下來的執行點還原,繼續執行。

所以,中斷函式沒有固定的呼叫點,是靠觸發時機去驅動的。

二、至於中斷的return跟一般函式的return比較,功能是相同的,但是在運作上,會有些微差異。

中斷函式的return,會額外操作硬體中斷相關的暫存器flag,用以標示中斷執行過,並得以重複觸發。

24樓:生活如歌

都是跳出函式返回主函式。

微控制器 c語言命令中返回值return()是不是儲存的意思

25樓:做而論道

c語言,寫成一段一段的,稱為函式。

寫出來一個個的小函式,可以由 main 函式來呼叫。

return,是退出函式的語句,它並把一個值,送回到主函式。

26樓:

return是返回或帶引數值返回

27樓:匿名使用者

是返回,跳出那個函式,也可以帶返回值

28樓:霜之詠歎調

return後面有()?

51微控制器外部中斷裡「return」到底有沒有用, 100

29樓:業夢旋

可以的。沒有所謂的提前結束。一段程式完成它的功能之後就是要結束呀!你的疑惑我猜應該是某個程式的分支末尾是否可以用return 來結束中斷服務吧。這個肯定沒有問題的。

微控制器求方案,微控制器 求 方案

這是一個利用溫感db18b20做的溫控系統!程式跟電路如下 系統描述 在lcd1602上實時顯示時鐘,溫度,溼度,系統執行時間。利用ds18b20 檢測當前溫度,通過和設定引數的比較,給isd1420發出報警脈衝,通過 功率放大器lm386 驅動喇叭報警。include include define...

微控制器 sfr定義,微控制器sfr和sbit有什麼區別

老友記愛學習 我是一名微控制器工程師,很多人都有類似的問題發生,其實弄懂一個sfr,其它的也就懂了,我已經用通俗易懂的方法把它寫在了一個貼子上,感興趣的可以瀏覽一下。sfr到底是什麼 p0 p3 psw acc等這些暫存器在sfr中的地址,是intel設計mcs 51微控制器時就定下的。後來許多廠家...

微控制器問題,微控制器問題

船長 12mhz 12 1s 1ms 1000065536 10000 55536 d8f0mov tmod,01h t0工作方式1mov tl0,0f0h t0初值mov th0,0d8 h t0初值setb tr0 啟動t0 setb et0 允許t0中斷 setb ea 開總中斷 龍宇防盜監控...