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

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

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

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

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

谢谢,
- khai

设备:
LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

谢谢你联系我们。我正在调查你的问题,并将更新你,因为我得到一个解决方案。

问候,

信用证

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

我继续向前并在da1458x_config_basic.h中插入下面的#define,以查看我是否可以像原来那样运行DSPS,以便它将文本从电话发送到Tera Term控制台。
#define cfg_printf.
#define cfg_printf_uart2.

我还在下面的UART_TX_CALLBACK()中更改了USER_SPS_SCHEDULER.C文件中的行

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

静态void UART_TX_CALLBALL(UINT8_T RES)

静态uint8_t大小= 0;
uint8_t * periph_tx_ptr = null;

//在未运行时从UART传输ISR或应用程序调用函数
开关(res)

案例UART_STATUS_OK:
//获取数据和指针
size = user_periph_pull(&periph_tx_ptr,size);
打破;
案例UART_STATUS_INIT:
size = user_buffer_read_address(&ble_to_periph_buffer,&periph_tx_ptr,tx_callback_size);
打破;
默认值:
assert_error(0);//错误:从未知来源调用回调

//如果有可用的数据,发送数据的外围
如果(大小> 0)

uart2_write (periph_tx_ptr、大小&uart_tx_callback);
/ / uart_sps_write (periph_tx_ptr、大小&uart_tx_callback);
返回;

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

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

谢谢,
- khai

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

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

另外,DSPS是基于SDK5.0.2还是SDK5.0.3?你能再确认一下这个吗?

问候,

信用证

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

确定。我使用SDK 5.04。
谢谢,
- khai

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

你能验证这个应用程序使用的是哪个DevKit吗?

和FYI,您正在处理的DSP(如果我参考右侧)是基于我们的SDK5.0.3版本。

问候,

信用证

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

基本的设备

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
凯海,

凯海,

如何将UART连接到控制台。是通过车载USB还是使用额外的硬件?

问候,

leepeng.

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

我使用的是SPI引脚配置,第二个在J4连接器的右边打印在Basic Kit与P0_4跳,所以我可以得到控制台打印(这个设置被使用,因为我正在测试SPI Flash读写和打印到控制台。我相信spi_flash使用UART2进行主机打印。

谢谢,
- khai

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
凯海,

凯海,

因此,在代码中,我看到您同时启用了uart (UART1和UART2)。您是否尝试通过USB连接使用两个uart进行编写?

您只能通过板载USB使用其中一个uart,为了同时使用它们,您需要另一个FTDI转换器,以便您可以连接到USB。

你能否确认你是否只需要UART2或UART1就可以回答你的第二个问题。

问候,

信用证

kqtrinh.
离线
最后一次露面:3年11个月前
加入:2016-08-24 00:17
正如你看到的那样

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

以下三种情况中的一种随时可能发生。

1.消息UART1
2.消息UART2
3.消息发送到两个UARTs(如果我不能在一个写调用中发送到两个,那么我可以按顺序发送它们)

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

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

谢谢,
- khai

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

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

为了连接UART2,您需要在user_peripher_setup .h中将Port0_4和Port0_5分配给uart端口和引脚,以便引脚FTDI引脚连接到UART2。

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

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

使用UART2_WRITE()函数将数据写入终端。

问候,

信用证

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

你好,信用证,

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

但是,请执行您所建议的内容只会使UART2写入和禁用UART1。我的目标是能够在任何给定时间发送给UART1,UART2或两者的消息?可以配置UART1和UART2,以便在运行时使用它们?那是我的原始问题。我需要能够做到:

1.消息从手机应用程序到UART1
2.从手机应用程序到UART2的消息
3.从手机应用程序向两个UARTs发送消息(如果我不能在一个单独的写调用中发送到两个,那么我可以按顺序发送它们)

谢谢,
- khai

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

我正在查询您的查询,同时使用两个UART。我首先审查了你的UART2问题,看看为什么UART2不起作用。我正在向您上传项目和差异,请参阅此线程。话虽如此,我正在探索同时使用案例,并将更新您。

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

问候,
信用证

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

你好,信用证,

谢谢你帮我找到解决方案。关于这个话题你有最新消息了吗?
谢谢,
- khai

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

是的,您可以同时使用两个UARTs。你要做的就是定义cfg_printf_uart2.“就像你现在做的一样。pin定义和保留都很好,就像你现在拥有的一样。UART1(0 _4, 0 _5)UART2(1 _2, 1 _3)

然而,对于UART1你需要使用这个函数uart_write ()UART2使用的函数uart2_write ()如文件中定义的那样“uart.h”

UART1支持板载FTDI连接,UART2支持外部FTDI连接。

如果您对此有任何问题,请让我知道。

问候,

信用证

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

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

谢谢,
- khai

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入: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工具包)

注意:如果您没有另一个BASIC工具包,您将需要使用任何兼容的FTDI转换器

当连接和断开事件发生时,我尝试写一些数据到uart和uart2。

问候,

信用证

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

你好,信用证,

那么,我是否删除所有在uart_sps.h中引用的函数调用,以在user_sps_scheduler.c中调用uart.h ?uart_sps.c和uart.c之间的区别是什么?为什么DSPS不简单地使用uart.c函数调用控制台读/写,而是创建自己的uart_sps.c?

谢谢,
- khai

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

你好,信用证,

我只是有时间开始考虑连接外部FTDI电缆的第二个UART输出。我有UM-B- 38文档8.1节中描述的基本套件硬件设置的FTDI电缆。

我订购了这个确切的电缆每附件图片。然而,不,我正在查看它,我仍然不知道如何跳过J4头以同时获得UART1和UART2控制台输出。我的问题是:

1.根据J4报头旁边的原理图,我的板目前是基于UART模式跳转的。这允许我在运行DSPS外设FW时使用UART1编写控制台输出。现在,我已经在UART2(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工具包)

我只是连接2线从6 FTDI电缆Rx(黄色线)引脚5,和Tx(橙色线)引脚6的基本套件?为了清晰起见,我附上了电缆连接的图片。

谢谢,
- khai

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

你好,信用证,

你能回答我的问题吗?在你进一步帮助我之前,我被困在这里了。
谢谢,
- khai

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

对于您的第一个问题,DSP是串行数据传输的蓝牙版本。因此,它包括像UART_SPS_WRITE()这样的函数,以将数据置于蓝牙或通过蓝牙接口接收数据。如果查看实现,UART_WRITE()和UART_SPS_WRITE()具有类似的实现,只有前者就是写入外围设备,稍后正在通过BLE发送数据。

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

问候,

信用证

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

1.根据J4报头旁边的原理图,我的板目前是基于UART模式跳转的。这允许我在运行DSPS外设FW时使用UART1编写控制台输出。现在,我已经在UART2(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工具包)

我只是连接2线从6 FTDI电缆Rx(黄色线)引脚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
你好,信用证,

你好,信用证,

谢谢你的建议。外部FTDI电缆Tx和Rx线到J4 GPIO引脚的物理连接现在已经正确布线。现在,我能够通过一个问题让两个uart打印到控制台。到TeraTerm的UART1输出现在已损坏,而UART2输出正常。UART1为板载串口输出,UART2为FTDI连接。

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

根据您的建议(附加代码),我创建了一个回调函数UART_BOTH_TX_CALLBACK()来写入UART1和UART2。这是您可以帮助为什么可以帮助的地方。该函数下面粘贴讨论:

Static void uart_both_tx_callback(uint8_t res)

静态uint8_t大小= 0;
uint8_t * periph_tx_ptr = null;

//在未运行时从UART传输ISR或应用程序调用函数
开关(res)

案例UART_STATUS_OK:
//获取数据和指针
size = user_periph_pull(&periph_tx_ptr,size);
打破;
案例UART_STATUS_INIT:
size = user_buffer_read_address(&ble_to_periph_buffer,&periph_tx_ptr,tx_callback_size);
打破;
默认值:
assert_error(0);//错误:从未知来源调用回调

//如果有可用的数据,发送数据的外围
如果(大小> 0)

UART_SPS_WRITE(PERIPH_TX_PTR,SIZE,NULL);
uart2_write (periph_tx_ptr、大小&uart_both_tx_callback);

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

可以看到,它与uart_tx_callback()非常相似。现在,在从外围fifo读取消息之后,调用uart_sps_write()和uart2_write(),并为它们提供相同的消息指针和大小。然而,对于uart_sps_write(),我传递给它一个NULL回调,以防止下次再次调用这个回调,而对于uart2_write(),我传递给它一个有效的回调函数名uart_both_tx_callback。

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

谢谢,非常感谢。
- khai

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

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

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

附加tera终端输出的屏幕截图。COM5(板载串口连接)为UART1, COM4 (FTDI外部线缆连接)为UART2

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

我正在调查你的项目。我不明白你的屏幕截图。查看Teraterm输出,它似乎同时适用于UART1和UART2。问题解决了还是仍然存在?

最好的

信用证

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

它没有完全打印出文本。当我向两个UARTs发送相同的文本时,必须打印相同的文本

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

我已经在BASIC DevKit上运行了你的项目,它看起来工作得很好。我没有对你的项目做任何改变,我只是编译和运行相同的代码。

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

我不确定在这个背景下,你这边有什么问题,因为它在我这边是有效的。我想请你再验证一次你的设置,以确保一切都在正确的地方。

我正在送你我的捕获......

最好的

信用证

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

你好,信用证,

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

如果(大小> 0)

UART_SPS_WRITE(PERIPH_TX_PTR,SIZE,&UART_BOTH_TX_CALLBACK);
uart2_write (periph_tx_ptr、大小空);

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

不幸的是,我分辨不出两者的区别,因为这对我来说是双向的。

最好的

信用证

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

算了。案件关闭。谢谢你的病人。

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
不客气。请让

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

最好的

信用证

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

你好,信用证,

UART事务大小在TX_CALLBACK_SIZE = 16字节中指定。这个尺寸还能大得多吗?为什么每次传输都有这么小的数据突发?
我问这个问题的原因是,我需要将固件转移到附加到UART1和UART2的外部设备,以便引导它们。所以设备FW是20K字节。
谢谢,
- khai

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

你好,信用证,

我在使用UART1和UART2的代码时遇到了奇怪的行为。当FW直接从Keil调试器加载到SysRAM时,一切工作正常,就像在FW中实现的那样。您已经尝试自己运行这段代码,并验证它是有效的。

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

1.将跳线放在基本套件的J4标题上以为SPI模式配置它
2.使用SmartSnippet闪烁您将我的DA FW到基本的KIT SPI Flash
3.连接外部FTDI电缆Tx/Rx到UART2引脚P1_2和P1_3(如果你在控制台中看不到文本,交换它)
4.启动2个TERA端子,一个用于板载串行连接,另一个用于外部FTDI电缆连接。板载连接是UART1,FTDI是UART2
5.如果基本套件当前插入电源,则循环电源
6.在手机上启动DSPS手机应用程序。应用程序应该找不到名称为nearye的基本工具包(我更改了这个名称,以反映我们的预期HW)

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

如果它没有立即发生,请再次重复步骤3-6。它看起来好像在DA FW中配置UART2要使用从Flash加载到失败。

希望你能重做这个问题。
先谢谢你,
- khai

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

tx_callback_size.是基于UART上的硬件FIFO配置的,16字节是它的最大值。

关于你的第二个问题,我将按照你的建议在黑板上尝试一下。不幸的是,我现在还不能访问Basic DevKit。我会尝试一下,然后给你回复。

最好的

信用证

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

附件是源代码的压缩文件,以便您在系统中没有保留以前的项目时使用。

附件:
LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

我已经尝试从闪存时从闪存中运行项目。在这里,我有一个澄清,你是如何安排Devkit的跳线J4和j6的跳跃者的。在SPI模式下配置电路板时,您基本上断开UART1。确保通过J4_11,J4_12和引脚J6_1,J4_13和J4_14连接了UART1,应通过3针跳线而不是2个引脚连接。这样你就可以使用uart以及spi。但是,我建议谨慎,因为你也是连接外围设备的essentail。相反,如果这更灵活,您也可以使用第二个外部FTDI转换器。

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

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

最好的

信用证

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

你好,信用证,

谢谢你调查我的问题。你提到了J6跳跃者。我在Basic DevKit中找不到J6。附(\v5.1.50.2.org\BasicKit-SPI-UART1-UART2.jpg)是当前为UART1和UART2与SPI跳板的快照。如您所见,FTDI黑色、橙色和黄色线是外部UART2连接。通过这个跳转配置,我能够毫无问题地获得SPI和UART1。UART2在J4头的顶部添加了FTDI线。没有FTDI线,从flash启动或直接加载到SysRAM,就像我在上面的步骤中解释的那样,工作得很好。

关于我现在的项目和之前的项目的区别,GPIO端口/引脚分配是一样的。唯一的区别是,当前的项目添加了一些用于我们自己的应用程序开发的SPI flash包装器代码。

是的,关于项目命名/引用错误,你是对的。很抱歉。我已经修正了错误,这是最新的。
谢谢,
- khai

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

文件超过10MB的图像。我把devkit映象封闭在这里。

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

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

注意:只有在将UART RX与FTDI和MISO连接时才需要3脚跳线。你的设置即使没有这个,直到你需要这个大头针的时候。

我再次运行最新的项目,我注意到有问题。但要再次强调,我还使用与同样的设置运行您以前的项目版本。我强烈相信您到目前为止所做的一些更改可能与应用程序相互冲突。我建议您参考您的预见版本,并查看是否面临任何问题。如果您没有看到任何问题,那么从步骤中开始,逐步更改,以检查引起此问题的添加。

最好的

信用证

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

由于信用证。

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

你是否用一个3引脚跳线连接J4和J6来测试我的项目?

谢谢,
- khai

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

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

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

因此,J4和J6的设置是为了适应这种不同的配置。我在这里上传你以前的项目。您可以尝试测试您的连接设置,这是相同的,我已经工作。我已经测试了这个项目,有和没有3针连接器,这没有影响,除非你从终端发送数据,我不认为你在做。所以请使用当前的设置。

最好的

信用证

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

信用证,

我测试了你回来的工作项目。结果是一样的。DSPS应用程序无法发现从闪存引导时发现设备(附近),但在从Keil上传到RAM时发现OK。

谢谢,
- khai

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

我已经下载了完全相同的副本,我已经发送给你,构建的代码和使用SmartSnippets SPI Flash程序员烧伤的图像到Flash。我为各自的COM端口打开了2个Tera Term终端。在编写flash程序后,只需进行板复位,我就能够在DSPS应用程序中看到设备,并能够将正在通过UART1和UART2写入Tera Term终端的数据发送到设备。

我不确定你身边出了什么问题。我正在使用先前在“Basickit-SPI-UART1-UART2”图像中显示的相同精确配置。您可以提出Devkit,SmartSnippet和终端输出图像。这样,我可以检查是否有任何问题。

最好的

信用证

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

谢谢你再次做测试,LC。

我想说的是DSPS App发现设备的问题是间歇性的。该应用程序能够检测到它的前几次。每次它检测到这个设备时,我都懒得给它发短信(我知道它会工作的)。我只是简单地回收电路板的电源(拔下USB线而不是重置),然后启动手机应用程序再次检测它。你会发现应用程序再也看不到设备了。请帮我试试。我不确定是什么原因造成的间歇性。

问题:

1.另一个UART连接是否使用FTDI外置电缆?
2.您是否跳J4和J6与我的设置相同?
3.您是否将Tera终端波特设置为115200并流量控制到Xon / Xoff?

谢谢,
- khai

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

所以,我知道你在进行能量循环,但必须采取一些步骤来确保通电过程是正确的。

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

2.当您给单板上电时,建议执行RESET,以确保正确的处理器输入电压,这是启动过程正确所需要的。

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

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

最好的

信用证

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

好的。使用FTDI电缆连接的电源循环后重置电路板似乎工作。

问题:

1.按下reset按钮是否重新将FW从flash下载到RAM?
2.是否有一个软件API从手机应用程序要求板复位?

谢谢,
- khai

LC_Dialog
离线
最后一次露面:4天21小时前
职员
加入:2016-09-19 23:20
你好潘文凯,

你好潘文凯,

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

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

最好的

信用证

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

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

谢谢,
- khai

页面

主题锁定