本章内容所涉及的软件只供教学使用,不得用于商业用途。个人或公司因商业用途导致的法律责任,后果自负。
版本说明:MDK5.15
版本号可从MDK软件的"Help-->About uVision"选项中查询到。
6.1 新建工程
6.1.1 新建本地工程文件夹
为了工程目录更加清晰,我们在本地电脑上新建1个文件夹用于存放整个工程,如命名为"LED",然后在该目录下新建2个文件夹,具体如下:
表格 8 工程目录文件夹清单
存放编译产生的调试信息、hex文件、预览信息、封装库等
图 61 工程文件夹目录
在本地新建好文件夹后,在文件夹下新建一些文件:
表格 9 工程目录文件夹内容清单
6.1.2 新建工程
打开KEIL5,新建一个工程,工程名根据喜好命名,我这里取LED-REG,直接保存在LED文件夹下。
图 62 在KEIL5中新建工程
1. 选择CPU型号
这个根据你开发板使用的CPU具体的型号来选择, M4至尊版选STM32F429IGT型号。如果这里没有出现你想要的CPU型号,或者一个型号都没有,那么肯定是你的KEIL5没有添加device库,KEIL5不像KEIL4那样自带了很多MCU的型号,KEIL5需要自己添加,关于如何添加请参考《如何安装KEIL5》这一章。
图 63 选择具体的CPU型号
2. 在线添加库文件
用寄存器控制STM32时我们不需要在线添加库文件,这里我们点击关掉。
图 64 库文件管理
3. 添加文件
在新建的工程中添加文件,文件从本地建好的工程文件夹下获取,双击组文件夹就会出现添加文件的路径,然后选择文件即可。
图 65 如何在工程中添加文件
4. 配置魔术棒选项卡
这一步的配置工作很重要,很多人串口用不了printf函数,编译有问题,下载有问题,都是这个步骤的配置出了错。
a) Target中选中微库" Use MicroLib",为的是在日后编写串口驱动的时候可以使用printf函数。而且有些应用中如果用了STM32的浮点运算单元FPU,一定要同时开微库,不然有时会出现各种奇怪的现象。FPU的开关选项在微库配置选项下方的"Use Single Precision"中,默认是开的。
图 66 添加微库
b) Output选项卡中把输出文件夹定位到我们工程目录下的output文件夹,如果想在编译的过程中生成hex文件,那么那Create HEX File选项勾上。
图 67 配置 Output 选项卡
③在Listing选项卡中把输出文件夹定位到我们工程目录下的Listing文件夹。
图 68 配置 Listing 选项卡
5. 下载器配置
这部分的配置最好是在安装好下载器驱动,下载器连接了电脑和开发板,且开发板上电后来配置。
这里面需要根据你使用了什么仿真器来配置,常用的有三种仿真器:JLINK/ARM-OB,ST-LINK,ULINK2,而且这个配置不是配置完一次之后以后就不会改变,当你换了芯片型号,或者其他操作(具体原因不明)都会改变下载器的配置。
①JLINK/ARM-OB配置
要先安装了JLINK驱动之后,该配置才能下载,两者缺一不可。
图 69 JLINK/ARM-OB下载配置
②ST-LINK配置
要先安装了ST-LINK驱动之后,该配置才能下载,两者缺一不可。
图 610 ST-LINK下载配置
③ULINK2配置
要先安装了ULINK2驱动之后,该配置才能下载,两者缺一不可。要注意的是设置成ULINK2,而不是ULINK。
图 611 ULINK2下载配置
6. 选择CPU型号
这一步的配置也不是配置一次之后完事,常常会因为各种原因需要重新选择,当你下载的时候,提示说找不到Device的时候,请确保该配置是否正确。有时候下载程序之后,不会自动运行,要手动复位的时候,也回来看看这里的"Reset and Run"配置是否失效。M4至尊版用的STM32的FLASH大小是1M,所以这时选择1M的容量,如果使用的是其他型号的,要根据实际情况选择。
图 612 选择芯片型号
一个新的工程模版新建完毕。
上一篇:第4章 初识STM32—零死角玩转STM32-F429系列
下一篇:第13章 GPIO-位带操作—零死角玩转STM32-F429系列
推荐阅读
史海拾趣
非常抱歉,由于我无法直接获取到Advanced Ceramic X Corporation公司的具体发展细节,因此无法为您直接编写关于该公司发展的五个具体故事。然而,我可以为您提供一种构建这类故事的框架,您可以根据这个框架,结合公司的公开信息,来编写符合要求的故事。
故事框架示例
故事一:技术突破引领市场
Advanced Ceramic X Corporation自成立以来,一直致力于陶瓷材料的研究与开发。某年,公司成功研发出一种具有极高耐高温性能的新型陶瓷材料,这一技术突破使得公司在航空航天领域获得了广泛应用,推动了公司的快速发展。随着技术的不断完善和市场需求的增长,公司逐渐成为了陶瓷材料领域的领军企业。
故事二:国际合作拓宽市场
为了进一步扩大市场份额,Advanced Ceramic X Corporation积极寻求国际合作机会。公司与欧洲一家知名陶瓷材料公司签订了战略合作协议,共同开发新型陶瓷产品。这一合作不仅提高了公司的技术水平,还拓宽了公司的国际市场,使得公司的产品在全球范围内得到了广泛应用。
故事三:环保理念驱动创新
在环保意识日益增强的背景下,Advanced Ceramic X Corporation积极响应国家环保政策,将环保理念融入产品研发和生产过程中。公司成功研发出一种环保型陶瓷材料,该材料不仅具有优异的性能,而且在生产过程中产生的污染极低。这一创新举措赢得了客户的广泛赞誉,也提升了公司的品牌形象。
故事四:人才培养与团队建设
Advanced Ceramic X Corporation深知人才是企业发展的核心动力。公司注重人才培养和团队建设,通过定期举办技术培训、团队建设活动等方式,提高员工的业务能力和团队协作能力。同时,公司还积极引进国内外优秀人才,为公司的长远发展奠定了坚实的基础。
故事五:社会责任与公益事业
作为一家有社会责任感的企业,Advanced Ceramic X Corporation积极参与公益事业。公司捐资支持教育事业、扶贫济困等公益活动,为社会发展贡献自己的力量。同时,公司还关注员工福利,为员工提供良好的工作环境和福利待遇,增强了员工的归属感和忠诚度。
请注意,上述故事仅为示例,并未涉及Advanced Ceramic X Corporation公司的具体发展情况。您可以根据公司的实际情况和公开信息,结合上述框架来编写符合要求的故事。在编写过程中,请确保只描述事实,避免加入个人主观评价。
随着技术的不断进步,璟德(ACX)的产品线也逐渐拓展,涵盖了滤波器、双工器、三工器、天线及其模组、蓝牙模组、射频前端模组等一系列高频陶瓷元件及模组。这些产品广泛应用于手机、无线网络、蓝牙、GPS、物联网等移动终端设备中,得到了市场的广泛认可。公司的业绩逐年攀升,客户群体也不断扩大。
在国内市场取得一定成绩后,Brite-Led开始将目光投向海外市场。公司制定了一系列市场拓展策略,包括参加国际展会、建立海外销售网络、与当地企业合作等。经过几年的努力,Brite-Led的产品逐渐打入国际市场,赢得了众多海外客户的青睐。同时,公司也在全球范围内建立了多个研发中心和生产基地,以更好地服务全球客户。
Elekon Industries公司,简称Elekon,于XXXX年在某科技园区正式成立。公司由一群富有远见和热情的电子工程师创立,他们共同看到了电子行业的巨大潜力和广阔市场。初创阶段,Elekon主要致力于研发和生产高品质的电子元器件,为电子设备制造商提供可靠的产品。通过不断努力,Elekon凭借优秀的产品质量和卓越的创新能力,逐渐在电子行业中崭露头角。
随着公司规模的扩大,Coil-Q意识到单靠自身的力量难以应对日益激烈的市场竞争。于是,公司积极寻求与其他企业的战略合作,与多家知名电子品牌建立了长期稳定的合作关系。通过共享资源、共同研发,Coil-Q不仅拓展了业务领域,还提高了自身的技术水平和市场竞争力。
2007年9月1日,在南京召开的“2007中国软件产业发展暨企业创新高峰会”上传出信息,今年上半年全国软件产业实现销售收入2601亿元,增长23%,高于电子信息产业18%的增长水平,而其中嵌入式软件增长24%,高于软件产业的增长水平。同时据赛迪顾问研究 ...… 查看全部问答∨ |
|
请各位大侠们帮助,新装的WIN CE 5.0编译出现Invalid parameters passed to Wince.bat问题,怎么解决呀!急死人了,帮帮 小弟刚接触WIN CE ,刚装的WIN CE5.0安装后,新建工程编译出现Invalid parameters passed to Wince.bat问题,而且左边没有 OSDesign View标签.开始安装时因为有文件有2部分,WIN CE文件没有放在同一目录下,之后我将文件移动到了同一目录下,开始以 ...… 查看全部问答∨ |
|
在C-SPY,中设断点时, 总出现: Error[130]:"some breakpoint could not be set", 不论在那条语句上设都设不了。 ???????????????? 比其它51系列或者96系列的仿真器来说,C-SPY 的调试简直就是地狱!!!… 查看全部问答∨ |
本帖最后由 paulhyde 于 2014-9-15 03:48 编辑 ulink2 如何给arm板子供电啊?需要怎么设置啊 请问有人知道吗?求教啊 … 查看全部问答∨ |
关于LM3S8962的I2C读取honeywell传感器实验 honeywell新一代的传感器很多是I2C输出。 手头有两个气体流量传感器,于是想在EK-LM3S8962开发板上测试一下。 程序参考周立功的I2C读取LM75A例程,以及本版面的经验贴:https://bbs.eeworld.com.cn/viewthread.php?tid=231364 honeywell ...… 查看全部问答∨ |
codewarrior 在编译时提示警告信息如下:Warning : C1420: Result of function-call is ignored 哪位大哥告诉我一下这是什么意思,怎么解决? 芯片为MC9S08DZ60 [ 本帖最后由 kwq498901 于 2012-3-31 09:29 编辑 ]… 查看全部问答∨ |