你好MT_dialog,
我们已经在DA14580 Development Kit - Basic上实现了具有UART和SPI配置的DSPS项目。我们想使用我们的微控制器与UART连接的板引脚使用da14580蓝牙芯片和我们的ATMEL处理器。
如何在DSP项目中添加我们的代码,并在Keil项目中的代码的哪一部分?是必要的进一步联系吗?
主要目标是通过UART连接将DSP与DA14580和我们的处理器一起使用。
提前谢谢,腻过
嗨腻过,
据我所知,我不太明白,我想告诉你想要从外部MCU向580发送数据,那么这些数据应该通过蓝牙推动,如果是这种情况,无需更改DSPS代码。DSP应用程序将从UART端口获取数据并通过BLE将数据通信到连接的另一侧,您必须做的就是通过UART配置和连接外部MCU(RX / TX和RTS / CTS想使用H / W流量控制 - 这是唯一可以可靠地传输UART数据的方法,并在扩展睡眠模式下具有580)。
由于MT_dialog
感谢您的快速回复!!
好的,如果我理解正确,DSPS代码是在DA14580上通过SmartSnippets的JTAG闪存,我需要配置的唯一是我的外部处理器(MCU)中的代码。
当然,还有一个数据接收检查函数,它将检查从DA14580接收到的通过UART的数据是否正确,并继续执行我们想要实现的结果。
如果我错了,请纠正我
如有任何进一步的建议,我们将不胜感激。
是的,DSPS是一个独立的应用程序,无论数据给出的UART端口上时,它将把他们连接的另一端(当然,你需要一个合适的客户端支持DSPS这是一个对话框礼轮廓 - 像DSPS的Android /奥斯应用程序或另一580运行DSPS的宿主应用程序)。
我不太明白你说的“接收支票功能”是什么意思,你能解释一下吗?
你好mt_dialog.
感谢您的快速回复 !
我们已将我们的Atmel处理器连接了对话框DA14580开发套件 - 基本如下所示。(da rx - >到外部Atmel Tx)和(da tx->到外部atmel rx)我们也尝试了与外部处理器相反的连接。
但是在我们的ATMEL处理器中没有收到任何数据,我们使用官方的DSPS android应用程序发送数据。
1)我们还需要做些什么吗?
2)必须将SPI连接从DA板连接到我们的Atmel处理器,以将数据传输到另一侧?我们已经使SPI配置与附件中的SPI配置一样。
3)在DA VIN引脚3,3中位于电路板中,因为现在仅从USB端口启动。最后,我需要在哪个代码中设置580的扩展睡眠模式来传输数据?
提前谢谢,腻过。
1) DSPS被设计为与h/w流量控制启用正常工作,所以你也需要连接CTS/RTS,因为当睡眠启用时,外部设备需要知道580何时是醒着的,以便发送数据。也可以使用s/w流量控制,但在设备上会有丢失的数据。
2)不,它没有必要连接SPI引脚,当你运行DSPS应用程序,除非如果你打算从SPI flash启动fw,专业套件板载。
3)关于最后一个问题,如果你不想从USB电力董事会可以附加电源J5头销1 (VBAT_580),但你也需要下载固件到设备,所以你要通过凯尔从门限来引导,这当然需要USB或烧录OTP或SPI或通过UART引导。默认情况下,DSPS预先配置了启用了扩展睡眠模式,您可以在app_default_sleep_mode结构的user_config.h文件中检查这一点。
关于你的连接,在已连接的已连接了实现JLINK,以便用来打印数据输出从基本开发工具的Atmel的UART的RX和TX线并且在UART端口之间没有连接的示意的580和您的ATMEL处理器的,即要表示为P04和P05是不正确的,在J4这些引脚是exectly在从要指示一个前的那些销,可以检查的原理图和说明书关于更多的信息的基本试剂盒(UM-B-048入门DA1458x),以及其建议在这个和SEGGER MCU的不UART使用FTDI。
亲爱的MT_dialog
我已将user_config.h文件中的设置更改为扩展睡眠模式启用当我试图闪光我的板时,我得到以下错误:
[INFO General @17-06-12 23:40:12]无法测量总的IR len。TDO是恒定的。[INFO General @17-06-12 23:40:12]无法测量总的IR len。TDO是恒定的。[信息概述@ 17-06-12 23:40:13]无法衡量总IR LEN。TDO是恒定的。[信息概述@ 17-06-12 23:40:13]无法衡量总IR LEN。TDO是恒定的。[信息概述@ 17-06-12 23:40:13]无法衡量总IR LEN。TDO是恒定的。[ERROR General @17-06-12 23:40:13] unable not read memory address 0x50003200 with function JLINKARM_ReadMemHW .]日志含义[ERROR General @17-06-12 23:40:14]打开JLink连接时未发现已知芯片。终止过程中…[错误SPI闪存程序员@ 17-06-12 23:40:14]将固件文件下载到电路板上失败。[错误SPI Flash编程@ 17-06-12 23时四十分14秒]未能配置SPI闪存接口和引脚。
我的板子处于spi模式
我怎么可以解决售后服务这个问题?
从您所附的日志中,我想你正在使用智能片段工具,以便在董事会上刻录SPI闪光灯,我也假设您已经在SPI中刻录了睡眠状态,并在睡眠后烧伤了睡眠启用FW,您无法与智能片段连接并撤销闪存(我假设您烧焦的FW基于5.0.4岁的SDK)。此外,我假设您通过JTAG接口连接到智能代码段。从5.0.4的SDK是即使在睡眠模式下,所有先前的版本也能够保持580的调试器模块,所有先前的版本都禁用模块,因此当智能片段尝试下载Flash_Programmer以闪存它失败以来它找不到580上的调试器模块。您可以做的就是在电路板上的重置按钮,在2秒内(对于XTAL32,在2秒内停留2秒钟以解决)点击智能片段上的连接,这将下载Flash_programmer在设备睡觉之前。
除此之外,如果JTAG无法与580通信,请检查580供电是否正常,检查J5跳线是否放置正确。
你好先生,
我已经完成了以上步骤,我已经解决了在user_config.h文件中设置扩展睡眠模式所发生的问题,提前谢谢你!
1)我下载了SDK版本更新到SDK 5.0.4,在Smart Snippets启动菜单中选择SDK文件夹,安装了推荐的J-link驱动,但是当我在keil的user_config.h文件中设置扩展睡眠模式的值时,我有同样的问题,在第一次闪烁后,我的板根本不被识别,我需要在你之前的帖子中做指导,再次闪烁。我也有数据丢失,数据传输不正确。现在我已经在user_config.h文件中将它设置为ARCH_SLEEP_OFF,有了这个配置,我没有任何问题的闪烁我的板,也没有数据丢失,一切都是传输ok。我还需要做什么吗?比如在keil中设置SDK或将其更新到5.0.4 ?我还在user_periph_setup.h文件中设置了这个值#define cfg_uart_hw_flow_ctrl和#undef cfg_uart_hw_flow_ctrl
2)你能给我更多信息有关如何使用FTDI的信息,以某种方式更改Keil中的代码,以启用DSP数据传输,或者我们只需要连接到我们的Atmel?例如,在TX和RX引脚上,当我们通过Android应用程序发送它时,我们无法看到任何数据,您可以正确地将我在原理图中指示的引脚实际上是TX和RX引脚,而不是PO_5和PO_4在我们的终端或在Atmel Studio中使用调试线模式时,没有任何东西已到达另一边。
提前感谢您的帮助,非常感谢!腻过
1)我很抱歉,但我很困惑,SDK是580使用的软件环境,如果您使用DSP参考设计,那么用较旧的SDK构建,这意味着您对智能片段应用的任何改变Studio不会改变SDK是一个较旧的SDK并在睡眠模式下运行时禁用JTAG,因此如果您想刻录闪烁,您将必须始终按下重置按钮。关于数据丢失,DSP是一个测试的参考设计,如果设备正确设置了设备,如果您面临的那种问题,请尝试使用PC检查设备,如果一切顺为OK,那么这意味着设置的另一侧(外部MCU)的另一侧出现了出现问题,并且其最有可能的HW流量控制引脚(睡眠模式中的580需要那些引脚,以便在准备好接收数据时发信号通知Etxernal MCU)。
2)关于启用转移,我真的没有得到问题,DSP在连接到UART上被传递到连接的设备时,您只需要连接所有四个UART线Rx / Tx / RTS / CTS和OFF课程您必须正确配置外部MCU。
您能否向我提供与SDK 5.0.4下载DSPS Keil项目的链接,因为我无法使用最新的SDK版本I; M接收奇怪的错误来编译DSP项目我已经从网上下载的DSP项目的源代码:HTTPS://support.dialog-semiconductor.com/connectivity/product/da14580 QT ...我也下载了最新的sdk从:HTTPS://support.dialog-semiconductor.com/connectivity/product/da14580 QT ...我想我必须更新Keil SDK,但如何实现这一目标?正确的项目包的任何步骤或链接都非常有帮助我要感谢你的快速回复。
如上所述,DSP的当前版本在上一个SDK版本上建立,最新SDK没有可用版本,以便您需要将现有版本的DSPS移植到新的SDK,这是一种需要时间的新SDK.我认为你已经误解了SDK的含义,它不是你可以在Keil中放置的东西,并使用新的SDK建立一个项目,你必须完全从一个SDK移植到另一个SDK的代码。此外,如果您的担忧是您无法在当前DSPS版本上首先播放设备的事实,您可以搜索此指令setbits16(sys_ctrl_reg,debugger_enable,0);并将其转到1才能使调试器始终启用。
谢谢您的快速回复,
1)是否有必要连接spi引脚到我们的板有外部处理器,当我们最终放置da14580模块它自己?
2)我已经在代码中搜索启用臭虫模式,我看到它已经被设置为1
3)我们将在下一个即将到来的日子里连接UART TX和RX引脚,还使用CTS RTS PIN连接并使用Android DSPS应用来传输数据,我们希望有一些成功并接收数据
如果以上步骤有任何进一步的修正,我们将不胜感激。我们还发现本指南作为参考
https://support.dialog-semicondiondiond.com/resource/b-001-da14580-booting -...
1)没有(如果我理解的问题正确),如果没有使用spi闪存(引导或数据),没有必要连接spi引脚。
2)在Check_sys_startup_period()函数中,在ble_slp_handler()(应该有两个函数中)DSP参考设计中的调试器已禁用SetBits16(sys_ctrl_reg,debugger_enable,0);所以你必须把它切换到1。
3)你收到的附件是580如何开机的,和DSPS项目没有关系。那你想做什么?从外部MCU下载fw还是通过DSPS参考设计与外部MCU通信?无论哪种方式,我没有看到任何额外的连接或额外的代码修改,在DSPS,这个例子为盒子是,它应该是只要你有适当的连接。
感谢您的快速回复!
我们有连接TX Rx和CTS RTS引脚,但我们还没有从对方接收到任何数据
我们能做什么才能成功?我们的代码看起来还可以,还有什么可以尝试的吗?
我无法弄清楚SPI引脚是否是NesAserry,因为如果我只使用UART引脚,那么全部概述
任何建议都非常感谢
提前致谢腻过
关于SPI引脚,如上所述,只有在580中没有FW时,可以使用DSP上的SPI连接,因此当您启动设备时,设备中没有运行(只要您正在开发模式,您不使用OTP),因此您需要SPI连接,以便为580从外部闪存下载图像。所以显然,您不会通过Keil下载图像,而外部处理器正在运行,但您正在启动设备并从SPI下载FW。DSP使用了580使用的一些SPI线,以便启动为UART行,因此我想您已将这些行连接到SPI和FTDI的UART TX / RX。
您可以尝试调试问题是:
正如前面提到的,参考设计是开箱即用的,所以如果实现的另一边是适当的,没有线路问题(连接等),你应该能够实现通信。
你好我的对话提前感谢你的快速反应!
我们已经尝试了以上设置,我们已经禁用了睡眠模式,spi引脚配置在不同的端口比UART端口我们已经测试了我们的程序,在我们的atmel处理器和工作正常但是当我们连接UART引脚时,在另一边什么也没有转移。
并尝试了HW和SW控制请问我们能做些什么来解决这个问题
我们打算投资你们的产品对话框14580提前致谢腻过
让我更清楚一些事情,因为我认为你遗漏了一些东西:
尊敬的先生女士您好!我们已经获得了从另一方收到数据而没有数据丢失!
但是,当我们试图在我们的板上使用开发工具包(如程序员)flash da14580与智能snippets时,我们在智能snippets上收到了这个错误。(atached形象)
我们使用了对话框的推荐闪存。您可以在董事会上提供适当的方法来浏览DA14580。
嗨玛丽奥斯,
哪个接口您用来下载frimware,UART或JTAG?
BTW,我发现P1_3用作BT_TX,是这个UART接口吗?如果GPIO足够,我们不建议客户使用P1_2和P1_3。请查找对话框ANPPLICATION NOTE AN-B-018第3.2章。
致以最亲切的问候
你好!感谢您的快速回复 !
我们的连接从DA14580DEVKIT-B BASIC到我们的定制板是:
spi_miso = p0_5SPI_MOSI = P06po_3 = spi_cs.P0_0 = SPI_CLT_TMS = SWDIOT_TCK = SW_CLK
我们使用jtag接口,我们已经成功地连接了板与jtag,但我们正在接收以下错误日志,当我们试图闪光和werify spi内存通过智能片段:
[INFO SPI闪存编程@ 18-07-31 20时56分19秒]找到SWD-DP与ID 0x0BB11477[INFO SPI闪存编程@ 18-07-31二十时56分20秒] FPUnit:4代码(BP)插槽和0字面槽[INFO SPI Flash Programmer @18-07-31 20:56:20]发现Cortex-M0 r0p0,小端。[INFO SPI Flash Programmer @18-07-31 20:56:20]固件文件C:\DiaSemi\SmartSnippetsStudio\Toolbox\common_resources\jtag_programmer.bin已被选择下载。[信息SPI Flash Programmer @ 18-07-31 20:56:20]成功下载了固件文件到电路板。[信息SPI Flash Programmer @ 18-07-31 20:56:20]成功配置了SPI闪存端口和引脚。[信息SPI Flash Programmer @ 18-07-31 20:56:24]开始从内存中读取32768个字节。[INFO SPI Flash Programmer @18-07-31 20:56:26]读取已完成。读取32768字节。[INFO SPI Flash Programmer @18-07-31 20:56:33] SPI内存擦除成功。[信息SPI Flash Programmer @ 18-07-31 20:56:33]阅读内存以验证其内容擦除后...[ERROR SPI Flash Programmer @18-07-31 20:56:33]在地址0x00验证失败[信息SPI Flash Programmer @ 18-07-31 20:56:33]阅读内存刷新其内容....[INFO SPI Flash Programmer @18-07-31 20:56:35]读取已完成。读取32768字节。[INFO SPI Flash Programmer @18-07-31 20:56:41] SPI内存擦除成功完成。[INFO SPI Flash Programmer @18-07-31 20:56:41] read memory to verify its contents after erase…[错误SPI Flash Programmer @ 18-07-31 20:56:41]验证在地址0x00时失败[信息SPI Flash Programmer @ 18-07-31 20:56:41]阅读内存以刷新内存内容....[INFO SPI Flash Programmer @18-07-31 20:56:41]读取已完成。读取32768字节。[INFO SPI闪存编程@ 18-07-31 20时56分51秒]开始在地址0x00000燃烧用17992个字节的数据的存储器。[INFO SPI Flash Programmer @18-07-31 20:56:53]内存燃烧成功完成。[INFO SPI Flash Programmer @18-07-31 20:56:53]读取内存刷新内存内容....[INFO SPI Flash编程@ 18-07-31 20时56分55秒]阅读已经完成。读取32768字节。[INFO SPI Flash Programmer @18-07-31 20:57:07]开始从内存中读取32768字节。[INFO SPI Flash Programmer @18-07-31 20:57:09]读取已完成。读取32768字节。
让我看看我是否可以提供帮助。
除了您对UART使用了错误的引脚集(如上所述)之外,您上面发布的原理图是正确的。除非您改变DSPS实现中的引脚配置,否则您将需要使用P0_4作为DA14580的TX输出,P0_5作为DA14580的RX输入。这些信号可以在开发套件引脚头(BASIC套件上的J4和PRO套件上的J5)上获得。注意,P0_5已经连接到FLASH的MISO,但这应该不会导致任何问题,只要你保持从选择(/SS或/CE或/EN)在FLASH高-这将迫使MISO去高z。我建议更改DSPS实现中的引脚以避免任何问题,但它应该按原样工作。
有可能您的闪光灯不工作,但请按照这些说明,在我们开始设置产品更换。我们的开发套件构建得非常好,在我担任这个职位的5年里,我没有经历过很多产品的退货:o)
最后,发给我日志进行审查。
/ mhv.
您好,我们已经断开了外部板与Dev套件的连接,我们已为SPI连接设置跳线SPI的计划是SuccSessfull和广播广播。
smartsnippets的日志:
[INFO @18-08-01 16:12:03]固件文件C:\Users\aimon\SmartSnippets\resources\jtag_programmer.bin已被选择下载。[Info @ 18-08-01 16:12:04]成功下载了固件文件到电路板。[INFO @18-08-01 16:12:04]成功配置SPI Flash接口和引脚。[INFO @18-08-01 16:12:08]已经从hex文件sps_device_580.hex中移除头记录。[info @ 18-08-01 16:12:08]从文件sps_device_580.hex中读取17672字节。[info @ 18-08-01 16:12:16] SPI Memory擦除成功完成。[INFO @ 18-08-01 16点12分16秒]读记忆中抹去后验证其内容...[info @ 18-08-01 16:12:18]验证成功了。[INFO @18-08-01 16:12:18]阅读记忆刷新其内容....阅读结束了。读取32768字节。[INFO @18-08-01 16:12:43]在地址0x00000开始烧存17992字节的数据。[INFO @18-08-01 16:12:43]内存燃烧成功完成[INFO @18-08-01 16:12:43]读取内存来验证SPI FLash烧录后的内容…[信息@ 18-08-01 16:12:44] SPI闪存验证成功。
接下来,我们用spi连接再次将我们的定制板连接到开发工具包我们有叶子的日志为了成功连接并读取内存,我们必须一直按下重置按钮,否则我们接收到的错误播种在日志的第一行
Smartsnipets的日志
[INFO @18-08-01 16:36:34]固件文件C:\Users\aimon\SmartSnippets\resources\jtag_programmer.bin已被选择下载。[ERROR @18-08-01 16:36:34]写入文件C:\Users\aimon\SmartSnippets\resources\ jtag_programer .bin在地址80000处失败。[info @ 18-08-01 16:36:34]将固件文件下载到电路板上失败。[INFO @ 18-08-01十六时36分34秒]未能配置SPI闪存接口和引脚。[INFO @ 18-08-01 16时37分06秒]固件文件C:\用户\ AIMON \ SmartSnippets \资源\ jtag_programmer.bin已被选择用于下载。[WARNING @18-08-01 16:37:07] XPSR的t位为0,但应该为1。更改为1。[INFO @18-08-01 16:37:07]成功下载固件文件到单板。[INFO @ 18-08-01 16时37分07秒]已成功配置SPI闪存端口和引脚。[INFO @18-08-01 16:37:21]开始从内存中读取32768字节。[info @ 18-08-01 16:37:22]阅读已经完成。读取32768字节。[INFO @ 18-08-01 16时37分55秒]头记录已经从十六进制文件sps_device_580.hex删除。[INFO @18-08-01 16:37:55]从sps_device_580.hex文件中读取17672字节。[Info @ 18-08-01 16:38:09]图像尺寸添加可引导标题后是:17992[信息@ 18-08-01 16:38:09]开始刻录内存,在地址0x00000处使用17992字节的数据。[ERROR @18-08-01 16:38:09]在地址20000000写入字节失败。[ERROR @18-08-01 16:38:09]内存燃烧失败。
您已经将固件镜像编程到闪存中,这意味着ROM引导加载程序将在设备启动时找到并执行该镜像。重置设备只给你一个非常简短的窗口,用JTAG“捕捉”设备。如果你移除连接到闪光灯的一个跳线(开发套件J4/J5的引脚23-24将切断闪光灯的电源),重置目标,按“连接”,然后再次放置跳线。此时,flash加载器图像将已加载,您可以再次擦除并对flash进行编程。从日志上看,你在试图编程之前忘记了擦除闪存。
你好!MHv_Dialog !
这是来自智能片段的日志
EVLething是正确的连接,但是当我命中擦除时,我有来自SmartSnipet的叶子日志
[INFO SPI Flash @18-08-01 20:34:24]找到ID为0x0BB11477的SWD-DP[INFO SPI Flash @18-08-01 20:34:24] FPUnit: 4个代码(BP)槽和0个文字槽[INFO SPI Flash @18-08-01 20:34:24] Found Cortex-M0 r0p0, Little endian. [INFO SPI Flash @18-08-01 20:34:24][INFO SPI Flash @18-08-01 20:34:24]固件文件C:\DiaSemi\ smartsnippetstudio \Toolbox\common_resources\ jtag_programder .bin已被选择下载。[信息SPI Flash @ 18-08-01 20:34:24]成功下载了固件文件到电路板。[INFO SPI闪存@ 18-08-01 20时34分25秒]已成功配置SPI闪存端口和引脚。[INFO SPI Flash @18-08-01 20:34:28]开始从内存中读取32768字节。[INFO SPI Flash @18-08-01 20:34:29]读取结束。读取32768字节。[信息SPI Flash @ 18-08-01 20:34:38] SPI内存擦除成功完成。[信息SPI Flash @ 18-08-01 20:34:38]阅读内存以验证其内容擦除后...[错误SPI闪存@ 18-08-01 20点34分38秒]验证失败地址0x00处[INFO SPI闪存@ 18-08-01 20时34分38秒]读内存刷新其内容....[INFO SPI Flash @18-08-01 20:34:39]读取完毕。读取32768字节。
提前腻过
这是良好的数据。我们现在可以得出结论,您的外部处理器正在干扰闪存读取操作。这可能是由P0_5引脚的混合使用引起的(从您的处理器和闪光和DA1458x之间的处理器和MISO)引起的。外部处理器UART的输出驱动器对于闪光灯的味噌来说太强大,可以自由地切换。您可以用示波器确认此。
解决此问题的首选方法是打开DSPS项目并将UART RX引脚从P0_5更改为您选择的其他一些引脚。或者,您可以尝试在外部处理器的TX(比如1kOhm)和P0_5头引脚之间放置一个串联电阻。这不是一个很好的解决方案,因为它增加了信号的负载并增加了功耗,但可能是一个快速前进的方法。
你好MHv_Dialog ! !感谢您的快速回复!!!
正如您可以从所附的连接图中看到的uart引脚p0_5 RX有机会引脚p1_3,以避免与spi冲突。
此错误与UART连接有关吗?
提前,腻过
我很迷惑。刚才您提供那是什么原理?什么是J7的prurpose?
到目前为止,我的理解是,您正在以以下方式使用DA14580 BASIC开发工具包:
你的原理图2018 - 08 - 01 - _22.38.26.pdf不匹配的了解,所以我需要你打破你想实现什么。
你好 !!!
1)我们已经将数据从dsps android app传输到我们定制的微控制器。使用devkit spi flash和连接uart引脚到我们的微控制器。和数据传输SuccSsessfull。
现在我们已经放弃了我们的董事会,有我们的atmel处理器和对话da14580一起和闪存spi从启动的dsp。
我们想要以某种方式闪存SPI内存。
这怎么能achived闪烁的SPI这是我们的定制电路板?
是否有可能与Dev套件进行完成?还是别的什么样的程序员?
感谢您的解释。我认为这很清楚你现在想要做什么; o)
当然可以使用DA14580基本套件和SmartSnippet来编程您的自定义板。请参阅提取指南(https://support.dialog-seminile.com/system/files/resources/training_07_da1458x_prototype_bring_up_guide-v1.2.pdf.,第23页)有关详细信息 - 只需四个连接,GND,SW_CLK,SW_DIO和可选地是RST。
你好!! MHv_Dialog !谢谢您的快速回复!!
WERY帮助!谢谢,我很快就会尝试一下,我会让你保持联系!
现在我明白了,miso-mosi和其他别针不必在编程过程中被连接,但必须被连接到spi flash为启动过程时,flash完成,
和只有四个引脚,你说在上面的闪光过程中。
你好!mhv_dialog!
今天我们测试了推荐的连接,我们成功了!我们的SPI内存已经删除和验证了成功,我们已经击中了记忆!但是我们收到了一个验证错误在智能nipets日志播种在附件的PDF文件
董事会广播名称,我们conected sucseesfully如预期!我们还没有测试传输数据,但看起来很好,很有效。
但是为什么我们在闪过记忆之后会出现这种错误呢?然后提前,腻过
这真是个好消息。
验证错误可能是由您的JTAG线路造成的。您应该将长度限制为不超过2-3英寸以确保正确的传输。
你好mhv_dialog!
super!感谢您的快速回复 !我们有限制JTAG电线的长度,现在我们已经取得了!非常成功地刻录闪存!
在KEIL的DSPS代码中,我们如何能启用da14580的深度睡眠模式?
很高兴你能够烧SPI闪光通过JTAG。DSPS参考设计不支持深度睡眠模式。请参考DSPS用户手册(UM-B-038),你会发现只支持扩展睡眠模式。如果你想改变睡眠模式,你应该配置app_default_sleep_mode正确定义的价值user_config.h标题文件。请检查以下代码片段:
const static sleep_state_t app_default_sleep_mode = ARCH_EXT_SLEEP_ON;
const static sleep_state_t app_default_sleep_mode = ARCH_SLEEP_OFF;
谢谢,PM_Dialog
你好PM_DIALOG!
谢谢您的快速回复!
我已经看到,在SDK DSPS项目上的User_Config文件中,Project的功能具有在DSP项目上启用DSPS项目的深度睡眠模式,并且在Atached PDF文件中可以看到Config_Basic文件。如果我在user_config文件中选择ARCH_DEEP_SLEEP_ON,并在config_basic文件中定义CFG_MEM_MAP_DEEP_SLEEP选项,该设置是否在dsps项目中启用深度睡眠?非常感谢您的帮助和您的时间!
正如我在我以前的帖子已经提到,在DSPS应用程序代码不支持深度睡眠模式,所以CFG_MEM_MAP_DEEP_SLEEP宏不启用深度睡眠。
你好PM_Dialog !
在DSP项目的扩展深度睡眠模式下设备处于休眠状态时的功耗是多少?在连接模式下的功耗是多少?
非常感谢您的时间和宝贵的帮助!
在活动模式下的电流消耗约为0.6mA,在扩展睡眠模式下约为1.4uA。
这是aswome消息!高超!谢谢你快速的回复 !
1)我们还想要在SPI闪存过程中更改每个设备的蓝牙名称是可能的吗?
2)蓝牙地址UUID必须是独一无二的吗?或者我们可以使用Divent Brodcast名称的所有生成设备使用默认的UUID?
如果你有任何其他问题,请在论坛上创建一个新的帖子,因为这个帖子与你的上一个问题无关。如果你不知道如何创建一个新职位,请让我知道,我会为你提供适当的步骤
是的,如果您可以指导我在论坛上开设一个新的线程,非常感谢!
我一直在帮助和反馈部分,对吗?
提前致谢 ,腻过
据我所描述的步骤,你不应该一直在帮助和反馈部分。你会发现附着的上述步骤的截图。
嗨腻过,
据我所知,我不太明白,我想告诉你想要从外部MCU向580发送数据,那么这些数据应该通过蓝牙推动,如果是这种情况,无需更改DSPS代码。DSP应用程序将从UART端口获取数据并通过BLE将数据通信到连接的另一侧,您必须做的就是通过UART配置和连接外部MCU(RX / TX和RTS / CTS想使用H / W流量控制 - 这是唯一可以可靠地传输UART数据的方法,并在扩展睡眠模式下具有580)。
由于MT_dialog
感谢您的快速回复!!
好的,如果我理解正确,DSPS代码是在DA14580上通过SmartSnippets的JTAG闪存,我需要配置的唯一是我的外部处理器(MCU)中的代码。
当然,还有一个数据接收检查函数,它将检查从DA14580接收到的通过UART的数据是否正确,并继续执行我们想要实现的结果。
如果我错了,请纠正我
如有任何进一步的建议,我们将不胜感激。
提前谢谢,
腻过
嗨腻过,
是的,DSPS是一个独立的应用程序,无论数据给出的UART端口上时,它将把他们连接的另一端(当然,你需要一个合适的客户端支持DSPS这是一个对话框礼轮廓 - 像DSPS的Android /奥斯应用程序或另一580运行DSPS的宿主应用程序)。
我不太明白你说的“接收支票功能”是什么意思,你能解释一下吗?
由于MT_dialog
你好mt_dialog.
感谢您的快速回复 !
我们已将我们的Atmel处理器连接了对话框DA14580开发套件 - 基本如下所示。
(da rx - >到外部Atmel Tx)和(da tx->到外部atmel rx)
我们也尝试了与外部处理器相反的连接。
但是在我们的ATMEL处理器中没有收到任何数据,我们使用官方的DSPS android应用程序发送数据。
1)我们还需要做些什么吗?
2)必须将SPI连接从DA板连接到我们的Atmel处理器,以将数据传输到另一侧?
我们已经使SPI配置与附件中的SPI配置一样。
3)在DA VIN引脚3,3中位于电路板中,因为现在仅从USB端口启动。
最后,我需要在哪个代码中设置580的扩展睡眠模式来传输数据?
提前谢谢,
腻过。
嗨腻过,
1) DSPS被设计为与h/w流量控制启用正常工作,所以你也需要连接CTS/RTS,因为当睡眠启用时,外部设备需要知道580何时是醒着的,以便发送数据。也可以使用s/w流量控制,但在设备上会有丢失的数据。
2)不,它没有必要连接SPI引脚,当你运行DSPS应用程序,除非如果你打算从SPI flash启动fw,专业套件板载。
3)关于最后一个问题,如果你不想从USB电力董事会可以附加电源J5头销1 (VBAT_580),但你也需要下载固件到设备,所以你要通过凯尔从门限来引导,这当然需要USB或烧录OTP或SPI或通过UART引导。默认情况下,DSPS预先配置了启用了扩展睡眠模式,您可以在app_default_sleep_mode结构的user_config.h文件中检查这一点。
关于你的连接,在已连接的已连接了实现JLINK,以便用来打印数据输出从基本开发工具的Atmel的UART的RX和TX线并且在UART端口之间没有连接的示意的580和您的ATMEL处理器的,即要表示为P04和P05是不正确的,在J4这些引脚是exectly在从要指示一个前的那些销,可以检查的原理图和说明书关于更多的信息的基本试剂盒(UM-B-048入门DA1458x),以及其建议在这个和SEGGER MCU的不UART使用FTDI。
由于MT_dialog
亲爱的MT_dialog
我已将user_config.h文件中的设置更改为扩展睡眠模式启用
当我试图闪光我的板时,我得到以下错误:
[INFO General @17-06-12 23:40:12]无法测量总的IR len。TDO是恒定的。
[INFO General @17-06-12 23:40:12]无法测量总的IR len。TDO是恒定的。
[信息概述@ 17-06-12 23:40:13]无法衡量总IR LEN。TDO是恒定的。
[信息概述@ 17-06-12 23:40:13]无法衡量总IR LEN。TDO是恒定的。
[信息概述@ 17-06-12 23:40:13]无法衡量总IR LEN。TDO是恒定的。
[ERROR General @17-06-12 23:40:13] unable not read memory address 0x50003200 with function JLINKARM_ReadMemHW .]日志含义
[ERROR General @17-06-12 23:40:14]打开JLink连接时未发现已知芯片。终止过程中…
[错误SPI闪存程序员@ 17-06-12 23:40:14]将固件文件下载到电路板上失败。
[错误SPI Flash编程@ 17-06-12 23时四十分14秒]未能配置SPI闪存接口和引脚。
我的板子处于spi模式
我怎么可以解决售后服务这个问题?
提前谢谢,
腻过
嗨腻过,
从您所附的日志中,我想你正在使用智能片段工具,以便在董事会上刻录SPI闪光灯,我也假设您已经在SPI中刻录了睡眠状态,并在睡眠后烧伤了睡眠启用FW,您无法与智能片段连接并撤销闪存(我假设您烧焦的FW基于5.0.4岁的SDK)。此外,我假设您通过JTAG接口连接到智能代码段。从5.0.4的SDK是即使在睡眠模式下,所有先前的版本也能够保持580的调试器模块,所有先前的版本都禁用模块,因此当智能片段尝试下载Flash_Programmer以闪存它失败以来它找不到580上的调试器模块。您可以做的就是在电路板上的重置按钮,在2秒内(对于XTAL32,在2秒内停留2秒钟以解决)点击智能片段上的连接,这将下载Flash_programmer在设备睡觉之前。
除此之外,如果JTAG无法与580通信,请检查580供电是否正常,检查J5跳线是否放置正确。
由于MT_dialog
你好先生,
我已经完成了以上步骤,我已经解决了在user_config.h文件中设置扩展睡眠模式所发生的问题,提前谢谢你!
1)我下载了SDK版本更新到SDK 5.0.4,在Smart Snippets启动菜单中选择SDK文件夹,安装了推荐的J-link驱动,但是当我在keil的user_config.h文件中设置扩展睡眠模式的值时,我有同样的问题,在第一次闪烁后,我的板根本不被识别,我需要在你之前的帖子中做指导,再次闪烁。我也有数据丢失,数据传输不正确。现在我已经在user_config.h文件中将它设置为ARCH_SLEEP_OFF,有了这个配置,我没有任何问题的闪烁我的板,也没有数据丢失,一切都是传输ok。我还需要做什么吗?比如在keil中设置SDK或将其更新到5.0.4 ?
我还在user_periph_setup.h文件中设置了这个值#define cfg_uart_hw_flow_ctrl和#undef cfg_uart_hw_flow_ctrl
2)你能给我更多信息有关如何使用FTDI的信息,以某种方式更改Keil中的代码,以启用DSP数据传输,或者我们只需要连接到我们的Atmel?例如,在TX和RX引脚上,当我们通过Android应用程序发送它时,我们无法看到任何数据,您可以正确地将我在原理图中指示的引脚实际上是TX和RX引脚,而不是PO_5和PO_4在我们的终端或在Atmel Studio中使用调试线模式时,没有任何东西已到达另一边。
提前感谢您的帮助,非常感谢!
腻过
嗨腻过,
1)我很抱歉,但我很困惑,SDK是580使用的软件环境,如果您使用DSP参考设计,那么用较旧的SDK构建,这意味着您对智能片段应用的任何改变Studio不会改变SDK是一个较旧的SDK并在睡眠模式下运行时禁用JTAG,因此如果您想刻录闪烁,您将必须始终按下重置按钮。关于数据丢失,DSP是一个测试的参考设计,如果设备正确设置了设备,如果您面临的那种问题,请尝试使用PC检查设备,如果一切顺为OK,那么这意味着设置的另一侧(外部MCU)的另一侧出现了出现问题,并且其最有可能的HW流量控制引脚(睡眠模式中的580需要那些引脚,以便在准备好接收数据时发信号通知Etxernal MCU)。
2)关于启用转移,我真的没有得到问题,DSP在连接到UART上被传递到连接的设备时,您只需要连接所有四个UART线Rx / Tx / RTS / CTS和OFF课程您必须正确配置外部MCU。
由于MT_dialog
你好先生,
您能否向我提供与SDK 5.0.4下载DSPS Keil项目的链接,因为我无法使用最新的SDK版本I; M接收奇怪的错误来编译DSP项目
我已经从网上下载的DSP项目的源代码:HTTPS://support.dialog-semiconductor.com/connectivity/product/da14580 QT ...
我也下载了最新的sdk从:HTTPS://support.dialog-semiconductor.com/connectivity/product/da14580 QT ...
我想我必须更新Keil SDK,但如何实现这一目标?正确的项目包的任何步骤或链接都非常有帮助
我要感谢你的快速回复。
提前谢谢,
腻过
嗨腻过,
如上所述,DSP的当前版本在上一个SDK版本上建立,最新SDK没有可用版本,以便您需要将现有版本的DSPS移植到新的SDK,这是一种需要时间的新SDK.我认为你已经误解了SDK的含义,它不是你可以在Keil中放置的东西,并使用新的SDK建立一个项目,你必须完全从一个SDK移植到另一个SDK的代码。此外,如果您的担忧是您无法在当前DSPS版本上首先播放设备的事实,您可以搜索此指令setbits16(sys_ctrl_reg,debugger_enable,0);并将其转到1才能使调试器始终启用。
由于MT_dialog
谢谢您的快速回复,
1)是否有必要连接spi引脚到我们的板有外部处理器,当我们最终放置da14580模块它自己?
2)我已经在代码中搜索启用臭虫模式,我看到它已经被设置为1
3)我们将在下一个即将到来的日子里连接UART TX和RX引脚,还使用CTS RTS PIN连接并使用Android DSPS应用来传输数据,我们希望有一些成功并接收数据
如果以上步骤有任何进一步的修正,我们将不胜感激。
我们还发现本指南作为参考
https://support.dialog-semicondiondiond.com/resource/b-001-da14580-booting -...
提前谢谢,
腻过
嗨腻过,
1)没有(如果我理解的问题正确),如果没有使用spi闪存(引导或数据),没有必要连接spi引脚。
2)在Check_sys_startup_period()函数中,在ble_slp_handler()(应该有两个函数中)DSP参考设计中的调试器已禁用SetBits16(sys_ctrl_reg,debugger_enable,0);所以你必须把它切换到1。
3)你收到的附件是580如何开机的,和DSPS项目没有关系。那你想做什么?从外部MCU下载fw还是通过DSPS参考设计与外部MCU通信?无论哪种方式,我没有看到任何额外的连接或额外的代码修改,在DSPS,这个例子为盒子是,它应该是只要你有适当的连接。
由于MT_dialog
感谢您的快速回复!
我们有连接TX Rx和CTS RTS引脚,但我们还没有从对方接收到任何数据
我们能做什么才能成功?
我们的代码看起来还可以,还有什么可以尝试的吗?
我无法弄清楚SPI引脚是否是NesAserry,因为如果我只使用UART引脚,那么全部概述
任何建议都非常感谢
提前致谢
腻过
嗨腻过,
关于SPI引脚,如上所述,只有在580中没有FW时,可以使用DSP上的SPI连接,因此当您启动设备时,设备中没有运行(只要您正在开发模式,您不使用OTP),因此您需要SPI连接,以便为580从外部闪存下载图像。所以显然,您不会通过Keil下载图像,而外部处理器正在运行,但您正在启动设备并从SPI下载FW。DSP使用了580使用的一些SPI线,以便启动为UART行,因此我想您已将这些行连接到SPI和FTDI的UART TX / RX。
您可以尝试调试问题是:
正如前面提到的,参考设计是开箱即用的,所以如果实现的另一边是适当的,没有线路问题(连接等),你应该能够实现通信。
由于MT_dialog
你好我的对话提前感谢你的快速反应!
我们已经尝试了以上设置,我们已经禁用了睡眠模式,spi引脚配置在不同的端口比UART端口
我们已经测试了我们的程序,在我们的atmel处理器和工作正常
但是当我们连接UART引脚时,在另一边什么也没有转移。
并尝试了HW和SW控制
请问我们能做些什么来解决这个问题
我们打算投资你们的产品
对话框14580
提前致谢
腻过
嗨腻过,
让我更清楚一些事情,因为我认为你遗漏了一些东西:
由于MT_dialog
尊敬的先生女士您好!
我们已经获得了从另一方收到数据而没有数据丢失!
但是,当我们试图在我们的板上使用开发工具包(如程序员)flash da14580与智能snippets时,我们在智能snippets上收到了这个错误。(atached形象)
我们使用了对话框的推荐闪存。
您可以在董事会上提供适当的方法来浏览DA14580。
提前谢谢,
腻过
嗨玛丽奥斯,
哪个接口您用来下载frimware,UART或JTAG?
BTW,我发现P1_3用作BT_TX,是这个UART接口吗?如果GPIO足够,我们不建议客户使用P1_2和P1_3。
请查找对话框ANPPLICATION NOTE AN-B-018第3.2章。
致以最亲切的问候
你好!
感谢您的快速回复 !
我们的连接从DA14580DEVKIT-B BASIC到我们的定制板是:
spi_miso = p0_5
SPI_MOSI = P06
po_3 = spi_cs.
P0_0 = SPI_CL
T_TMS = SWDIO
T_TCK = SW_CLK
我们使用jtag接口,我们已经成功地连接了板与jtag,但我们正在接收以下错误日志,当我们试图闪光和werify spi内存通过智能片段:
[INFO SPI闪存编程@ 18-07-31 20时56分19秒]找到SWD-DP与ID 0x0BB11477
[INFO SPI闪存编程@ 18-07-31二十时56分20秒] FPUnit:4代码(BP)插槽和0字面槽
[INFO SPI Flash Programmer @18-07-31 20:56:20]发现Cortex-M0 r0p0,小端。
[INFO SPI Flash Programmer @18-07-31 20:56:20]固件文件C:\DiaSemi\SmartSnippetsStudio\Toolbox\common_resources\jtag_programmer.bin已被选择下载。
[信息SPI Flash Programmer @ 18-07-31 20:56:20]成功下载了固件文件到电路板。
[信息SPI Flash Programmer @ 18-07-31 20:56:20]成功配置了SPI闪存端口和引脚。
[信息SPI Flash Programmer @ 18-07-31 20:56:24]开始从内存中读取32768个字节。
[INFO SPI Flash Programmer @18-07-31 20:56:26]读取已完成。读取32768字节。
[INFO SPI Flash Programmer @18-07-31 20:56:33] SPI内存擦除成功。
[信息SPI Flash Programmer @ 18-07-31 20:56:33]阅读内存以验证其内容擦除后...
[ERROR SPI Flash Programmer @18-07-31 20:56:33]在地址0x00验证失败
[信息SPI Flash Programmer @ 18-07-31 20:56:33]阅读内存刷新其内容....
[INFO SPI Flash Programmer @18-07-31 20:56:35]读取已完成。读取32768字节。
[INFO SPI Flash Programmer @18-07-31 20:56:41] SPI内存擦除成功完成。
[INFO SPI Flash Programmer @18-07-31 20:56:41] read memory to verify its contents after erase…
[错误SPI Flash Programmer @ 18-07-31 20:56:41]验证在地址0x00时失败
[信息SPI Flash Programmer @ 18-07-31 20:56:41]阅读内存以刷新内存内容....
[INFO SPI Flash Programmer @18-07-31 20:56:41]读取已完成。读取32768字节。
[INFO SPI闪存编程@ 18-07-31 20时56分51秒]开始在地址0x00000燃烧用17992个字节的数据的存储器。
[INFO SPI Flash Programmer @18-07-31 20:56:53]内存燃烧成功完成。
[INFO SPI Flash Programmer @18-07-31 20:56:53]读取内存刷新内存内容....
[INFO SPI Flash编程@ 18-07-31 20时56分55秒]阅读已经完成。读取32768字节。
[INFO SPI Flash Programmer @18-07-31 20:57:07]开始从内存中读取32768字节。
[INFO SPI Flash Programmer @18-07-31 20:57:09]读取已完成。读取32768字节。
提前谢谢,
腻过
嗨玛丽奥斯,
让我看看我是否可以提供帮助。
除了您对UART使用了错误的引脚集(如上所述)之外,您上面发布的原理图是正确的。除非您改变DSPS实现中的引脚配置,否则您将需要使用P0_4作为DA14580的TX输出,P0_5作为DA14580的RX输入。这些信号可以在开发套件引脚头(BASIC套件上的J4和PRO套件上的J5)上获得。注意,P0_5已经连接到FLASH的MISO,但这应该不会导致任何问题,只要你保持从选择(/SS或/CE或/EN)在FLASH高-这将迫使MISO去高z。我建议更改DSPS实现中的引脚以避免任何问题,但它应该按原样工作。
有可能您的闪光灯不工作,但请按照这些说明,在我们开始设置产品更换。我们的开发套件构建得非常好,在我担任这个职位的5年里,我没有经历过很多产品的退货:o)
最后,发给我日志进行审查。
/ mhv.
您好,我们已经断开了外部板与Dev套件的连接,我们已为SPI连接设置跳线
SPI的计划是SuccSessfull和广播广播。
smartsnippets的日志:
[INFO @18-08-01 16:12:03]固件文件C:\Users\aimon\SmartSnippets\resources\jtag_programmer.bin已被选择下载。
[Info @ 18-08-01 16:12:04]成功下载了固件文件到电路板。
[INFO @18-08-01 16:12:04]成功配置SPI Flash接口和引脚。
[INFO @18-08-01 16:12:08]已经从hex文件sps_device_580.hex中移除头记录。
[info @ 18-08-01 16:12:08]从文件sps_device_580.hex中读取17672字节。
[info @ 18-08-01 16:12:16] SPI Memory擦除成功完成。
[INFO @ 18-08-01 16点12分16秒]读记忆中抹去后验证其内容...
[info @ 18-08-01 16:12:18]验证成功了。
[INFO @18-08-01 16:12:18]阅读记忆刷新其内容....
阅读结束了。读取32768字节。
[INFO @18-08-01 16:12:43]在地址0x00000开始烧存17992字节的数据。
[INFO @18-08-01 16:12:43]内存燃烧成功完成
[INFO @18-08-01 16:12:43]读取内存来验证SPI FLash烧录后的内容…
[信息@ 18-08-01 16:12:44] SPI闪存验证成功。
接下来,我们用spi连接再次将我们的定制板连接到开发工具包
我们有叶子的日志
为了成功连接并读取内存,我们必须一直按下重置按钮,否则我们接收到的错误播种在日志的第一行
Smartsnipets的日志
[INFO @18-08-01 16:36:34]固件文件C:\Users\aimon\SmartSnippets\resources\jtag_programmer.bin已被选择下载。
[ERROR @18-08-01 16:36:34]写入文件C:\Users\aimon\SmartSnippets\resources\ jtag_programer .bin在地址80000处失败。
[info @ 18-08-01 16:36:34]将固件文件下载到电路板上失败。
[INFO @ 18-08-01十六时36分34秒]未能配置SPI闪存接口和引脚。
[INFO @ 18-08-01 16时37分06秒]固件文件C:\用户\ AIMON \ SmartSnippets \资源\ jtag_programmer.bin已被选择用于下载。
[WARNING @18-08-01 16:37:07] XPSR的t位为0,但应该为1。更改为1。
[INFO @18-08-01 16:37:07]成功下载固件文件到单板。
[INFO @ 18-08-01 16时37分07秒]已成功配置SPI闪存端口和引脚。
[INFO @18-08-01 16:37:21]开始从内存中读取32768字节。
[info @ 18-08-01 16:37:22]阅读已经完成。读取32768字节。
[INFO @ 18-08-01 16时37分55秒]头记录已经从十六进制文件sps_device_580.hex删除。
[INFO @18-08-01 16:37:55]从sps_device_580.hex文件中读取17672字节。
[Info @ 18-08-01 16:38:09]图像尺寸添加可引导标题后是:17992
[信息@ 18-08-01 16:38:09]开始刻录内存,在地址0x00000处使用17992字节的数据。
[ERROR @18-08-01 16:38:09]在地址20000000写入字节失败。
[ERROR @18-08-01 16:38:09]内存燃烧失败。
提前谢谢,
腻过
嗨玛丽奥斯,
您已经将固件镜像编程到闪存中,这意味着ROM引导加载程序将在设备启动时找到并执行该镜像。重置设备只给你一个非常简短的窗口,用JTAG“捕捉”设备。如果你移除连接到闪光灯的一个跳线(开发套件J4/J5的引脚23-24将切断闪光灯的电源),重置目标,按“连接”,然后再次放置跳线。此时,flash加载器图像将已加载,您可以再次擦除并对flash进行编程。从日志上看,你在试图编程之前忘记了擦除闪存。
/ mhv.
你好!MHv_Dialog !
这是来自智能片段的日志
EVLething是正确的连接,但是当我命中擦除时,我有来自SmartSnipet的叶子日志
[INFO SPI Flash @18-08-01 20:34:24]找到ID为0x0BB11477的SWD-DP
[INFO SPI Flash @18-08-01 20:34:24] FPUnit: 4个代码(BP)槽和0个文字槽
[INFO SPI Flash @18-08-01 20:34:24] Found Cortex-M0 r0p0, Little endian. [INFO SPI Flash @18-08-01 20:34:24]
[INFO SPI Flash @18-08-01 20:34:24]固件文件C:\DiaSemi\ smartsnippetstudio \Toolbox\common_resources\ jtag_programder .bin已被选择下载。
[信息SPI Flash @ 18-08-01 20:34:24]成功下载了固件文件到电路板。
[INFO SPI闪存@ 18-08-01 20时34分25秒]已成功配置SPI闪存端口和引脚。
[INFO SPI Flash @18-08-01 20:34:28]开始从内存中读取32768字节。
[INFO SPI Flash @18-08-01 20:34:29]读取结束。读取32768字节。
[信息SPI Flash @ 18-08-01 20:34:38] SPI内存擦除成功完成。
[信息SPI Flash @ 18-08-01 20:34:38]阅读内存以验证其内容擦除后...
[错误SPI闪存@ 18-08-01 20点34分38秒]验证失败地址0x00处
[INFO SPI闪存@ 18-08-01 20时34分38秒]读内存刷新其内容....
[INFO SPI Flash @18-08-01 20:34:39]读取完毕。读取32768字节。
提前
腻过
嗨玛丽奥斯,
这是良好的数据。我们现在可以得出结论,您的外部处理器正在干扰闪存读取操作。这可能是由P0_5引脚的混合使用引起的(从您的处理器和闪光和DA1458x之间的处理器和MISO)引起的。外部处理器UART的输出驱动器对于闪光灯的味噌来说太强大,可以自由地切换。您可以用示波器确认此。
解决此问题的首选方法是打开DSPS项目并将UART RX引脚从P0_5更改为您选择的其他一些引脚。或者,您可以尝试在外部处理器的TX(比如1kOhm)和P0_5头引脚之间放置一个串联电阻。这不是一个很好的解决方案,因为它增加了信号的负载并增加了功耗,但可能是一个快速前进的方法。
/ mhv.
你好MHv_Dialog ! !
感谢您的快速回复!!!
正如您可以从所附的连接图中看到的
uart引脚p0_5 RX有机会引脚p1_3,以避免与spi冲突。
此错误与UART连接有关吗?
提前,
腻过
嗨玛丽奥斯,
我很迷惑。刚才您提供那是什么原理?什么是J7的prurpose?
到目前为止,我的理解是,您正在以以下方式使用DA14580 BASIC开发工具包:
你的原理图2018 - 08 - 01 - _22.38.26.pdf不匹配的了解,所以我需要你打破你想实现什么。
/ mhv.
你好 !!!
1)我们已经将数据从dsps android app传输到我们定制的微控制器。使用devkit spi flash和连接uart引脚到我们的微控制器。
和数据传输SuccSsessfull。
现在我们已经放弃了我们的董事会,有我们的atmel处理器和对话da14580一起和闪存spi从启动的dsp。
我们想要以某种方式闪存SPI内存。
这怎么能achived闪烁的SPI这是我们的定制电路板?
是否有可能与Dev套件进行完成?
还是别的什么样的程序员?
提前致谢
腻过
嗨玛丽奥斯,
感谢您的解释。我认为这很清楚你现在想要做什么; o)
当然可以使用DA14580基本套件和SmartSnippet来编程您的自定义板。请参阅提取指南(https://support.dialog-seminile.com/system/files/resources/training_07_da1458x_prototype_bring_up_guide-v1.2.pdf.,第23页)有关详细信息 - 只需四个连接,GND,SW_CLK,SW_DIO和可选地是RST。
/ mhv.
你好!! MHv_Dialog !
谢谢您的快速回复!!
WERY帮助!
谢谢,我很快就会尝试一下,我会让你保持联系!
现在我明白了,miso-mosi和其他别针
不必在编程过程中被连接,但必须被连接到spi flash为启动过程时,flash完成,
和只有四个引脚,你说在上面的闪光过程中。
提前,
腻过
你好!mhv_dialog!
今天我们测试了推荐的连接,我们成功了!
我们的SPI内存已经删除和验证了成功,我们已经击中了记忆!
但是我们收到了一个验证错误
在智能nipets日志播种在附件的PDF文件
董事会广播名称,我们conected sucseesfully如预期!
我们还没有测试传输数据,但看起来很好,很有效。
但是为什么我们在闪过记忆之后会出现这种错误呢?
然后提前,
腻过
嗨玛丽奥斯,
这真是个好消息。
验证错误可能是由您的JTAG线路造成的。您应该将长度限制为不超过2-3英寸以确保正确的传输。
/ mhv.
你好mhv_dialog!
super!感谢您的快速回复 !
我们有限制JTAG电线的长度,现在我们已经取得了!非常成功地刻录闪存!
在KEIL的DSPS代码中,我们如何能启用da14580的深度睡眠模式?
提前谢谢,
腻过
嗨腻过,
很高兴你能够烧SPI闪光通过JTAG。DSPS参考设计不支持深度睡眠模式。请参考DSPS用户手册(UM-B-038),你会发现只支持扩展睡眠模式。如果你想改变睡眠模式,你应该配置app_default_sleep_mode正确定义的价值user_config.h标题文件。请检查以下代码片段:
const static sleep_state_t app_default_sleep_mode = ARCH_EXT_SLEEP_ON;
const static sleep_state_t app_default_sleep_mode = ARCH_SLEEP_OFF;
谢谢,PM_Dialog
你好PM_DIALOG!
谢谢您的快速回复!
我已经看到,在SDK DSPS项目上的User_Config文件中,Project的功能具有在DSP项目上启用DSPS项目的深度睡眠模式,并且在Atached PDF文件中可以看到Config_Basic文件。
如果我在user_config文件中选择ARCH_DEEP_SLEEP_ON,并在config_basic文件中定义CFG_MEM_MAP_DEEP_SLEEP选项,该设置是否在dsps项目中启用深度睡眠?
非常感谢您的帮助和您的时间!
提前,
腻过
嗨腻过,
正如我在我以前的帖子已经提到,在DSPS应用程序代码不支持深度睡眠模式,所以CFG_MEM_MAP_DEEP_SLEEP宏不启用深度睡眠。
谢谢,PM_Dialog
你好PM_Dialog !
感谢您的快速回复 !
在DSP项目的扩展深度睡眠模式下
设备处于休眠状态时的功耗是多少?在连接模式下的功耗是多少?
非常感谢您的时间和宝贵的帮助!
提前,
腻过
嗨腻过,
在活动模式下的电流消耗约为0.6mA,在扩展睡眠模式下约为1.4uA。
谢谢,PM_Dialog
你好PM_Dialog !
这是aswome消息!高超!谢谢你快速的回复 !
1)我们还想要在SPI闪存过程中更改每个设备的蓝牙名称是可能的吗?
2)蓝牙地址UUID必须是独一无二的吗?或者我们可以使用Divent Brodcast名称的所有生成设备使用默认的UUID?
提前谢谢,
腻过
嗨腻过,
如果你有任何其他问题,请在论坛上创建一个新的帖子,因为这个帖子与你的上一个问题无关。如果你不知道如何创建一个新职位,请让我知道,我会为你提供适当的步骤
谢谢,PM_Dialog
你好PM_DIALOG!
是的,如果您可以指导我在论坛上开设一个新的线程,非常感谢!
我一直在帮助和反馈部分,对吗?
提前致谢 ,
腻过
嗨腻过,
据我所描述的步骤,你不应该一直在帮助和反馈部分。你会发现附着的上述步骤的截图。
谢谢,PM_Dialog