如何在运行时配置和使用UART1和UART2

56帖子/ 0新
最后一篇
kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
如何在运行时配置和使用UART1和UART2

我需要在DSPS外设模式应用程序运行时同时使用UART1和UART2。

基本上在我们的设计中,我们将有两个设备连接到UART1和UART2串行总线。对于当前的dsp源代码,如何使用UART1和UART2是在编译时通过CFG_PRINTF_UART2标志确定的。如果设置了CFG_PRINTF_UART2,则使用UART2驱动程序。如果不是,将使用UART1将消息发送到控制台。

可以选择UART1或UART2并调用以向附件设备传递消息(通过GPIO引脚分配)?只要可以按顺序选择和调用,我不需要在任何给定的时间调用两个时间。

谢谢,
——潘文凯

设备:
lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

谢谢你到达我们。我正在调查您的查询,并在找到解决方案时更新您。

问候,

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
我前进并插入了

我继续并在da1458x_config_basic.h中插入下面的#define,以查看是否可以按照原来的方式运行DSPS,以便它将文本从电话发送到Tera Term控制台。
#定义CFG_PRINTF
#定义CFG_PRINTF_UART2

我还更改了下面uart_tx_callback()中的user_sps_scheduler.c文件中的一行

UART_SPS_WRITE()到UART2_WRITE()所以它将调用UART2驱动程序来写入邮件。

静态uart_tx_callback(uint8_t res)
{
静态uint8_t大小= 0;
uint8_t * periph_tx_ptr = null;

//在未运行时从UART传输ISR或应用程序调用函数
开关(RES)
{
案例UART_STATUS_OK:
//获取数据和指针
Size = user_peri_pull (& peri_tx_ptr, Size);
休息;
案例UART_STATUS_INIT:
size = user_buffer_read_address(& ble_to_peri_buffer, & peri_tx_ptr, TX_CALLBACK_SIZE);
休息;
默认:
ASSERT_ERROR (0);//错误:从未知的来源调用回调
}
//如果有可用的数据,发送数据通过periph
if(size> 0)
{
UART2_WRITE(PERIPH_TX_PTR,SIZE,&UART_TX_CALLBALL);
/ / uart_sps_write (periph_tx_ptr、大小&uart_tx_callback);
返回;
}

//缓冲区中没有数据,因此回调已完成
callbackbusy = false;
}

没有什么是没有写成控制台。FW不显示任何错误。如果您不介意,您可以尝试上面的代码,看看你是否可以看到相同的结果。

谢谢,
——潘文凯

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

将数据写入UART的最新问题应该是由于引脚配置。为了查看我需要查看实现的配置。将您的项目进行审阅,这将是可行的。

另外,是基于SDK5.0.2还是SDK5.0.3的DSP?你能崇拜这个吗?

问候,

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
当然。我正在使用SDK 5.04。

当然。我正在使用SDK 5.04。
谢谢,
——潘文凯

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

您是否可以验证此应用程序使用哪种devkit?

另外,你正在工作的DSPS(如果我指的是正确的)是基于我们的SDK5.0.3版本。

问候,

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
基本的设备

基本的设备

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯海,

凯海,

您如何将UART连接到控制台。它是否通过板载USB,或者您正在使用其他硬件来执行此操作?

问候,

leepeng.

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
我正在使用SPI引脚

我正在使用SPI引脚配置J4连接器的第二个右侧的基本套件上,使用P0_4跳转,因此我可以获得控制台打印(使用此设置,因为我正在测试SPI闪存读/写和打印到控制台。我相信SPI_FLASH正在使用UART2进行控制台打印。

谢谢,
——潘文凯

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯海,

凯海,

所以在代码中,我看到您正在启用UART(UART1和UART2)。您是否尝试通过USB连接使用uarts?

您只能通过板载USB使用UART中的任何一个,以便同时使用两者,您需要另一个FTDI转换器,以便您可以连接到USB。

您是否可以确认您只需要UART2或UART1是否为第2个问题工作。

问候,

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
正如你可以看到我的是什么

正如你可以看到我想要做的事情。我尝试使用UART2_WRITE()而不是UART_SPS_WRITE()将消息写入控制台,它不起作用。我只是测试了解我是否可以通过我的设置将UART2_WRITE输出到控制台。基本上,我需要UART1和UART2在我们的设计中工作。

以下三种情况中的一种可能在任何给定的时间发生。

1.消息UART1
2.消息UART2
3.向两个UART消息(如果我不能在单个写入呼叫中发送到两者,那么我还可以顺序发送它们)

只需使用UART2_WRITE()替换UART_SPS_WRITE(),为什么这不起作用(未看到文本消息的控制台打印),因为我已配置GPIO端口和PINS分配UART2。现在,我只是只测试UART2。

当这一切都说并完成时,我需要挂钩另一个FTDI电缆,以将控制台输出到UART1和UART2。我确实有电缆,但无法从其中一个Doc中的指令上工作。如果你能告诉我如何,我会非常感谢。我需要迟早这样做来检查连接。

谢谢,
——潘文凯

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

我已经审查了项目和uart2是工作。因此,以下是使用uart2写入串行终端时必须进行的设置。

为了连接UART2,您需要将port0_4和port0_5分配给UART端口和PIN in user_periph_setup.h,以便引脚FTDI引脚连接到UART2。

笔记:确保你禁用这些相同的引脚为UART1,因为会有分配冲突。

并且,在Basic DevKit上,在UART配置中配置baord。

使用uart2_write()函数向终端写入数据。

问候,

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
嗨LC,

嗨LC,

如果您对GPIO设置的项目进行了更改,请将您所做的差异发给我,以获得UART2工作。我很难在响应消息中遵循您的说明。

但然后执行您建议的操作将只启用UART2写入和禁用UART1。我的目标是能够在任何给定的时间发送消息到UART1, UART2或两者?能否同时配置UART1和UART2,以便在运行时使用它们?这是我最初的问题。我需要能够做到:

1.从手机应用程序到UART1的消息
2.信息到UART2从手机应用程序
3.message to both UARTs从手机应用程序(如果我不能发送到两个在一个写调用,那么它是ok的,我发送他们顺序)

谢谢,
——潘文凯

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

我正在查看您关于同时使用两种UARTs的查询。我首先回顾了你的UART2问题,看看为什么UART2不能工作。我正在上传项目和差异到这个线程供你参考。话虽如此,我正在探索同时的用例,并将向您更新。

笔记:可以在语句之前用commnet“更改”来识别修改。

问候,
信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
嗨LC,

嗨LC,

谢谢你帮我找到解决办法。你有关于这个话题的最新进展吗?
谢谢,
——潘文凯

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

是的,您可以同时使用两个UART。你所要做的就是定义“CFG_PRINTF_UART2“正如你现在所做的那样。引脚定义和预订都是好的。uart1.(0 _4, 0 _5)UART2.(1_2,1_3)

然而,对于uart1.您需要使用该功能UART_WRITE()UART2.使用的函数UART2_WRITE()如文件中定义的那样“uart.h”

您可以使用UART1的Onbord FTDI连接和UART2的外部FTDI。

如果您对此有任何疑问,请告诉我。

问候,

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
好了,好了。我会尝试一下

好了,好了。我明天试试,然后告诉你。你在我发给你的dsp项目上试过吗?另外,如何将外部FTDI电缆连接到J4接头?如果您能告诉我如何跳转J4头文件来编写UART1和UART2的控制台输出,那就太好了。

谢谢,
——潘文凯

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
当然...

当然...

是的,我使用您发送给我们的项目进行了测试。

所以,这里的连接在J4上的样子如何看起来像:

header_pin11 ... port0_pin4(UTX)连接到ftdi t_rxd(根据原理图)

header_pin13 ... port0_pin5(urx)连接到ftdi t_txd(根据原理图)

Header_pin5……port1_pin3(分配给UTX)连接到FTDI T_RXD(另一个BASIC套件)

Header_pin6……port1_pin2(分配给URX)连接到FTDI T_TXD(另一个BASIC套件)

注意:如果您没有其他基本套件,则需要使用任何兼容的FTDI转换器

在连接和断开事件时,我尝试将一些数据写入UART和UART2。

问候,

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
嗨LC,

嗨LC,

所以我删除了在Uart_sps.h中引用的所有函数调用,以在Ust_sps_scheduler.c中调用uart.h?UART_SPS.C和UART.C之间有什么区别?为什么DSPS只需使用UART.C函数调用控制台读/写,而是创建自己的UART_SPS.C?

谢谢,
——潘文凯

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
嗨LC,

嗨LC,

我只需开始查看连接外部FTDI电缆的第二个UART输出。我拥有FTDI电缆,如UM-B - 38 Doc部分8.1硬件设置所描述的基本套件。

我每张附图订购了这个确切的电缆。但是,不,我正在看它,我仍然无法弄清楚跳出J4标题以获得UART1和UART2控制台输出。我的问题是:

1.我的板目前是基于UART模式的跳跃,每个示意图旁边的J4头。这允许我在运行DSPS外设FW时使用UART1编写控制台输出。现在,我已经在(1_2,1_3)上添加了UART2 GPIO配置。我有外部FTDI电缆,如何使用该电缆输出UART2数据?

2. FTDI转换器电缆有6个电线。根据您的指示,
Header_pin5……port1_pin3(分配给UTX)连接到FTDI T_RXD(另一个BASIC套件)
Header_pin6……port1_pin2(分配给URX)连接到FTDI T_TXD(另一个BASIC套件)

我是否只需将6根FTDI电缆Rx(黄色线)中的2根线连接到基本套件的第5脚,并将Tx(橙色线)连接到第6脚?为了清楚起见,我附上了电缆连接的图片。

谢谢,
——潘文凯

附件:
kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
嗨LC,

嗨LC,

请您回复我的问题。直到我再次得到你的帮助,我暂时陷入困境。
谢谢,
——潘文凯

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

对于你的第一个问题,DSPS是蓝牙版本的串行数据传输。因此,它包括uart_sps_write()等函数来接收数据并通过蓝牙发送它或通过蓝牙接口接收数据。如果您看一下实现,uart_write()和uart_sps_write()有类似的实现,只有前者写到外围UART,后者通过BLE发送数据。

您不需要用uart_write()替换uart_sps_write()。相反,如果希望将数据写入uart或uart2外设,只需为各自的uart实现一个回调函数。

问候,

信用证

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

1.我的板目前是基于UART模式的跳跃,每个示意图旁边的J4头。这允许我在运行DSPS外设FW时使用UART1编写控制台输出。现在,我已经在(1_2,1_3)上添加了UART2 GPIO配置。我有外部FTDI电缆,如何使用该电缆输出UART2数据?

首先,通过将配置打印在PCB上,您可以使用UART1通过连接到DevKit的Mini-USB将数据写入PC/MAC上的串行终端。

现在,您可以使用FTDI电缆连接到Devkit上的UART2和电缆的另一端到PC / Mac。打开2个终端的单独实例连接到每个端口,您将能够通过UART1和UART2进行通信。

2. FTDI转换器电缆有6个电线。根据您的指示,

Header_pin5……port1_pin3(分配给UTX)连接到FTDI T_RXD(另一个BASIC套件)

Header_pin6……port1_pin2(分配给URX)连接到FTDI T_TXD(另一个BASIC套件)

我是否只需将6根FTDI电缆Rx(黄色线)中的2根线连接到基本套件的第5脚,并将Tx(橙色线)连接到第6脚?为了清楚起见,我附上了电缆连接的图片。

为了连接,您需要将发射、接收和GND连接到FTDI转换器。请确保连接一个公共GND,否则将不会有通信。对于发送和接收,命名约定有时会令人困惑,所以只需将Basic Kit上的Tx连接到FTDI上的Rx,并将Basic Kit上的Rx连接到FTDI上的Tx。如果没有通信,就交换Tx和Rx线。

这应该解决您的问题。如果您有更多问题,请告诉我。再次,感谢您的耐心。

最好的

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
嗨LC,

嗨LC,

谢谢你的提示。与外部FTDI电缆TX和RX线的物理连接现在连接到J4 GPIO引脚。我现在能够通过一个问题来获得UART打印到控制台。UART1输出到TERATERM现在已损坏,UART2输出很好。UART1是板载串行输出,而UART2是FTDI连接。

如果您不介意,请使用我的原始项目样本,我发给您开始。然后将连接到项目的新user_sps_scheduler.c文件应用。构建代码并将其加载到580基本套件。在手机上运行DSPS Android应用程序并将其发送一些短信。您将看到UART1输出(UART_SPS_WRITE())损坏,而UART2输出(UART2_WRITE())很好。

我创建了一个回调函数uart_both_tx_callback(),以按照您的建议(附加的代码)写入uart1和uart2。这就是为什么你能帮上忙的原因。函数粘贴在下面供讨论:

静态void UART_BOTH_TX_CALLBALL(UINT8_T RES)
{
静态uint8_t大小= 0;
uint8_t * periph_tx_ptr = null;

//在未运行时从UART传输ISR或应用程序调用函数
开关(RES)
{
案例UART_STATUS_OK:
//获取数据和指针
Size = user_peri_pull (& peri_tx_ptr, Size);
休息;
案例UART_STATUS_INIT:
size = user_buffer_read_address(& ble_to_peri_buffer, & peri_tx_ptr, TX_CALLBACK_SIZE);
休息;
默认:
ASSERT_ERROR (0);//错误:从未知的来源调用回调
}
//如果有可用的数据,发送数据通过periph
if(size> 0)
{
uart_sps_write (periph_tx_ptr、大小空);
UART2_WRITE(PERIPH_TX_PTR,SIZE,&UART_BOTH_TX_CALLBALL);
}

//缓冲区中没有数据,因此回调已完成
both_tx_callbackbusy = false;
}

正如您所看到的,它与UART_TX_CALLBACK()非常相同。现在我从外围FIFO读出邮件后,我拨打了UART_SPS_WRITE()和UART2_WRITE()并提供相同的消息指针和大小。但是,对于UART_SPS_WRITE(),我将它传递一个null回调,以防止回调在uart2_write()下次左右再次调用,我用一个有效的回调函数名称uart_both_tx_callback。

我会拉过整个项目,这样你就可以简单地推出它并帮助我看看。

谢谢,非常感谢。
——潘文凯

附件:
kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
顺便说一句,我开放了

顺便说一下,我打开了两个UART输出的TeraTerm。

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
附加了屏幕捕获

连接了TERA终端输出的屏幕捕获。COM5(板载串行连接)是UART1和COM4(外部FTDI电缆连接)是UART2

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

我正在调查你的项目来运行它。现在,我对你的屏幕截图感到困惑。查看terterm输出,它似乎可以同时使用UART1和UART2。问题是解决了还是仍然存在?

最好的

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
它不会完全打印

它不会完全打印出文本。必须打印相同的文本,因为我向两个uart发送了相同的文本

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

我在这里的基本devkit上运行了你的项目,它看起来很正常。我没有对您的项目进行任何更改,我刚刚编译并运行相同的代码。

从您的设置到我的唯一的变化就是,我正在使用另一个devkit而不是UART2上的FTDI转换器。根据您的观察,UART2在您身边没有任何问题?

我不确定在这种情况下你这边有什么问题,因为它在我这边工作。我想请您再次验证您的设置,以确保一切都在正确的地方。

我把我的俘虏发给你…

最好的

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
嗨LC,

嗨LC,

现在我只需将回调函数名提供给uart_sps_write()并将NULL提供给uart2_write(),就可以让它工作了,如下所示,这与前面的场景相反。我不明白它是如何工作的,现在与我以前有。如果你能解释原因,那就太好了。

if(size> 0)
{
UART_SPS_WRITE(PERIPH_TX_PTR,SIZE,&UART_BOTH_TX_CALLBACK);
UART2_WRITE(PERIPH_TX_PTR,SIZE,NULL);
}

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

不幸的是,我看不出有什么区别,因为这两种方法对我都有效。

最好的

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
没关系。案件关闭。

没关系。案件关闭。谢谢你的病人。

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
不客气请让

不客气如果您在未来任何问题,请告诉我们。

最好的

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
嗨LC,

嗨LC,

UART事务大小在TX_CALLBACK_SIZE = 16字节中指定。这个尺寸可以大一些吗?为什么每次传输的数据都只有这么小的爆炸式增长?
原因我问是,我需要将固件转移到附加到UART1和UART2的外部设备,以便它们启动。所以设备FW是20k字节。
谢谢,
——潘文凯

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
嗨LC,

嗨LC,

我经历了这段代码的奇怪行为,我有使用UART1和UART2。当FW直接从Keil调试器加载到SysRAM时,一切工作正常。您已经尝试并运行了这段代码,并验证了它的工作。

现在,当我开始使用SmartSnippets flash相同的FW到基本套件上的SPI flash,并从flash启动,上电后,FW似乎没有从flash正确下载到SysRAM。我这么说的原因是手机应用程序将无法找到它的礼物。下面是复制的步骤:

1.将跳线放置在Basic Kit的J4标头上,以将其配置为SPI模式
2.使用SmartSnippets flash DA FW你从我到基本套件SPI flash
3.将外部FTDI电缆Tx/Rx连接到UART2引脚P1_2和P1_3(如果在控制台中看不到文本,请将其互换)
4.启动2个TERA端子,一个用于板载串行连接,另一个用于外部FTDI电缆连接。板载连接是UART1,FTDI是UART2
5.循环电源的基本套件,如果它是目前插电
6.在手机上启动DSPS手机应用程序。应用程序应该找不到名称为NearEye的基本套件(我改变了这个名称以反映我们的预期HW)

但是,如果要从电路板上移除UART2连接的FTDI电缆(卸下TX / RX引脚),则电路板上的回收电源将允许手机应用程序再次找到它。现在将FTDI电缆重新连接到电路板TX / RX引脚将允许UART1和UART2按预期运行。

如果没有立即发生,请重复步骤3-6。在DA FW中配置UART2似乎会导致从Flash加载失败。

希望你能重现这个问题。
先感谢您,
——潘文凯

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

TX_CALLBACK_SIZE是基于硬件FIFO配置的UART和16字节是它的最大值。

对于你的第二个问题,我将在建议的情况下在董事会上尝试。不幸的是,我现在无法访问基本的devkit。我会尝试一下并回复你。

最好的

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
附件是压缩文件

附件是源代码的压缩文件,以防您没有在您的系统中保存以前的项目。

附件:
lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

我已经尝试从您建议的flash运行项目。在这里我要澄清一下,你们是如何安排DevKit的跳线J4和J6的。当板配置为SPI模式时,实际上是断开UART1的连接。确保您已经连接UART1通过J4_11, J4_12和引脚J6_1, J4_13和J4_14应该通过3引脚跳线连接,而不是2引脚。通过这种方式,您将能够使用UART以及SPI。然而,我建议你要谨慎,因为你也需要连接周边设备。相反,如果第二个外部FTDI转换器更灵活,您也可以使用它。

来到项目,我看到了一些问题,从你最近上传的项目。但是,项目的前一个版本在flash上也能正常运行。因此,我建议您检查您的项目,以了解可能与正常操作冲突的任何更改。

注意:在你最新的项目版本中也有一个函数命名/引用错误。请在上传项目之前检查这些。

最好的

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
嗨LC,

嗨LC,

谢谢你探讨我的问题。你提到了J6跳投。没有J6我可以在基本的devkit中找到。附加了(\ v5.1.50.2.org \ basickit-spi-uart1-uart2.jpg)是当前为UART1和UART2带有SPI的COLION的快照。如您所见,FTDI黑色,橙色和黄色电线是外部UART2连接。通过这种跳跃的配置,我能够获得SPI和UART1没有问题。使用J4头顶的FTDI线添加UART2。如果没有FTDI线,请从闪光灯或直接加载到Sysram的加载,因为我在上面的步骤中解释说明。

关于我当前项目之间的差异VS前一个项目,GPIO端口/引脚被分配相同。唯一的区别是,目前的项目是添加了一些SPI闪存包装代码,用于我们自己的应用程序开发。

是的,您是在项目命名/参考错误中正确的。对于那个很抱歉。我已经修复了错误,这是最新的。
谢谢,
——潘文凯

附件:
kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
文件超过10MB,带有图像。

文件超过10MB,带有图像。我在这里附上了DevKit图像。

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

跳线J6是J4侧有2个引脚的跳线。这在Devkit设置图像中也清晰可见,我上传与J6的突出显示的部分相同。

注意:只需要3个引脚跳线,以便将UART RX与FTDI和MISO连接。直到您需要此PIN的时间,即使没有此,您的设置也是如此。

我重新运行了你的最新项目,我注意到有问题。但要再次强调,我也运行了您的项目的前一个版本的相同的设置,这是工作良好的。我坚信到目前为止您所做的一些更改可能与应用程序相冲突。我建议你参考你之前的版本,看看你是否面临任何问题。如果您没有看到任何问题,那么就从那里逐步进行更改,检查是哪个添加导致了这个问题。

最好的

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
由于信用证。

由于信用证。

我没有SPI引脚连接称为J6
如果你不介意,你可以拉开我以前的项目,所以我可以做比较吗?

你用3针跳线连接J4和J6来测试我的项目吗?

谢谢,
——潘文凯

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
你能拍一份快照吗?

你可以拍一张你所拥有的板的快照吗?

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

因此,建立J4和J6以适应这种不同的配置。我正在上传你以前的项目。您可以尝试使用与连接设置进行测试,这是我的工作。我已经用3个引脚连接器测试了这个项目,除非您正在从我认为您正在做的终端发送数据,否则这不会影响。所以请使用您当前的设置。

最好的

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
信用证,

信用证,

我测试了你发回的工作项目。结果是一样的。DSPS应用程序未能发现设备(NearEye)时从flash启动,但它被发现OK时从Keil上传到RAM。

谢谢,
——潘文凯

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

我已经下载了完全相同的拷贝,我已经发给你,构建的代码和使用SmartSnippets SPI Flash程序员烧毁的图像到Flash。我有两个Tera Term终端打开各自的COM端口。在编程后的flash,刚刚做了一个板复位,我能够看到设备在DSPS应用程序,并能够发送数据的设备,这是写到Tera Term终端通过UART1和UART2。

我不知道你那边出了什么问题。我使用的配置与您之前在“BasicKit-SPI-UART1-UART2”图像中显示的完全相同。你能把DevKit, SmartSnippets和终端输出图像。这样的话,如果有什么问题,我就可以检查了。

最好的

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
谢谢你运行测试

谢谢你再做一次测试,LC。

我想说发现设备的DSP应用程序的问题是间歇性的。该应用程序能够检测到第一次。每次检测到设备时,我都不打扰发送它的文字(我知道它会起作用)。我只需回收电源电源(将USB电缆从IT拉出而不是复位,并启动手机应用程序再次检测。您会发现该应用程序不会再看到设备。请为我试试。我不确定是什么造成的间歇性。

问题:

1.您是否使用FTDI外部电缆进行其他UART连接?
2.您是否跳J4和J6与我的设置相同?
3.你是否设置Tera终端波特率为115200和流量控制为Xon/Xoff?

谢谢,
——潘文凯

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

所以,我明白你是电力骑行,但必须注意一些步骤,以确保电动过程是正确的。

1.当板断电时,不应该有一些连接到PIN的外部电源,如FTDI转换器连接到UART2,可以在引脚上留下一些残留物,并且可能是一个问题

2.电动板时,建议重置重置,以确保对引导过程所需的处理器的正确输入电压是正确的。

如果没有硬件重置,我们无法确保在系统通电后的启动过程将是正确的。它的工作时间很大,但并不总是如此。如果您正在电池供电,可以在需要在REQURID PACE处提供所需的电压,那么它应该工作几乎所有时间都没有重置。

请尝试这些步骤,看看问题是否已解决。

最好的

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
好的。重置板后

好的。电源循环后复位单板,连接的FTDI线缆似乎工作正常。

问题:

1.按下复位按钮是否从闪光到RAM重新下载FW?
2.是否有软件API可以从手机应用程序重置电路板?

谢谢,
——潘文凯

lc_dialog.
离线
最后一次露面:2周4天前
职员
加入:2016-09-19 23:20
凯瑟你好,

凯瑟你好,

1.是的,它就像系统正在重新启动,但更受控制,输入供应是稳定的这种方式。

2.否,由于系统不开始运行,直到完成重置,无法连接到设备。因此,您无法在不连接的情况下发出外部命令。

最好的

信用证

kqtrinh
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
好的。那告诉我怎么做

好的。然后告诉我如何在成功加载到Sysram之后在FW中重置软件。我将通过发送reset命令从手机应用程序创建一个协议接口以重置电路板。

谢谢,
——潘文凯

页面

主题锁定