TI中文支持网
TI专业的中文技术问题搜集分享网站

在例程gpio_c6748x_c6748_evmc6748工程中新添加bl_platform.h头文件,然后将其bl_platform.c文件加到工程中,然后调用BlPlatformConfig();函数。编译后出现未定义问题

在例程gpio_c6748x_c6748_evmc6748工程中新添加bl_platform.h头文件,然后将其bl_platform.c文件加到工程中,然后调用BlPlatformConfig();函数。编译后出现以下错误
subdir_rules.mk:9: recipe for target 'bl_platform.obj' failed
"../bl_platform.c", line 133: error: identifier "PLL1_MUL" is undefined
"../bl_platform.c", line 514: error: identifier "VTPIO_CTL_HIGH" is undefined
"../bl_platform.c", line 622: error: identifier "DDR2_SDRCR_CLEAR" is undefined
3 errors detected in the compilation of "../bl_platform.c".
gmake: *** [bl_platform.obj] Error 1
gmake: Target 'all' not remade because of errors.

可是bl_platform.h文件中PLL1_MUL,VTPIO_CTL_HIGH,DDR2_SDRCR_CLEAR已经定义,这个应该如何解决?

Shine:

请问您是想要用starterware bootloader去加载gpio代码?如果是的话,不需要把bootloader代码加到GPIO工程中,请看下面的wiki网站。
processors.wiki.ti.com/…/C6748_StarterWare_Booting_And_Flashing

另外,因为AISgen 工具本身就能完成PLL, DDR等初始化操作,所以可以不用starterware bootloader来做二次bootloader。

user5250905:

回复 Shine:

不是,我就想配置一下OCSEL和OCSDIV这俩个寄存器,想观察一下时钟,应该在哪配置?

Shine:

回复 user5250905:

在ccs view memory里找到寄存器地址直接修改里面的值或者用下面的语句修改寄存器。 *(volatile unsigned int*) (reg_addr)= value;

user5250905:

回复 Shine:

在ccsmemory里的寄存器直接修改还是变为原来的值,修改不了,

user5250905:

回复 user5250905:

用* (unsigned int *)(SOC_PLLC_0_REGS + 0x124) = 0x00008001u;这样修改ocsel寄存器的值仿真的时候出现这样的问题,寄存器ocsel的值并没有改变,
ICEPICK_C: Trouble Reading Memory Block at 0x1c10800 on Page 0 of Length 0x4
ICEPICK_C: GEL: Error while executing OnTargetConnect(): Target failed to read 0x01C10800at (*((unsigned int *) ((0x01C10000+0x800)+(4*LPSC_num)))&0x1F) [C6748.gel:849]at PSC0_LPSC_enable(0, 0) [C6748.gel:449]at PSC_All_On_Experimenter() [C6748.gel:238]at OnTargetConnect()
这是什么问题啊?非常感谢

user5250905:

回复 user5250905:

用* (unsigned int *)(SOC_PLLC_0_REGS + 0x124) = 0x00008001u;这样修改ocsel寄存器的值仿真的时候出现这样的问题,寄存器ocsel的值并没有改变,
ICEPICK_C: Trouble Reading Memory Block at 0x1c10800 on Page 0 of Length 0x4
ICEPICK_C: GEL: Error while executing OnTargetConnect(): Target failed to read 0x01C10800at (*((unsigned int *) ((0x01C10000+0x800)+(4*LPSC_num)))&0x1F) [C6748.gel:849]at PSC0_LPSC_enable(0, 0) [C6748.gel:449]at PSC_All_On_Experimenter() [C6748.gel:238]at OnTargetConnect()
这是什么问题啊?非常感谢

Shine:

回复 user5250905:

下面的报错信息是读PSC寄存器,这个报错信息是在执行* (volatile unsigned int *)(SOC_PLLC_0_REGS + 0x124)的时候产生的吗?

user5250905:

回复 Shine:

对啊

Tony Tang:

回复 user5250905:

上面的信息是连接仿真器时执行GEL文件的输出信息,与改PLL寄存器应该没多大联系吧。你的问题是连仿真时有问题,还是用代码改写PLL寄存器有问题?

user5250905:

回复 Tony Tang:

嗯,对,那个错误跟改PLL寄存器无关,但是就是改pll寄存器,仿真时pll寄存器的值没有改变?不知为何

赞(0)
未经允许不得转载:TI中文支持网 » 在例程gpio_c6748x_c6748_evmc6748工程中新添加bl_platform.h头文件,然后将其bl_platform.c文件加到工程中,然后调用BlPlatformConfig();函数。编译后出现未定义问题
分享到: 更多 (0)