keil4到底哪里错了,老是keil2目标没产生未建立,怎么改正求大神指点。

你的程序是没问题的我已试过,编译是成功的从错误信息看,是你安装的KEIL不正确在对应的目录中找不到/usercenter?uid=4ab05e792e05">XELLRO

请贴出编译信息.....

我不知道你说的"keil2目标没产生"是不是指的是.HEX之類的代码文件. 如果是的话, 请确保工程编译设置里面开启了相应的选项.

1-可能是证书过期了...请更换序列号, 也就是lincese.....
2-也可能是代码空间不足... 我觉得倒是第一种可能性大一点, 貌似大学的时候遇到很多次.

下载百度知道APP,抢鲜体验

使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道的答案

}

通过计算机软件模拟出三种颜色嘚灯光刺激要求驾驶员对不同的灯光及干扰信号作出不同的反应,检测驾驶员在信息连续变化情况下的有效动作反应的快慢及对无关信息的抗干扰能力以预测驾驶员的安全性。

等公司出品的应用程序的性能和可靠性E-TEST使你更加自信的配置这些应用程序。此外这套软件還集成了测试工具和过程管理软件,包含了为客户提供高质量体验所需的一切 由Empirix公司开发的E-TEST Suite测试软件是当前优秀的易于使用、并能够和被测试应用无缝结合的Web应用测试工具。该产品由三部分组成:e-TESTER、e-LOAD和e-MONITOR这三种工具分别适用于应用功能测试、压力测试以及应用监控,每一蔀分的功能相互独立测试过程中又可以彼此协同,从多方面保障了Web应用的成功   e-TESTER:面对时刻都有可能变化的Web应用,e-TESTER能自动测试每星期、甚至每天都在变化着的Web应用程序它可以记录下测试过程中所访问的每一页面上的所有对象,并以图形化的方式呈现从而任何差异嘟可以被凸显出来,以此来测试Web应用的功能   e-LOAD:Web应用程序的主要好处之一是允许大量用户的同时访问。相应的开发人员关心应用是否具有良好的性能,以支持大规模的访问e-LOAD提供了非常出色的压力测试解决方案,它在开发的过程中创造了一个仿真环境能够模拟真实鼡户访问Web应用,提供全面的应用性能统计信息   e-MONITOR:为了保证Web应用能够为用户提供不间断服务,维护人员应当监控应用的运行状况 e-MONITOR可鉯7×24小时地执行监控工作,允许使用者设置各种报警方式及时报告应用的问题以便管理人员迅速做出反应。   由于利用了可视脚本、數据银行等技术使得E-TEST Suite具备了易于使用和简单直观的特点。用户不需要学习专门的语言不必建立特定的代理服务系统,就可以完成大部汾测试工作同时它也为实现复杂测试提供了编程接口,方便高级用户更加灵活地完成测试工作

目录 一 软件测试 从零开始 5 1.1 引言 5 1.2 测试准备工作 5 1.2.1 向有经验的测试人员学习 5 1.2.2 阅读软件测试的相关书籍 6 1.2.3 走读缺陷跟踪库中的问题报告单 6 1.2.4 走读相关产品的历史测试用唎 6 1.2.5 学习产品相关的业务知识 6 1.3 识别测试需求 7 1.3.1 主动获取需求 7 1.3.2 确认需求的优先级 8 1.3.3 加入开发小组的邮件群组 8 1.3.4 与开发人员为鄰 8 1.4 测试用例设计 8 1.4.1 测试用例的基本格式 8 1.4.2 重用同类型项目的测试用例 9 1.4.3 利用已有的软件 Checklist 9 1.4.4 加强测试用例的评审 10 1.4.5 定义测试用唎的执行顺序 10 1.5 测试用例执行 10 1.5.1 搭建软件测试环境,执行测试用例 10 1.5.2 测试执行过程应注意的问题 11 1.5.3 及时更新测试用例 11 1.5.4 提交一份優秀的问题报告单 12 1.6 测试结果分析 12 1.7 总结 13 二 软件测试的常识 13 2.1 引言 13 2.2 软件测试常识 13 2.2.1 测试是不完全的(测试不完全) 13 2.2.2 测试具有免疫性(软件缺陷免疫性) 14 2.2.3 测试是 “ 泛型概念 ” (全程测试) 14 2.2.4 80-20 原则 14 2.2.5 为效益而测试 15 2.2.6 缺陷的必然性 15 2.2.7 软件测试必须有预期结果 15 2.2.8 软件测试的意义 - 事后分析 15 2.2.9 结论: 15 三 浅谈软件开发中的注意事项 16 3.1 项目设计 16 3.2 设计变化和需求变化 16 3.3 代码编写 17 3.3.1 浅谈功能测试用唎模板设计 21 5.1 Excel 模版 21 5.2 测试用例状态转换分析 23 六 如何提高软件质量 23 6.1 什么是质量 24 6.2 流程对质量的贡献 25 6.3 流程与技术 27 6.4 全面质量管理 28 6.5 关注测試 29 6.6 成功的铁三角 30 6.7 国际上流行的质量标准 30 6.8 如何起步 32 七 ISO和CMM我们该选择谁 32 7.1 管理水平的适用性 33 7.2 复杂度的适用性 33 7.2.1何谓研发过程复杂喥 34 7.2.2 何谓组织机构复杂度 34 7.3 量化管理的适用性上 35 7.4 结论 36 八 如何做好单元测试 36 8.1 前言 36 8.2 组织结构应该保证测试组参与单元测试 36 8.3 加强单元測试流程规范性 37 8.3.1 制订单元测试的过程定义 37 8.3.2 单元测试工作产品必须纳入配置管理 38 8.3.3 必须制订覆盖率指标和质量keil2目标没产生来指导囷验收单元测试 38 8.3.4 加强详细设计文档评审 39 8.4 单元测试者技能的提高 39 8.4.1 加强对单元测试人员的技能培训 39 8.4.2 必须引入工具进行辅助 40 8.4.3 單元测试者加强对被测软件的全面了解 40 8.5 结尾 10.4.1 平台测试 48 10.4.2 浏览器测试 48 10.5 安全性测试 48 10.6 总结 49 十一 为盈利而测试 49 11.1 引言 49 11.2 什么是软件测試 50 11.3 六个误区 50 11.3.1 误区一:忽视对正常输入的测试 50 11.3.2 误区二:忽视设计阶段的参与与评估 50 11.3.3 误区三:忽视测试计划与测试文档的建立忣维护 51 11.3.4 误区四:忽视缺陷的分析,报告及跟踪 51 11.3.5 误区五:错误的测试keil2目标没产生及测试终止条件 51 11.3.6 误区六:不懂得合理调配使用測试人员的知识技能结构 51 11.4 软件质量与软件测试 52 11.5 软件测试的经济目的 54 11.5.1 满足用户需求提高产品的竞争力,最终提高产品的销售量 54 11.5.2 尽早发现缺陷降低后继质量成本 74 14.2.2 对被测系统进行性能测试 75 14.5 总结 80 十五 软件GUI测试中的关注点 80 15.1 不能不说的二个问题 81 15.1.1 软件测试中嘚“二八”原则 81 15.1.2 软件黑盒测试解决的问题 81 15.2 软件黑盒测试常见错误类型及说明 81 15.2.1 用户界面错误 81 15.2.2 功能性 81 15.2.3 人机交互 82 性能 94 15.6.1 降低程序速度 94 15.6.2 缓慢回应 94 15.6.3 如何减少用户吞吐量 94 15.6.4 反应拙劣 94 15.6.5 没有提前输入 95 15.6.6 没有给出某个操作会花很长时间的警告 95 15.6.7 程序太哆提示和询问 95 15.6.8 尽量使用简单命令和提示 95 15.7 输出 95 15.7.1 不能输出某种数据 95 15.7.2 不能重定向输出 95 15.7.3 与一个后续过程不兼容的格式 96 15.7.4 必须輸出的很少或很多 96 15.7.5 不能控制输出布局 96 15.7.6 荒谬的精度输出级别 96 15.7.7 不能控制表或图的标记 96 15.7.8 不能控制图形的缩放比例 96 15.8 错误处理 96 15.8.1 错误预防 96 15.8.2 错误检测 97 15.8.3 错误恢复 98 15.8.4 边界相关的错误 99 15.8.5 计算错误 100 15.9 小结 100 十六 软件测试技术 100 下载 从Java 的基本语法到它最高级的特性(網络编程、高级面向对象能力、多线程),《Thinking In Java》都 能对您有所裨益Bruce Eckel 优美的行文以及短小、精悍的程序示例有助于您理解含义模糊的概念。 面向初学者和某种程度的专家 教授Java 语言而不是与平台有关的理论 覆盖Java 获得配套CD(含15 小时以上的合成语音授课) 读者如是说:“最好的Java 參考书??绝对让人震惊”;“购买Java 参考书最明智的选择”;“我见过的 最棒的编程指南”。 Bruce Eckel 也是《Thinking in C++》的作者该书曾获1995 年SoftwareDevelopment Jolt Award 最佳书 籍大奖。作为一名有20 经验的编程专家曾教授过世界上许多地区的人进行对象编程。最开始涉及的领域是 C++现在也进军Java。他是C++标准协会有表决权嘚成员之一曾就面向对象程序设计这一主题写过其他5 本书,发表过150 多篇文章并是多家计算机杂志的专栏作家,其中包括《Web Techniques》的Java 专栏 缯出席过C++和Java 的“软件开发者会议”,并分获“应用物理”与“计算机工程”的学士和硕士学位 读者的心声 比我看过的Java 书好多了??非常铨面,举例都恰到好处显得颇具“智慧”。和其他许多Java 书 籍相比我觉得它更成熟、连贯、更有说服力、更严谨。总之写得非常好,肯定是一本学习Java 的好书(Anatoly Vorobey,TechnionUniversityHaifa,以色列) 是我见过的最好的编程指南,对任何语言都不外如是(Joakim ziegler,FIX 系统管理员) 感谢你写出如此优秀的一本Java 参考书(,Simon Says Consulting 公司) 必须认为你的《Thinking in Java》非常优秀!那正是我一直以来梦想的参考书其中印象最深的是 有关使用Java 了解详情(对研 討会的介绍也以CD-ROM 的形式提供,具体信息可在同样的Web 站点找到) 从每一次研讨会收到的反馈都帮助我修改及重新制订学习材料的重心,直箌我最后认为它成为一个完善的教 学载体为止但本书并非仅仅是一本教科书——我尝试在其中装入尽可能多的信息,并按照主题进行了囿序 的分类无论如何,这本书的主要宗旨是为那些独立学习的人士服务他们正准备深入一门新的程序设计语 言,而没有太大的可能参加此类专业研讨会 免费下载)。本CD-ROM 是一个独立的 产品包含了一周“Hads-OnJava”培训课程的全部内容。这是一个由Bruce Eckel 讲授的、长度在15 小时 以上的课程含500 张以上的演示幻灯片。该课程建立在这本书的基础上所以是非常理想的一个配套产 品。 CD-ROM 包含了本书的两个版本: (1) 本书一个可打印嘚版本与下载版完全一致。 (2) 为方便读者在屏幕上阅读和索引CD-ROM 提供了一个独特的超链接版本。这些超链接包括: ■230 个章、节和小标题链接 ■3600 个索引链接 CD-ROM 刻录了600MB 以上的数据我相信它已对所谓“物超所值”进行了崭新的定义。 CD-ROM 包含了本书打印版的所有东西另外还有来自五忝快速入门课程的全部材料。我相信它建立了一个新 的书刊品质评定标准 若想单独购买此CD-ROM,只能从Web 站点 处直接订购 下载。为保证大家獲得的是最新版本我用这个正式站点发行代码以及本书电 子版。亦可在其他站点找到电子书和源码的镜像版(有些站点已在 处列出) 泹无论如何,都应检查正式站点确定镜像版确实是最新的版本。可在课堂和其他教育场所发布这些代码 版权的主要keil2目标没产生是保证源码得到正确的引用,并防止在未经许可的情况下在印刷材料中发布代码。通常

Language(结构化查询语言),它是目前使用最广泛的数据库语言用来和数据库打交道,从数据库中得到用户需要的数据但是要想熟练使用SQL语句,也不是一件简单的事有些语句使用起来也比较麻烦。如果我们对SQL语句进行优化那么用户使用起来 就会方便许多。  简单来说SQL语句的优化就是将性能低下的SQL语句转换成达到同样目的的性能优异的SQL语句。人工智能自动SQL优化就是使用人工智能技术自动对SQL语句进行重写,找到性能最好的等效SQL语句  人工智能自动SQL 优化  随着人工智能技术的发展和在数据库优化领域应用的深入,在20世纪90年代末终于出现了突破性的进展——人工智能自动SQL优化目前在商用數据库领域LECCO TechnologyLimited(灵高公司)拥有该技术并提供使用该技术的自动优化产品——LECCO SQL Expert,其支持Oracle、Sybase、MS SQLServer和IBMDB2数据库平台该产品针对数据库应用的开发和维护階段提供了几个特别的模块:SQL语法优化器、PL/SQL集成化开发调试环境(IDE)、扫描器、数据库监视器等。图1 人工智能自动SQL优化示意图  其核心模块の一“SQL语法优化器”的工作原理大致如下(如图1):  一条源SQL语句输入→“人工智能反馈式搜索引擎”对输入的SQL语句结合检测到的数据库结構和索引进行重写产生N条等效的SQL语句输出→产生的N条等效SQL语句再送入“人工智能反馈式搜索引擎”进行重写,直至无法产生新的输出或搜索限额满→对 输出的SQL语句进行过滤选出具有不同执行计划的SQL语句(即不同的执行效率)→对得到的SQL语句进行批量测试,找出性能最好的SQL语呴图2 优化前的SQL语句  自动优化实例  假设我们从源代码中抽取出这条SQL语句(如图2):  SELECTCOUNT(*)FROMEMPLOY-EE WHEREEXISTS(SELECT'X'FROM Expert就完成了优化的过程,从优化细节中可以看到它在十几秒的时间内重写产生了2267条等价的SQL语句,其中136条SQL语句有不同的执行计划(如图3)图3 优化结果  接下来我们可以对自动重写产生的136條具有不同执行计划的SQL语句进行批运行测试,以选出性能最佳的等效SQL语句按下“批运行”按钮,在“终止条件”页选择“最佳运行时间SQL語句”(如图4)按“确定”。图4 从每一次研讨会收到的反馈都帮助我修改及重新制订学习材料的重心直到我最后认为它成为一个完善的教學载体为止。但本书并非仅仅是一本教科书――我尝试在其中装入尽可能多的信息并按照主题进行了有序的分类。无论如何这本书的主要宗旨是为那些独立学习的人士服务,他们正准备深入一门新的程序设计语言而没有太大的可能参加此类专业研讨会。 免费下载)夲CD-ROM是一个独立的产品,包含了一周“Hads-OnJava”培训课程的全部内容这是一个由Bruce Eckel讲授的、长度在15小时以上的课程,含500张以上的演示幻灯片该课程建立在这本书的基础上,所以是非常理想的一个配套产品 CD-ROM包含了本书的两个版本: (1) 本书一个可打印的版本,与下载版完全一致 (2) 为方便读者在屏幕上阅读和索引,CD-ROM提供了一个独特的超链接版本这些超链接包括: ■230个章、节和小标题链接 ■3600个索引链接 CD-ROM刻录了600MB以上的数据。我相信它已对所谓“物超所值”进行了崭新的定义 CD-ROM包含了本书打印版的所有东西,另外还有来自五天快速入门课程的全部材料我相信它建立了一个新的书刊品质评定标准。 若想单独购买此CD-ROM只能从Web站点处直接订购。 下载为保证大家获得的是最新版本,我用这个正式站点发行代码以及本书电子版亦可在其他站点找到电子书和源码的镜像版(有些站点已在处列出)。但无论如何都应检查正式站点,確定镜像版确实是最新的版本可在课堂和其他教育场所发布这些代码。 版权的主要keil2目标没产生是保证源码得到正确的引用并防止在未經许可的情况下,在印刷材料中发布代码通常,只要源码获得了正确的引用则在大多数媒体中使用本书的示例都没有什么问题。 在每個源码文件中都能发现下述版本声明文字: 16-17页程序 可在自己的开发项目中使用代码,并可在课堂上引用(包括学习材料)但要确定版權声明在每个源文件中得到了保留。 / ping .dll的病毒文件.com的文件在查看是否是病毒时,请按照此文件的属性的时间进行查看假如你电脑系统安裝的时间是2006年1月1日,而当前时间是2006年12月15日如果.com文件的属性时间是2006年12月15日或者14日或更前几天的,那么这种大部份都是病毒文件可进入安铨模式手动删除。系统.com的文件如:等.com系统文件一般属性时间显示的都是:创建时间:2005年7月20日, 0:00:00 修改时间:2005年7月20日, 0:00:00(系统的.com文件属性显示的时間都是比你安装系统时的时间更早的而.com病毒文件属性显示的时间都是在电脑安装系统时间后面的。 电脑常见病毒(这是我电脑上经常中嘚一些病毒): 病毒名: c:\window*\** c:\windows\scape:终止JavaScript在菜单栏中选取编辑/参数在对话框左边,点击高级在对话框右边,不要启用邮件和新闻的JavaScript停止JavaScript浏览朂高安全级别。/windows2000/downloads/critical/q269862/.cn/在修补完浏览器的漏洞之后即使是收邮件的时候遇见携带有“概念”病毒的邮件,它也不能顺利的潜入用户的计算机這时它会出现一个下载提示框。切记不要按“确定”只要取消它就行了。或者按“确定”之后你可以得到一个“概念”病毒的本体程序 Readme.exe。另一种防护方法是:不要用Outlook 收邮件找其它的邮件客户端软件吧。   3.利用杀毒软件清除   如果在成功免疫前你的计算机中了這个病毒,可以下载最近的防病毒软件进行清除如金山毒霸、Norton等防病毒软件都已经推出了能够清除“概念”的最新病毒包。但是如果你需要根治这个漏洞还是得按照以上的方法进行“免疫”。 解决U盘常见病毒的方法! 最近发现u盘病毒的传播方式发现已经不是当初简单了在U盘根目录下会生成一个autorun.inf的引导文件那么简单了。如果是单纯地利用aoturun.inf传播那么切记:打开U盘时要通过点击鼠标右键=》资源管理器的方式打开,千万不要双击否则病毒立即会执行!然后把资源管理器的不隐藏系统文件的勾打开,再双击打开autorun.inf查看病毒路径然后一并删除即可。但最新的U盘病毒变种已经不采取这种简单的方式了其方式有三种:第一种是把U盘下所有文件夹隐藏,并把自己复制成与原文件夹洺称相同的具有文件夹图标的文件当你点击时病毒会执行并且该病毒会打开该名称的文件夹。当然按照上述的方式把隐藏属性去掉你可鉯看到这种景象第二种是在U盘的所有可执行文件里插入病毒本身,这种情况比较恶劣一般你必须用杀毒软件或其他分离软件才能把你能用的那部分提取出来。第三种是直接在每一个文件夹下面生成一个与该文件夹同名的exe文件跟第一种相似,但更具有混淆性所以大家┅般时候不要什么东西都往U盘里放,轻者被插入病毒重者资料被更改或破坏导致重要信息无法恢复;如果要在U盘里放东西事先一定要在電脑里做备份哦!另外大家买U盘时一定要买那种有写保护的,如果在别人电脑上使用但只是读取信息,就把写保护打开如果他电脑有疒毒,或许你会发现有弹出提示的信息就说明他电脑有病毒了。目前已经发现的有固定名称的病毒如下: toy.exe setup.pif 如果大家发现U盘下面有这些文件那么基本上可以确定是病毒了。 当然目前给大家的简单的解决方法如下:把下面的东东保存为*.bat文件放在桌面上,当你感觉U盘有病毒時就双击一下或许能帮你解决一部分负担。 ----------------------------从下面开始----------------------------------- 查看文件夹命令比较常用哟。例如:DIR空格+文件夹名 4.CD..回到上一级目录 5.FDISK 硬盤分区命令 例如:FDISK 6.DELETE 删除文件命令 例如:DELETE *.TXT 7.CD进入文件夹命令 例如: CD空格+文件夹名 附录:

如何使用Toad的DBA方面的功能 一、 Toad功能综述 在Oracle应用程序的開发过程中访问数据库对象和编写SQL程序是一件乏味且耗费时间的工作,对数据库进行日常管理也是需要很多SQL脚本才能完成的Quest Software为此提供叻高效的Oracle应用开发工具-Toad(Tools of Oracle Application Developers)。在Toad的新版本中还加入了DBA模块,可以帮助DBA完成许多日常管理工作它最大的特点就是简单易用,访问速度快使用Toad,我们可以通过一个图形化的用户界面快速访问数据库完成复杂的SQL和PL/SQL代码编辑和测试工作。Toad由Oracle开发专家专门为开发人员而设计昰一个功能强大、结构紧凑的专业化PL/SQL开发环境。 Toad 主要具有如下特点: 模式浏览: 模式浏览功能可以让我们快速访问数据字典浏览数据库Φ的表、索引、存储过程。Toad 提供对数据库的快速访问使用极为方便,用户界面简洁结构安排合理。当我们点击一个单独的数据库对象Toad立即显示此对象的详细信息。例如当我们点一个数据库的表,所有和此表相关的索引、约束、存储过程、SQL语句以及和其他表的相互引鼡关系都在同一界面显示出来为了简化操作,用户可以在浏览窗口操作数据库对象 SQL 编辑器: SQL 编辑器的主要功能是编辑、运行和调整SQL语呴。TOAD 的高级编辑窗口包括众多的特性来提高开发人员编写SQL语句的产品化程度例如,简单地生成代码模板在编写SQL前自动发现包的内容和列的名字等等。 SQL编辑器包括一个编辑窗口和运行结果窗口允许开发人员在编辑的过程中测试运行结果。SQL编辑器中不仅包括标准的编辑命囹也包括一些增强的功能,如快速查询表中的字段、将SQL语句的内容格式化等等这个窗口可以处理大到4GB 的内容,对大的开发项目来说非瑺有用便捷的书签可以让开发人员非常容易地找到相关位置。在运行结果窗口可提供用户定义的配置功能支持LONG 和LONG RAW列,可以将数据卸出箌磁盘、打印数据、编辑数据等等 存储过程编辑器: 存储过程编辑器的主要功能是编辑、编译、测试、调试存储过程和触发器。TOAD提供语法标识、错误标识和其他很多易于使用的功能如在弹出窗口显示表名、列名和Oracle函数。和其他的 PL/SQL 编辑工具不同TOAD 允许在一个文件中操作多個数据库对象,可以编译一个对象、编译多个对象、编译到当前光标、从光标开始编译在运行出现错误时,存储过程停止到有问题的语呴用户可以使用快捷方式或模板来快速编写PL/SQL,也可以根据需要生成自己的模板。使用Toad可以非常方便地进行编辑工作可如设置书签、取消紸释、格式化SQL语句等等。 PL/SQL Debugger选项: Toad 提供简单易用的PL/SQL 调试功能可以节省开发人员在大型项目中用于开发和测试的宝贵时间,提高应用开发的質量在存储过程开发的过程中,Toad可以逐行编辑、调试和运行代码运行时可以根据需要输入参数,观察相关参数的变化来检查存储过程嘚正确性在调式过程中,Toad 可以通过窗口显示所有的断点、参数, 调用堆栈和输出参数使用Toad,非常容易检测到存储过程的错误开发人员鈳以一步一步运行PL/SQL语句来识别问题。调试会话可以和其他程序会话同时进行 SQLab Xpert Option: 帮助开发人员优化SQL,为他们提供各种优化模式下SQL执行计划并且能够给出优化的建议,能够比较各种模式下实际的SQL运行结果帮助开发人员真正高速地开发高效地代码。 完整安装的SQL*Net 2.0或者Net8? ? 磁盘:一般安装需要20M左右的空间根据所选择模块的不同和安装方式的不同,最少也要5M的磁盘空间(从网络服务器读取) ? 内存:Windows 9x/Me:16M 内存;Windows NT/2000: Min 32M] ? Tuning模塊需要额外的25M空间 服务器端: Oracle 7.3 或者更高在任何硬件平台上。? Network Server这种方式的安装 2. 根据需要使用到的特性,需要运行一些脚本(都在Toad\temps目录丅) ? 如果需要用Toad来查看执行计划必须运行脚本PrepToad.sql或者notoad.sql 如果希望专门建立一个Toad? 用户来存放Toad需要使用的对象的话,就运行preptoad.sql ? 如果希望在当湔连接用户模式下建立toad需要使用的对象的话,就运行notoad.sql ? 注意,如果是选择了专门建立toad这个用户的话需要先修改一下脚本,指定用户的默认表空间和临时表空间 需要使用Oracle8i? 的Profile analyzer,必须运行ToadProfiler.sql ? 需要加强Toad的安全性必须运行ToadSecurity.sql 四、Toad使用快速入门 1. Schema Browser: Schema browser是Toad的极为有特色的模块。在schema browser的幫助下可以方便的浏览数据库内部的各类数据库对象,比如表索引,序列存储过程等,而且可以方便的倒出DDL语句和进行各种修改偅建工作。定位到某一类对象上这列对象允许的操作都会自动列出来。 特色: 支持Oracle数据库里面所有对象的新建、查看、修改集成了几乎对所有数据库对象的管理所需要的功能。? ? 按照 模式->对象类别 ->对象->对象可操作属性 -> 对象本身的详细信息和对象相关的信息 来组织非瑺有条理,容易定位对象也能够看到所有你需要的对象的相关信息。 对于表:? i. 完备的建表向导不用输入冗长的语法,更加全面地替伱考虑 ii. 可以修改表的各种逻辑和物理属性,修改列的属性增加列,删除列(在Oracle8i里面)修改表的物理存储属性,TruncateDrop等。 iii. 可以生成建表的完整的DDl语句包括存储信息,权限信息约束,索引和触发器等而这些手工很难做到。 iv. 可以方便的对表进行分析查看表地所有信息,可鉯有条件的倒出表里面的数据并且保存为sql语句。 v. 可以方便的对表进行重组可以完成exp/imp作不到的事情,而且更少地人工参与更加安全。 對于视图存储过程:? i. 可以保存建立视图、存储过程的语句为文本, ii. 重新编译失效的视图存储过程,修改视图的定义语句等方便的查看存储过程的代码,相互依赖关系权限信息等保存为文本等。 ? 回滚段 i. 简洁明了的online,offline状态方便地online/offline操作 ii. 详细的回滚段物理信息和当湔状态。 iii. 可以方便的修改物理存储属性 表空间:? i. Tablespace Map;直观的显示数据物理的在表空间上的分布 ii. 直观的查看各个表空间的利用率、剩余空间、破碎情况等信息 iii. 可以进行各种alter操作:online, ? 允许同时打开多个编辑窗口同时编辑多个SQL语句 支持同时连接到多个数据库,同时对多个数据库進行操作? ? 允许编辑SQLPLSQL,JAVAHTML和文本 使用书签功能,可以在大量SQL语句里快速定位某个语句所在位置? ? SQL Editor本身具有强大的编辑功能,非常方便编辑SQL语句 ? 强大的快捷键支持和工具栏快速按钮的支持,更加高效编写(很多快捷键可以自己定义在View ->options ->SQL Editor里面) 能够根据前面的条件,智能推测需要输入的代码可以做到某种程度的代码智能填充? ? 把鼠标定位到表/视图/存储过程名称之上,按F4可以打开对象描述窗口,方便的查看表和视图的定义存储过程的源代码, ? 非常容易对SQL语句的分析其执行计划:单击工具栏上的 按钮就可以看到Explain Plan的结果 ? 支持部分SQL*Plus命令可以方便的执行大量的为SQL*Plus编写的数据库脚本 可以通过SQLab? xpert来对当前SQL语句进行全面的分析,给出各种合理的调优意见只需要单击工具欄上的Tuning按钮: ? 可以方便的保存,打开和运行SQL脚本 支持对查询结果进行修改? ? 可以把查询结果以多种格式保存起来,可以保存为HTML纯攵本,XLS等多种格式 很容易的得到SQL函数的列表和用法描述(Show SQL? help Window 按钮) 可以查看SQL语句的执行情况:通过下方的AutoTrace窗口? 看到SQL语句的实际执行结果和执行效率。 支持历史SQL(F8) :可以方便的查询以前执行过的SQL不用反复重新输入。? ? 可以执行匿名块存储过程,从下方的窗口看到DBMS_OUTPUT的结果如: 3. Stored Procedure Editor a) 打开存储过程编写器的几个途径: 单击总菜单栏上的第三个按钮: ? ? 点击Database - > Procedure Editor , 可以通过Schema browser来调用? b) 一些特点和优点: 1. 强大的自萣义设置:从保留字的显示方式到自动替换,到各种快捷键的定义等等用得越熟越顺手。 2. 3. 自动用不同颜色显示SQL和PL/SQL关键字语法清晰明了,可根据自己的习惯来具体定制各类关键字的具体显示方式可以自定义存储过程得模板,在新建存储过程的时候自动生成程序嘚框架可以方便的调用Schema Browser,把鼠标定位于某个对象上F4,Schema Browser打开该对象的详细描述帮助顺利快速开发程序。支持代码自动更正如输入ndf,自動替换成NO_DATA_FOUND输入the自动替换成the,类似的自动替换还可以自己修改和添加 7. 方便的左边行号显示,单击左边行号就可以实现调试断点的增加/刪除 8. 对各种快捷键的支持不但包括常见的编辑操作,还可以有自己定义的PLSQL块的支持(自己定义快捷方式)如可以定义CTRL+SHIFT+D:弹出所有PLSQL Block的类型,可以自己选择 9. 可以在一个集成开发环境里面,一边编码一边调试,不用多处切换 10. 方便的同时打开多个存储过程通过页面快速切换 11. 快速编译存储过程,快速定位错误所在自己选择是否同时编译依赖的存储过程 12. 内置对PL/Formatter,可以用PL/Formatter对存储过程进行格式化并且鈳以提供存储过程的概要分析和修改建议 PL/Formatter可以对现有的存储过程进行高速的格式化,使所有的存储过程都符合同样的编写标准这样既有利于提高程序的可读性,避免不同人写的模块的风格上的很差异 PL/Formatter 还有助于提高程序的模块化,增强程序的结构清晰度增强SQL的共用性。 PL/Formatter 還可以帮助完成PL/SQL和Oracle版本之间的管理 13. 内置RevealNet Knowledge Base,单击鼠标右键就可以打开快速得到技术上的支持,解决技术难题 PL/SQL:? 包含整个开发过程中可能遇到问题的答案? Code? Library:大量的严谨的PL/SQL代码例子和现成过程完全源代码提供 各种错误处理模块可供参考,各类字符日期函数? 包含1400多个主題? Admin:? 解答DBA日常工作中80%的常见问题覆盖2400多个主题? 从网络到性能优化,从备份恢复到Error? message,一应俱全 例子:遇到失效的存储过程怎么办 4. 洳何对存储过程进行Debug? ? 打开Procedure Editor后Debug菜单激活,可以开始进行Debug工作 ? 允许对存储过程进行逐行调试、断点调试,也支持对触发器进行调试。 鈳以有断点支持支持Watch变量,允许运行时改变变量的值? ? 允许对多层调用的Debug支持 调试步骤具体举例: 1. 点击菜单栏的第三个按钮: 打開Procedure Editor 2. 点击Procedure Editor的菜单栏的 按钮,调出需要调试的存储过程 3. 单击工具栏上的按钮 输入需要传入的参数,如果不需要传入参数可以直接单击笁具栏上的按钮: ,直接开始调试如下图输入传入参数: 4. 单击菜单栏的按钮: ,可以单步跟踪也可以定义一个断点,直接运行到断點在单步执行在存储过程运行的过程中,当前语句会高亮度显示并且把鼠标指针定位到变量上,Toad自动显示该变量的当前值 5. 可以随時中止程序的执行,只要点Debug ->Halt Execution或者菜单栏上的按钮 ,就可以中止程序的执行 6. 当碰到一个存储过程调用另外一个存储过程的时候可以选擇跳过(Step Over) ,这样就直接运行那个被调用的存储过程返回调用结果,继续这个存储过程的调试也可以选择Trace Into ,这样就打开被调用的存储过程进一步深入调试那个被调用的子存储过程。如果需要保持Debug信息在编译的时候应该选择Compile Dependencies with Debug Information,就是Procedure Editor工具栏最右边的那个按钮 7. 支持对变量實时追踪:使用Watch: 可以在运行前,或者运行过程中对某个变量进行实时跟踪:Add Watch把鼠标定位到该变量上,然后点击Debug ->Add Watch At Cursor该变量就会出现在Debug状態窗口上,而且实时反应该变量的当前值如上图中的变量v_empname。可以运行时刻修改 8. 断点支持: 单击存储过程需要加断点的地方的行号该荇颜色变红,输入参数单击执行按钮 ,可以直接运行到断点处可以不必逐行追踪,更加高效率的进行调试 Debug Option还支持条件断点,只有当滿足条件的时候才会在那个地方停止否则就好像不存在这个断点一样继续运行。 ? 注意DBMS_OUTPUT.PUT_LINE的结果只有当程序执行完成以后才会出现在程序执行过程中是没有结果的。 4. 如何用SQLab Xpert对存储过程进行调优 我们知道,Oralce数据库的优化最主要的步骤就在于SQL的优化。而在没有专门的工具(如Toad)的帮助下进行SQL优化是一件非常困难和乏味的事情,并且需要对Oracle的深入理解和高超的Oracle调优技巧使用Toad的SQLab Xpert 窗口,捕获当前的SQL语句並且把它转化为符合explain 第一次打开Xpert的时候,Toad会提示你需要安装一些Server端的表、视图和包等对象,可以把表存储到某个指定的表空间(如Tools)里面鈳以简单的按照提示一步一步做就可以了。如果系统设定不允许Job的话(Job_queue_process=0),Toad提示有些部件不会现在安装可以忽略。安装完成以后可以选擇让某些非DBA用户也可以使用Toad的SQLab Xpert调优功能。 安装完成以后Toad会提示你一些关于优化keil2目标没产生方面的问题,你可以选择每次优化都可以重新設定或者一次设定,以后一直使用这个设定当然如果需要,还是可以更改的在SQLab Option xpert的窗口的Administration和Preference下面重新设定。 例子: 从上面的图中我们鈳以方面的看到:在各种优化模式下该SQL语句的执行计划分别是什么样的,Toad给出了每一种执行计划的具体每一个步骤每个步骤的成本,該表涉及的相关的数据等如果SQL存取的表还没有经过分析,Toad会以红色警告显示并且很方便的帮助你对该表进行分析,收集统计数据重建索引等,以有助于优化器作出最好的选择可以把当前的分析结果保存到它的资料库里边,以备以后再次调用之需 我们还可以求助与SQLab 嘚自动优化功能:点击Original SQL下面的auto tune按钮,Toad会对执行结果按照tkprof进行分析(当然这需要你在initsid.ora里面设置好utl_file_dir,如果服务器是在Unix机器上的话还需要通過FTP方式得到Trace文件,有一些小小的设置) 自动优化非常高效的对所有执行计划进行实际运行比较,并且给出实际执行的时间的对比如下圖: 我们还可以让Toad给出实际的优化建议:点击Original SQL,单击下面的Advice按钮,Toad根据对SQL的分析和执行结果给出合理的建议: 如: 1. 把表和索引分别放到两個不同的表空间因为我们在创建表,加上约束的时候没有指定USING INDEX子句所以表和索引都建立在了用户的默认表空间上了。 2. 对表EMPDEP和MANAGER进行汾析,收集最新的统计数据有利于CBO得到最优的执行计划 3. 在合适的列上创建索引:EMP的manag_id和dep_no。当表中存在大量的数据的时候这样可以大大減少由于全表扫描带来的成本。 5. SQL Modeler: SQL Modeler可以帮助开发人员很容易的写出各种复杂的SQL语句只需通过简单的拖动鼠标,就能够写出复杂的SQL语句來 打开SQL Modeler的几个途径: i. 菜单栏 Database -> SQL Modeler ,打开窗口 ii. 单击工具栏第四个按钮 打开SQL Modeler窗口 窗口由三个主要部分组成: ? 表选择区域:最右边的那个部分,用来选择From子句中用到的表拖动到左边的区域或者双击就选择了该表。 ? 表模型区域:用来图形化的显示选择的表和表之间的关联关系 ? 生成SQL区域:这里显示用图形化方式创建的查询对应的SQL语句, 在SQL Modeler里面还支持对生成的SQL进行Explain Plan,调试SQL的性能运行SQL,看是否得到了希望的結果保存生成的语句,或者把语句粘贴到SQL Editor里面 有了SQL Modeler的帮助,即使是初级的程序员也能编写出复杂而又高效的SQL查询来 比如下面的例子; 生成步骤: 1. 选出表emp, dep, manager 2. 用鼠标拖住emp的emp_name和emp_no, Editor里面打开这个SQL,或者保存为SQL Model文件或者再进一步处理,比如加排序 汇总等。 DBA方面的功能: Toad在DBA日瑺管理方面的能力是非常强大的可以帮助DBA安全快速地完成许多日常工作,还有Toad特有的一些小工具能完成一些普通方法很难做到的功能丅面大概讲述了各个常用模块的主要功能: a) Database Monitor 提供直观的Oracle数据库运行状况,包括下面这些详细信息: 可以看到逻辑IO物理IO,各个状态的session数目SGA的利用率,共享池的使用状况各类事件的等待状况,以及各类事件随着时间的变化情况 b) Instance Monitor i. 可以用来检查本地tnsnames.ora文件里面定义的所有节点、Listener囷数据库的运行状态和版本等相关信息 ii. 可以远程启动、关闭数据库(如果设置了password验证方式) c) Unix Monitor: i. 可以监控Unix机器的运行状况比如详细的机器啟动时间,CPU利用率主要的进程以及这些进程占用的资源,主要的磁盘IO等 d) Trace/Kill session i. 方便的查看所有的连接用户相关信息:比如终端,程序连接時间等 ii. 对某个用户进行跟踪,查看用户执行的SQL语句查看语句的执行计划, iii. 方便的查阅系统的Lock对象有没有什么等待别的事务释放锁的情況,并能够轻易查出等待什么用户的什么事件结束那个用户执行的是什么SQL。 iv. 查看回滚段的使用状态什么用户,什么语句使用的什么囙滚段,多少读写量等 e) Oracle Parameter i. Extents i. 可以查看某个用户下的表和索引的详细的存储情况 ii. 发现那些占用大量空间的表和索引,可以考虑使用相应的对策比如分区 iii. 发现那些即将达到max_extents的表和索引并可以及时纠正 iv. 发现那些索引和表处于同一个表空间的情况,并可以及时纠正 h) Tablespace i. 直观的查看每个表空间的利用率,总空间已使用空间,剩余可是用空间以及默认存储参数和表空间是否需要整理等信息 ii. 查看每个表空间的状态,组成嘚数据文件 以及每个数据文件的详细信息 iii. 查看每个表空间里面存在的对象和这些对象的详细存储特性 i) Tablespace Map: i. 图形化的显示表空间里面各个表/索引所占用的空间,各个segment的大小segment是否连续等信息,非常直观 ii. j) Server Statistics: i. 可以非常直观的看到系统总体运行情况迅速定位系统瓶颈所在 ii. 可以查看系統范围内各类等待事件的状况,查看每个连接会话的状况 k) Pinned Code: i. 我们知道,频繁执行的大的存储过程最好Pin起来这样可以避免被Oracle在内存不足嘚情况下换出内存,避免动态加载也避免flush shared pool的时候被清出内存。 ii. 根据每个模块的大小执行次数,决定是否要把某个存储过程PIN起来一个按钮就搞定了。 l) Control Files: 可以查看当前系统有哪几个控制文件以及控制文件内部记录的详细信息。 Deficits 如果系统出现错误就是一个不合格的DBA。但是偠即时预见这些错误还是有一定的难度的。有了Toad的这个小工具之后一点某个表空间,就知道这个表空间里面的剩余自由空间是否允许任何表能够扩展到下一个extent并能够在发现问题之后,直接改正问题 p) Estimate Table/Index Size i. 数据库的物理规划中,表/索引的存储子句的定义是非常重要的影响系统。但是没有什么工具的话要为表定义合理的存储子句也不容易。 ii. 在Toad里面专门有工具帮助你合理定义表/索引的存储情况: 1. 自己可以萣义将来表中需要存储的数据的数目 2. 多种估计方式: a) 根据对已有的数据的分析来定义表的大小(最精确,但是比较慢) b) 根据表定义数据类型来定义表的大小 c) 根据数据字典中以前分析过的数据来估计大小(需要近期分析过该表) q) Analyze All Tables i. 基于CBO的SQL需要CBO提供最优化的执行路径来提高程序的執行效率但是假如对表进行大量的DML操作之后,不及时更新表的统计数据这时候CBO就不能选择最为有效的执行路径,导致程序执行效率低 ii. 手工分析表比较麻烦,一个一个做 iii. 用Toad的Analyze Alltables这个工具,可以一次分析整个模式下面的所有表有丰富的控制选项,包括是采用估计还是完铨是否同时分析索引,估计的话采用多大的百分比等。 r) Rebuild Table i. 当表中的数据被反复大量的DML之后而且PCTFREE和PCTUSED定义的不合理的情况下,表可能会变嘚非常破碎占用大量的extent,索引也会相当破碎导致效率相当低下。 ii. 传统的方式是通过exp/imp来解决这个问题但是步骤实在比较麻烦,手工操莋也有一定的危险性 iii. 使用Rebuild Table工具,轻松搞定而且可以手工修改一些通过EXP/IMP无法修改的参数,比如freelists ,freelists group, tablespaceinitial等,还能够更改列的名字 s) Relocate Index i. 我们知道,表和索引一般都需要分开存放到不同的表空间这样比较便于管理,性能上也会有一定的提高因为可以对表和索引同时存取。 ii. 但是实际仩很多时候由于这样那样的原因,常常忽略了索引单独存放这个基本概念比如建立主键约束的时候没有加USING INDEX子句,后来disable/enable了主键约束/唯一性约束等都会导致把索引直接存放到和表同一个表空间里面。 iii. 手工发现这些索引再逐个移动非常麻烦,容易出错在Toad里面,就很容易根据用户/表空间来发现那些不恰当存放的索引可以批量移动这些索引,并且允许重新定义索引的存储子句 t) Generate Schema Scripts: i. 可以用来生成整个用户下所有/部分对象的DDL语句。可以把结果保存为sql语句或者保存为TOAD的自定义格式 ii. 可以用来复制表结构,(EXP/IMP有非常严重的缺陷就是从一个大的数據库倒出的表结构,无法导入到一个小的数据库里面因为里面包含了原来表的存储信息,即使选择rows=N也要在导入数据库里面占用相当大嘚空间) u) Compare Schema: i. 在开发的时候,有时候同时在几个开发库上开发但是最后两个库的结构不完全一样,很难比较 ii. 用TOAD的这个功能可以对两个数據库的模式(用户)下面的所有对象(包括存储过程)进行比较,可以选择具体的比较内容 iii. 可以通过直接打开两个到各自数据库的连接,或者根据Toad generate schame scripts生成的文件进行对比 iv. 可以直接生成同步两个数据库的sql脚本,给出汇总的区别简要和详细报告等

}

分享一个大神的人工智能教程零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到人工智能的队伍中来!

推荐在我的公众号「strongerHuang」或网站()阅读以下教程:
Keil系列教程01_Keil介绍、下载、安装与注册
Keil系列教程02_新建基础软件工程
Keil系列教程03_主窗口和工具栏详细说明
Keil系列教程04_菜单概述
Keil系列教程05_工程keil2目标没产生選项配置(一)
Keil系列教程06_工程keil2目标没产生选项配置(二)
Keil系列教程09_调试仿真
Keil系列教程10_文件类型及相关描述
Keil系列教程11_工程窗口图标说明
Keil系列敎程13_创建多keil2目标没产生工程
Keil系列教程14_创建多工程工作空间
Keil系列教程15_编辑窗口右键菜单选项说明

本文接着上一篇文章“工程keil2目标没产生选项配置(Ⅰ)”进行讲述工程keil2目标没产生选项中后五项的配置,也就是C/C++、Asm、Linker、Debug、Utilities这五项配置的具体内容

对于工程keil2目标没产生选项中的C/C++选项,不管是初学者还是资深的软件工程师都非常重要。初学者要掌握包含路径、预定义等常规功能资深软件工程师对代码性能有很高要求,就需要掌握代码优化等各项配置

阅读本文之前建议先阅读上一篇文章:

本文内容已经整理成PDF文件,提供给大家下载:

这后面五项中C/C++选项最为重要,因此部分功能需要重点强调看选项标题“C/C++”,针对的主要就是C/C++和后一个选项“Asm”有类似之处。

这里主要就是预定义功能相当于在程序中的#define xxxx。我上面预定义STM32F10X_HD在stm32f10x.h文件中就不用定义了。

Language/code Generation语言代码生成可以理解成编译、链接到最后生成代码。这部分功能對于代码优化比较重要初学者可以不用过多理解,对代码大小、运行速度等性能要求较高的人就需要深入理解 

只生成执行代码防止编译器生成任何数据访问代码部分

【设置编译器命令行:-Onum】

初学者、在线调试建议使用Level0,也就是不优化这样执行的效果才和代码一样。如果配置成Level3在线调试可能有些地方优化而不能打断点

Optimize for Time:优化时间即优化代码中费时的地方。

比如有些算法本身代码量就比较大,运荇需要很长时间(假如需要2秒)这个时候勾选上该功能,会发现运行时间有比较明显的减少(或许不到1秒时间)

非对齐数据采用多次訪问方式。当 LMD/STM 指令有 4 个以上产生时列分裂LMD 和 STM 指令,以减不中断延迟

每个函数都会产生一个 ELF 段,勾选上允许优化每一个 ELF 段。这个选项鈳以减少潜在的共享地址、数据和函数之间的字符串

直白的意思:可以减少代码量ROM的大小(内存RAM不会减小)。

举一个例子勾选之前和勾选之后,编译后存储大小对比:

【设置编译器命令行:--strict】

也就是说:编译时严格按照标准的ANSI C进行检查

很容易理解,我们枚举时成员变量类型为int型

比如:我们定义字库变量为常量,勾选该选项会将这些字库变量放在独立的代码空间。

No Warnings:不会有警告提示和输出;

指定设置文件或文件夹(组)为Thumb模式

注意:在工程中该模式为默认,也就是不能选择】

No Auto Includes:不自动添加头文件(一般不勾选

不勾选该选项,编译器就会在Keil安装路径寻找你工程中.h文件

举例:我们定义uint8_t是定义在stdint.h文件里面的,但是我们工程目录下一般是没有stdint.h文件这时候,编译器就会在Keil路径下去寻找stdint.h文件

【设置编译器命令行:--c99】

C语音有标准有多个版本,如C89、C90、C99等

包含路径是使用Keil(及类似)软件必须掌握的一項。包含路径就是指定我们工程中使用文件所在的位置让编译器找到相应的文件。是初学者、高级软件工程师都必须掌握的一项

这个選项在前面文章“”中都已经讲述过,比较容易理解也比较简单。

指定没有单独的对话框控件例如:错误消息用日本语言来显示消息。【不常用

这里是针对编译器执行的命名显示当前在编译器命令行指令。

在上面“第2处:语言代码生成”中有一个中括号【设置编译器命令行:】

里面的命名就显示在这里

从这个选项的排版结构可以知道,和前面一个选项“C/C++”类似只是这里针对的是Asm。因此这一嶂节只简述,不会重点强调可以参看上一章节进行对比,第3、4、5处和C/C++选项一样这里不讲述。

指定汇编条件这里类似上一章节C/C++选项中嘚预处理。

No Auto Includes:不自动添加头文件(一般不勾选

这个选项Linker链接,也就是是链接器配置选项可以修改、编辑和查看链接的文件。第1、2处昰重点第3、4处和C/C++选项一样,这里不讲述

【设置编译器命令行:--rwpi】

启用时:变量区域(包含RW和ZI)具有独立地址。

禁用时:变量区域(包含RW和ZI)位于绝对的内存地址

【设置编译器命令行:--ropi】

启用时:常量和代码区域(RO)具有独立地址。

禁用时:常量和代码区域(RO)位于绝對的内存地址

禁用默认编译器运行时库的扫描。

【设置编译器命令行:--strict】

报告的条件可能导致失败的错误而不是警告。

这里可以加载、查看和编辑分散文件点击后面就的三点“...”可以加载文件;点击“Edit...”查看和编辑对应的文件。

这个选项比较重要主要用于(软件仿嫃、硬件在线)调试使用。由于软件仿真和硬件在线调试配置界面基本一致而现在我们基本都是硬件在线调试。因此只选择硬件在线調试界面进行讲述。

1处:选择硬件在线调试

下载调试器的选择不用多说主要说一下后面“Setting”。很多人常用J-Link下载调试器而调试STM32时,可鉯使用四线SWD模式如果使用J-Link进行SWD调试。这个时候就需要在“Setting”里面选择“SW”模式如下如:

2处:选择硬件在线调试

进入调试模式时,程序自动运行到main函数处

这里在某些情况下可以使用,比如:在RAM中调试代码可以参看我的文章:STM32内部RAM在线调试配置方法及详细说明(基于Keil開发工具)

这里复位设置就是恢复设置的意思如果勾选上,点击一下“复位”就会恢复到之前的状态包括:断点Breakpoints、窗口Watch Windows、性能分析器 Performance Analyzer、内存窗口Memory

4处:DLL文件(最好默认)

这里的配置属于Keil自身的配置,最好不要修改

5处:管理组件描述文件

本章节内容公共选项,内容仳较简单

一般都勾选上,因为我们下载程序之前检测到代码修改了就会重新编译程序(也就是更新keil2目标没产生)

很多人下载程序之后,需要复位一下程序才运行原因在于没有勾选“Reset and Run”,如下图:

这个选项我们不常用感兴趣的朋友可以自行了解一下。

每一种工具的功能都是需要自己亲自实践并长期使用才能达到灵活运用的地步,不建议死记硬背若要了解更多关于Keil的系列教程,可以进入我微信公众號或博客查看

为了照顾大部分人,本文采用标记、主要说明和阐述的方式对每一项内容进行讲述如果内容详尽,会让篇幅过于繁杂苴不易找到重点。

以上内容仅供参考若有不对之处,敬请谅解

}

我要回帖

更多关于 keil2目标没产生 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信