因IO口不够,把sclk和tms引脚用途i驱驱方。// G LED和VOID SET_PAD_FUNCTIONS(void)内设定gpio_configurepin(gpio_port_1,gpio_pin_4,输出,pid_gpio,false);// G LED为普通GPIO口,但是为高电平输出gpio_setactive(gpio_port_1,gpio_pin_4);时,P1.4口一道为低电平,是什么原因呢?
关键词:
设备:
你好,
请确保sys_ctrl_reg [debugger_enable]设置为''0“以将JTAG引脚配置为GPIO,如下所示:
setbits16(sys_ctrl_reg,debugger_enable,0);//关闭调试器
问候,
非常非常你的回复。代码已经是把别无设定setbits16(sys_ctrl_reg,debugger_enable,0);关键词,p1.4口还是无低高度电平输出。我把p1.4口改为p1.2可看到灯闪烁,因此代码是没有问题,还是p1.4的配置问题,请在帮忙看下是其它其它地方还需要.sdk版本为v_5.150.2。
void timer_callback(void)
{
静态无符号char标志= 0;
if(标志)
{
// gpio_setpinfunction(gpio_con_gled_port,gpio_con_gled_pin,输出,pid_gpio);
// gpio_configurepin(gpio_port_1,gpio_pin_4,输出,pid_gpio,true);// GED
// gpio_setactive(gpio_port_1,gpio_pin_2);
gpio_setinactive(gpio_port_1,gpio_pin_4);
标志= 0;
}
别的
{
// gpio_setpinfunction(gpio_con_gled_port,gpio_con_gled_pin,输出,pid_gpio);
// gpio_configurepin(gpio_port_1,gpio_pin_4,输出,pid_gpio,false);// GED
// gpio_setinactive(gpio_port_1,gpio_pin_2);
gpio_setactive(gpio_port_1,gpio_pin_4);
标志= 1;
}
}
你好,
您是否介意运行此修改的代码以验证JTAG是否正确禁用?
void timer_callback(void)
{
静态无符号char标志= 0;
if(getword16(sys_stat_reg)&dbg_is_up)== dbg_is_up)
{
if(标志)
{
gpio_configurepin(gpio_port_1,gpio_pin_2,输出,pid_gpio,true);
标志= 0;
}
别的
{
gpio_configurepin(gpio_port_1,gpio_pin_2,输出,pid_gpio,false);
标志= 1;
}
}
别的
{
if(标志)
{
// gpio_setpinfunction(gpio_con_gled_port,gpio_con_gled_pin,输出,pid_gpio);
// gpio_configurepin(gpio_port_1,gpio_pin_4,输出,pid_gpio,true);// GED
// gpio_setactive(gpio_port_1,gpio_pin_2);
// gpio_setinactive(gpio_port_1,gpio_pin_4);
gpio_configurepin(gpio_port_1,gpio_pin_4,输出,pid_gpio,true);
标志= 0;
}
别的
{
// gpio_setpinfunction(gpio_con_gled_port,gpio_con_gled_pin,输出,pid_gpio);
// gpio_configurepin(gpio_port_1,gpio_pin_4,输出,pid_gpio,false);// GED
// gpio_setinactive(gpio_port_1,gpio_pin_2);
// gpio_setactive(gpio_port_1,gpio_pin_4);
gpio_configurepin(gpio_port_1,gpio_pin_4,输出,pid_gpio,false);
标志= 1;
}
}
}
感谢致敬,
用来这代码,证明jtag已是关键.p1.2上的LED不合会闪烁,同时p1.4上的led of led也不会闪烁。
你好,
不知道如何验证LED闪烁功能。您的问题可能是由于进入睡眠模式,这些睡眠模式会过时的软计时器。要确认此假设,请您添加以下声明以重新运行测试。本声明是强制软件保持活力。
int main_func(void)
{
.....
//获取允许的睡眠模式
//从rwip_power_down()到wfi()的时间必须尽可能短!!
sleep_mode = rwip_power_down();
/ *声明添加* /
if((sleep_mode == mode_ext_sleep)||(sleep_mode == mode_deep_sleep)))
{
sleep_mode = mode_idle;
}
.....
}
问候,
已经试过,和睡眠没有关系。如果我把p1.2和p1.4相互对换一下一下,是可以看到p1.2上的led灯闪烁。是不可能代码需要更改里不不来
谢谢~~~