完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
扫一扫,分享给好友
本帖最后由 一只耳朵怪 于 2018-6-20 10:51 编辑
前段时间在CCS中直接导入build中的例程Gpio,编译调试运行正常, 现在我自己新建了一个工程,默认存储路径,带main.c的哪种,然后将例程中源文件code移植到main.c, 编译的时候报错:error#5,soc_AM335x.h头文件打不开。 我估计应该是工程哪个地方设置不对,看了startware中的Creat a CCS5 project章节介绍没找到相关信息, 比对Gpio例程的设置没发现不同, 请问: 我需要将soc_AM335x.h文件Add到自建的工程中么? 如果需要那soc_AM335x.h文件在哪?可Gpio例程并没有Add 谢谢! |
|
相关推荐
14个回答
|
|
请问你用的是CCS3还是CCS5?
|
|
|
|
|
|
|
|
STONE你好,如果你的error只有一个“error#5,soc_AM335x.h头文件打不开”,推荐你可以先到CCS5的安装目录下面去找找这个头文件,然后手动添加上去再编译试试。我手头的CCS5最近崩溃了正在重装,所以暂时还不能帮你查找是否有这个头文件,等装好了我也帮你看看吧。
如果是有很多错误的话,则推荐你好好看看你的后台配置,和例程的后台配置去比较一下,对平台相关的配置理解应该对你也会很有帮助。 |
|
|
|
huangjulan55 发表于 2018-6-20 02:45 非常感谢您的回复! 我正在尝试中,因刚刚接触ccs,十分不熟悉, 所以很多问题还需不断尝试。 |
|
|
|
嗯,不客气~共同学习! 我又看了一下你的原贴,个人非常赞赏你用例程出发去一步一步修改的思路,这个是对的! 正是在一步一步修改、error、思考、理解和解决的过程中非常有利于你对于系统架构和编译链的理解, 但是这个地方因为你是从其他地方拼凑的程序,个人觉得你可以先思考一下简单的来讲有两条思路: 第一,你这里的程序是否需要用到这个头文件,如果不需要注释掉看看程序是否有error; 第二,如果是从原程序原封不动复制粘贴过来的是需要的,建议你去打开用到了soc_AM335x.h的例程,邮件属性,找到位置,然后在检查一下你那边设置的是否有那个路径,或者尝试一下手动添加试试~ |
|
|
|
huangjulan55 发表于 2018-6-20 02:45 新建工程main.c中头文件有4个如下: #include "soc_AM335x.h" 、#include "beaglebone.h" 、#include "gpio_v2.h" 、#include "interrupt.h" 最早报错是soc头文件无法打开,我将soc的头文件Add到工程中,然后编译, #include soc.h这行编译过了,但对"beaglebone.h"报相同错误。 我就又把beaglebone.h在Add到成功中,然后编译,beaglebone.h过了,又对“interrupt.h‘报相同错误, 相同方法再将interrupt.h加入工程,最后头文件编译过了,但还是有错误,信息如附件 另外我比对了两个工程的后台配置,发现不同,原Gpio中的File search path中除了“libc.a外还”有“.../gpioLCDBacklight.cmd”, 自建的工程只有“libc.a”,没有.cmd文件 |
|
|
|
cs110 发表于 2018-6-20 03:08 问题应该可以确认是File search path中没有相应的.cmd文件导致, 请教各位大侠,如何添加.cmd文件呢?谢谢 |
|
|
|
cs110 发表于 2018-6-20 03:08 看到你的图片中的用的compiler和linker下面写的是:TMS470,你的AM335x是cortex-A系列的,而TMS470应该ARM7系列的; 正确的应该是选择平台的时候选择:New CCS project》Family:ARM》Variant: AM33x-Cortex A8》你用的型号 你可以检查一下,看看你新建工程时候的平台选择对不对啊,会不会是这个问题呢? |
|
|
|
huangjulan55 发表于 2018-6-20 03:40 Gpio例程中的complier和linker是TMS470,板子是AM3359的,可是例程调试正常。 自建工程Test_LED是Arm A8的,工程路径中没有.cmd文件,不知是否跟这个文件有关? |
|
|
|
cs110 发表于 2018-6-20 03:53 TMS470的分类和定位相关的了解性资料可以参考以下两个链接: http://www.ti.com.cn/mcu/cn/docs/mcuorphan.tsp?contentId=24577 http://wenku.baidu.com/view/e797360e6c85ec3a87c2c5af.html |
|
|
|
cs110 发表于 2018-6-20 03:53 (1)CMD文件是连接命令文件,一般由3部分组成: 1)输入/输出定义:.obj文件:链接器要链接的目标文件;.lib文件:链接器要链接的库文件;.map文件:链接器生成的交叉索引文件;.out文件:链接器生成的可执行代码;链接器选项; 2)MEMORY命令:描述系统实际的硬件资源; 3)SECTIONS命令:描述“段”如何定位。 (2)Link的cmd文件用于DSP代码的定位。由于DSP的编译器的编译结果是未定位的,DSP没有操作系统来定位执行代码,每个客户设计的DSP系统的配置也不尽相同,因此需要用户自己定义代码的安装位置。 我目前用过的DSP和ARM一般来讲都是需要要有这个文件的(没用过你这个),但是对于初学者而言这个文件一般是不需要修改的。 (3)补充:针对每一个系列的DSP或者ARM的片子,TI官方网站上都有相应的头文件和cmd文件,你可以去TI的官网上搜索,搜索器件型号比如TMS320F2812或者关键字C/C++ Header Files,可以下载的。下载以后,解压到你想要的位置,就可以通过添加文件的方法添加了。官方提供的头文件和cmd文件很详细、具体,基本上就够用了,当然cmd文件有时候还是要自己配置的,但是对于新手入门来说,官方提供的cmd文件已经够用了。等到你熟悉cmd文件格式和要求,就可以自己写了,这方面的资料网上也有,官网上也有。例如以下链接: (CMD文件详解DSP_C2000程序员高手进阶)http://www.deyisupport.com/question_answer/microcontrollers/c2000/f/56/t/4113.aspx (4)根据你的问题,你可以尝试添加cmd文件试试,cmd文件的添加方法:cmd文件的添加方法如下:project->add files to project->选择所有文件->选中xxxx.cmd文件,单击确定。 |
|
|
|
cs110 发表于 2018-6-20 03:53 刚刚开始调试时,建议你使用AM3359配套的例程进行修改和模仿,如果原配的例程中的complier和linker是TMS470,那么就说明这个被分到这一类了,就可以说明compiler是正确的,没有问题。这个时候你只要用你新建的例程和原配的进行对比,发现其中的差异,并使用add 的方法 向工程中添加缺失的一些基础文件就可以了。基础文件的位置也可以参考原配例程。除此之外如果还有error就可以检查一些路径的配置。 |
|
|
|
huangjulan55 发表于 2018-6-20 04:24 非常感谢耐心细致的讲解。 |
|
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
336 浏览 1 评论
529 浏览 2 评论
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
774 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
651 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1130 浏览 1 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
58浏览 29评论
140浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
252浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
201浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
57浏览 13评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 08:36 , Processed in 1.222189 second(s), Total 74, Slave 68 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号