新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 第7節(jié):程序開發(fā)的方法以及代碼備份管理技巧

        第7節(jié):程序開發(fā)的方法以及代碼備份管理技巧

        作者: 時間:2016-11-22 來源:網絡 收藏
        從業(yè)十年,教你單片機入門 第7講:

        是不是每做一個新項目都要新建一個工程?在同一個項目中,是不是每修改一次源代碼都要新建一個工程?很多情況下都不用。這節(jié)介紹如何重復利用現有工程模板進行程序開發(fā)的方法以及代碼備份管理技巧

        本文引用地址:http://www.104case.com/article/201611/319817.htm

        重復利用現有工程模板,有三個必須。第一個必須是一個源文件的,而不是多文件編程(大家暫時不了解啥叫多文件編程也沒關系)。第二個必須是同樣的廠家同樣的單片機型號。第三個必須進行代碼備份管理,每完成一個項目的小進度,都要及時把源代碼存儲到電腦硬盤里,電腦硬盤里每個項目對應一個項目文件夾,每個項目文件夾里包含很多不同版本編號的源代碼文件,每個源代碼文件名必須有流水編號,方便識別最新版本的程序,每天下班前都要把最新版本的源代碼文件上傳到網盤備份,在互聯網時代,把源代碼存到自己的網盤,可以隨時異地存取,即使遇到電腦故障損壞也不擔心數據永久丟失。

        現在舉一個例子來介紹它的操作流程。要修改一個LED項目的源代碼,電腦D盤上已經有一個“LED項目”的文件夾,文件夾里已經有一個名稱為”LED_1”的源代碼文件,這個文件是.txt格式的文本文檔,文件名稱的后綴_1代表流水編號,要求修改此源代碼后,再保存在此文件夾目錄下的”LED_2”文本文檔里,并且上傳到網盤進行備份。

        第一步:打開一個現有的keil工程。雙擊桌面”keil uVision4”的圖標啟動keil軟件,如果發(fā)現此軟件默認打開了一個之前已經存在的工程,請點擊上面”Project”選項,在彈出的下拉菜單中選擇“Close Project”先關閉當前工程。然后,繼續(xù)點擊上面”Project”選項,在彈出的下拉菜單中選擇“Open Project...”,在彈出的文件對話框中,在D盤目錄下找到之前已經建立的工程文件夾stc89c52rc,單擊選中“stc89c52rc.uvproj”這個文件名,點擊“打開”,就可以打開一個現有的工程了。

        第二步:把當前keil工程的全部源代碼清空。用Ctrl+A快捷鍵選中當前工程的全部源代碼,按下Backspace退格按鍵就可以清空當前工程的全部源代碼。

        第三步:把最新版本的源代碼導入到當前的keil工程中。在電腦D盤的“LED項目”文件夾目錄下,雙擊打開“LED_1”的文本文檔,用Ctrl+A快捷鍵選中文本文檔的全部源代碼,再用Ctrl+C快捷鍵復制此源代碼,切換到keil工程中,把光標移動到工程的源代碼編輯區(qū),再用Ctrl+V快捷鍵粘貼此源代碼到keil工程里。以下是復制粘貼到keil工程的源代碼:

        #include "REG52.H"

        void delay_long(unsigned int uiDelayLong); //延時函數

        sbit led_dr=P3^5;

        void main()

        {

        while(1)

        {

        led_dr=1; //LED亮

        delay_long(100); //延時50000個空指令的時間

        led_dr=0; //LED滅

        delay_long(100); //延時50000個空指令的時間

        }

        }

        void delay_long(unsigned int uiDelayLong) //延時函數

        {

        unsigned int i;

        unsigned int j;

        for(i=0;i

        {

        for(j=0;j<500;j++); //內嵌循環(huán)的空指令數量

        }

        }

        第四步:在keil工程中修改此源代碼。把“led_dr=0; //LED滅”這行代碼刪掉,修改后變成以下代碼:

        #include "REG52.H"

        void delay_long(unsigned int uiDelayLong); //延時函數

        sbit led_dr=P3^5;

        void main()

        {

        while(1)

        {

        led_dr=1; //LED亮

        delay_long(100); //延時50000個空指令的時間

        delay_long(100); //延時50000個空指令的時間

        }

        }

        void delay_long(unsigned int uiDelayLong) //延時函數

        {

        unsigned int i;

        unsigned int j;

        for(i=0;i

        {

        for(j=0;j<500;j++); //內嵌循環(huán)的空指令數量

        }

        }

        第五步:啟動編譯。點擊上面”Project”選項,在彈出的下拉菜單中點擊“Rebuild all target files”編譯命令,編譯結束后顯示編譯操作成功。

        第六步:把在keil工程里修改后的源代碼備份到電腦硬盤里。

        (1)先在D盤的”LED項目”文件夾目錄下,點擊鼠標右鍵新建一個文本文檔,再右鍵選中此文本文檔圖標,重命名為”LED_2”,然后雙擊打開此文本文檔。

        (2)切換到keil工程的源代碼中,用Ctrl+A快捷鍵選中keil工程的全部源代碼,用Ctrl+C快捷鍵復制此代碼,接著切換回D盤的”LED_2”的文本文檔,用Ctrl+V快捷鍵把修改后的代碼粘貼到D盤的”LED_2”的文本文檔,并且打開文本文檔左上角“文件”的下拉菜單,點擊“保存”按鈕保存,最后關閉此文本文檔。

        第七步:把"LED_2"文本文檔上傳到網盤里備份。我本人比較喜歡用115網盤。關于115網盤的操作,大家可以百度搜索“115網盤”。

        詳細操作步驟圖請點擊:bbs.21ic.com/forum.php

        下節(jié)預告:把.hex機器碼下載到單片機的操作流程。



        評論


        技術專區(qū)

        關閉
        主站蜘蛛池模板: 方山县| 永安市| 崇文区| 灵璧县| 河南省| 突泉县| 工布江达县| 辽宁省| 江西省| 庆元县| 青州市| 晋宁县| 顺平县| 安乡县| 恩平市| 渭南市| 宁武县| 枣庄市| 清丰县| 谷城县| 宝丰县| 万盛区| 永城市| 栖霞市| 睢宁县| 达尔| 和顺县| 伊吾县| 萨迦县| 息烽县| 凤阳县| 饶阳县| 清远市| 娱乐| 罗山县| 镇安县| 南靖县| 琼海市| 柞水县| 东乡族自治县| 夏河县|