当前位置:首页 > 单片机 > 单片机
[导读]从业十年,教你单片机入门 第7讲:是不是每做一个新项目都要新建一个工程?在同一个项目中,是不是每修改一次源代码都要新建一个工程?很多情况下都不用。这节介绍如何重复利用现有工程模板进行程序开发的方法以及代码

从业十年,教你单片机入门  第7讲:

是不是每做一个新项目都要新建一个工程?在同一个项目中,是不是每修改一次源代码都要新建一个工程?很多情况下都不用。这节介绍如何重复利用现有工程模板进行程序开发的方法以及代码备份管理技巧。

重复利用现有工程模板,有三个必须。第一个必须是一个源文件的,而不是多文件编程(大家暂时不了解啥叫多文件编程也没关系)。第二个必须是同样的厂家同样的单片机型号。第三个必须进行代码备份管理,每完成一个项目的小进度,都要及时把源代码存储到电脑硬盘里,电脑硬盘里每个项目对应一个项目文件夹,每个项目文件夹里包含很多不同版本编号的源代码文件,每个源代码文件名必须有流水编号,方便识别最新版本的程序,每天下班前都要把最新版本的源代码文件上传到网盘备份,在互联网时代,把源代码存到自己的网盘,可以随时异地存取,即使遇到电脑故障损坏也不担心数据永久丢失。

现在举一个例子来介绍它的操作流程。要修改一个LED项目的源代码,电脑D盘上已经有一个“LED项目”的文件夹,文件夹里已经有一个名称为”LED_1”的源代码文件,这个文件是.txt格式的文本文档,文件名称的后缀_1代表流水编号,要求修改此源代码后,再保存在此文件夹目录下的”LED_2”文本文档里,并且上传到网盘进行备份。

第一步:打开一个现有的keil工程。双击桌面”keil uVision4”的图标启动keil软件,如果发现此软件默认打开了一个之前已经存在的工程,请点击上面”Project”选项,在弹出的下拉菜单中选择“Close Project”先关闭当前工程。然后,继续点击上面”Project”选项,在弹出的下拉菜单中选择“Open Project...”,在弹出的文件对话框中,在D盘目录下找到之前已经建立的工程文件夹stc89c52rc,单击选中“stc89c52rc.uvproj”这个文件名,点击“打开”,就可以打开一个现有的工程了。

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

第三步:把最新版本的源代码导入到当前的keil工程中。在电脑D盘的“LED项目”文件夹目录下,双击打开“LED_1”的文本文档,用Ctrl+A快捷键选中文本文档的全部源代码,再用Ctrl+C快捷键复制此源代码,切换到keil工程中,把光标移动到工程的源代码编辑区,再用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++); //内嵌循环的空指令数量

}

}

第四步:在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++); //内嵌循环的空指令数量

}

}

第五步:启动编译。点击上面”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

下节预告:把.hex机器码下载到单片机的操作流程。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

北京2024年5月16日 /美通社/ -- 5月10日晚,2024中国品牌日晚会在新华社全媒体矩阵播出,50个入选品牌在当晚揭晓,极氪名列其中,成为首度上榜的中国造车新势力代表。 图为北京时间5月10日 21:30 ,...

关键字: 吉利 COM HTML 代码

2023年10月18日,中国在第三届“一带一路”国际合作高峰论坛期间发布《全球人工智能治理倡议》,围绕人工智能发展、安全、治理三方面系统阐述了人工智能治理中国方案。

关键字: 人工智能 大模型 代码

我们看到这么多的安全问题,部分原因在于我们对待安全的方式:安全性通常被认为是事后考虑的问题,是在开发结束时才添加到设备上的东西。然而,复杂的系统,尤其是嵌入式系统,有一个很大的攻击面,这让攻击者有机可乘,能够在“盔甲”上...

关键字: 代码 嵌入式系统 软件漏洞

新富人群财务需求多元发展,投顾服务迎来新机遇 上海2023年9月20日 /美通社/ -- 2023年9月19日,上海交通大学上海高级金融学院(高金)与全球领先的金融服务机构嘉信理财(Charles Schwab)联合发...

关键字: BSP ADVANCED INA 代码

北京2023年9月14日 /美通社/ -- 生物医药高科技公司诺诚健华(港交所代码:09969;上交所代码:688428)今日宣布,新型蛋白酪氨酸磷酸酶SHP2变构抑制剂ICP-189联用针对表皮生长因子受体(EGFR)...

关键字: IC HP 代码 ARMA

北京2023年9月12日 /美通社/ -- 新能源汽车的动力电池,需要哪些标准?车载无线通信,哪些参数需要统一?建筑咨询应怎么作?9月1日至10月22日,首届"ISO国际标准化青年之星大赛"活动启动,邀请18岁至35岁高...

关键字: ISO 大赛 模板 宁德时代

上海2023年9月1日 /美通社/ -- 2023上半年,安集科技(股票代码:688019)市场拓展规划成效显现,营业收入稳健增长。 全球半导体产业挑战持续存在的情形下,安集科技秉承发扬"克难攻坚,敢打硬...

关键字: 安集科技 BSP 代码 半导体材料

国际酒店运营商升级其在线支付功能 上海2023年8月28日 /美通社/ -- 加拿大金融科技公司Nuvei Corporation(以下简称“Nuvei”或“公司”)(纳斯达克代码:NVEI)(多伦多证券交易所代码:N...

关键字: 代码 IP SE 纳斯达克

2023年上半年收入7.459亿元 同比增长5.1% 毛利率水平上升 海外收入同比增长65.4% 香港2023年8月22日 /美通社/ -- 金邦达宝嘉控股有限公司及其附属公司(以下合称「金邦达」、「...

关键字: 数字化 代码 嵌入式软件 COM

我们经常对正在进行数字化转型的亚马逊云科技客户建议,将云迁移视为其数字化转型的一部分,数字化转型本身必须由业务成果驱动。其中治理计划的有效性决定了云迁移和数字化转型的成功与否。数字化转型中的云迁移总有结束的时候,但是如果...

关键字: 代码 数字化 云服务
关闭
关闭