日本高清不卡中文字幕-一起草草视频在线观看-亚洲精品一区二区三区色-国产亚洲精品免费视频

你好!歡迎來到深圳市穎特新科技有限公司!
語言
當(dāng)前位置:首頁 >> 技術(shù)中心 >> 單片機(jī)入門 >> 單片機(jī)編程初學(xué)者之主函數(shù)的特點(diǎn)

單片機(jī)編程初學(xué)者之主函數(shù)的特點(diǎn)

關(guān)鍵字:單片機(jī) 編程 函數(shù) 作者:admin 來源:不詳 發(fā)布時(shí)間:2018-05-18  瀏覽:16

 在給一些單片機(jī)初學(xué)者解答問題的時(shí)候,我發(fā)現(xiàn)了一個(gè)現(xiàn)象,可能是因?yàn)槭艿诫娔X上學(xué)習(xí)C程序設(shè)計(jì)的影響,很多人會(huì)寫出類似這樣的程序:

[cpp] view plain copy#include

void main()

{

P1=0x00;

}

或者是這樣的程序

[cpp] view plain copy#include

int main()

{

P1=0xab;

return 0;

}

如果是在電腦上運(yùn)行類似這樣的程序,程序執(zhí)行結(jié)束,控制權(quán)交給系統(tǒng),有返回值的返回給系統(tǒng),是完全可行的,但是在單片機(jī)上就不一樣了,對(duì)于不依靠操作系統(tǒng)的單片機(jī)程序,main函數(shù)就是操作系統(tǒng),應(yīng)該是不能終止運(yùn)行的,而應(yīng)該是一個(gè)while(1)死循環(huán)。

沒有加while(1)的程序執(zhí)行結(jié)束會(huì)出現(xiàn)不可預(yù)知的結(jié)果(具體要根據(jù)匯編語言PC指針指向的位置判斷),也就是程序跑飛。

雖然實(shí)際上用的時(shí)候STC單片機(jī)會(huì)循環(huán)執(zhí)行程序(執(zhí)行結(jié)束單片機(jī)復(fù)位,所有變量重置),但這個(gè)在芯片手冊(cè)中并沒有給出官方說明,所以并不一定總能如此。

單片機(jī)程序執(zhí)行終止,這樣就會(huì)大大降低可靠性。試想你的單片機(jī)在控制一臺(tái)大型機(jī)器,如果發(fā)生不可預(yù)知的結(jié)果,后果很嚴(yán)重;如果你的手表是單片機(jī),程序停止運(yùn)行會(huì)怎樣?就停止顯示了;如果電腦的操作系統(tǒng)運(yùn)行終止(關(guān)機(jī)除外),也會(huì)出現(xiàn)問題。

所以單片機(jī)的程序必然是一個(gè)死循環(huán),一般都會(huì)有while(1),另外不需要有返回值,形如下面兩種情況。

[cpp] view plain copy#include

void main()

{

P1=0x00;

while(1);

}

[cpp] view plain copy#include

void main()

{

while(1) {

P1=0x00;

}

}

編輯:admin  最后修改時(shí)間:2018-05-18

聯(lián)系方式

0755-82591179

傳真:0755-82591176

郵箱:vicky@yingtexin.net

地址:深圳市龍華區(qū)民治街道民治大道973萬眾潤豐創(chuàng)業(yè)園A棟2樓A08

Copyright © 2014-2023 穎特新科技有限公司 All Rights Reserved.  粵ICP備14043402號(hào)-4

象山县| 台东县| 华坪县| 芒康县| 咸丰县| 汶川县| 隆德县| 南汇区| 南汇区| 东平县| 邵东县| 肥东县| 汉阴县| 黎平县| 合山市| 天长市| 张家口市| 福州市| 柘城县| 丽水市| 外汇| 肇庆市| 德化县| 剑阁县| 张掖市| 密山市| 揭西县| 墨竹工卡县| 曲松县| 苗栗县| 肇源县| 苏尼特左旗| 江油市| 建水县| 德令哈市| 通榆县| 枣阳市| 张家界市| 庆城县| 中超| 太仓市|