现有1350(7*7)launchpad和自制的1310(4*4)demo板
simplelink_cc13x0_sdk_2_20_00_38的示例中在1350launchpad完美运行
tirtos_cc13xx_cc26xx_2_21_01_08中有rtos的1310_4XD的设置Board.h,CC1310DK_4XD.c,CC1310DK_4XD.h,还有CC1310DK_4XD.cmd等
tirtos_cc13xx_cc26xx_2_21_01_08\products\tidrivers_cc13xx_cc26xx_2_21_01_01\packages\ti\boards\CC1310DK_4XD
通过对照1350nortos与rtos,对1310_4XD的rtos设置进行修改也无法正常运行
现象:调试下无法进行至mainThread内,通常在PIN_remove或PIN_close等处停止(不定位置)
1310(4*4)demo板使用launchpad上的XDS110仿真器,使用IAR 8.30通过cJTag-2pin方式进行烧写
1350(7*7)launchpad使用同种方式可正常运行使用
问:要使1310(4*4)nortos,我需如何修改替换1310(7*7)nortos示例?
da qin zheng sheng:
4*4封装的io口只有10个。
Felix ZF:
你遇到的情况,多半是因为引脚设置不对引起的。
你可以先在CC1310_LAUNCHXL.h文件中按照你板子上实际的配置引脚分配,将所有没有用到的引脚都设置成PIN_UNASSIGNED。
我写了一篇关于在不同封装芯片之间进行代码移植的blog,应该很快就能发布出来了。
user5766405:
回复 Felix ZF:
似乎CC1310_LAUNCHXL.h中引脚均为外设服务,我尝试下将所有引脚设置为PIN_UNASSIGNED,也没有得到解决,依旧保持同样现象
太需要您的移植的blog了,如果发布能否通知一下我?
Felix ZF:
回复 user5766405:
在CC1310_LAUNCHXL.c把没有用到的外设相关的代码也暂时屏蔽掉。
比如
// * =============================== SPI DMA ===============================
// */
//#include <ti/drivers/SPI.h>
//#include <ti/drivers/spi/***.h>
//
//*** ***[CC1310_LAUNCHXL_SPICOUNT];
//
///*
// * NOTE: The SPI instances below can be used by the SD driver to communicate
// * with a SD card via SPI. The 'defaultTxBufValue' fields below are set to 0xFF
// * to satisfy the SDSPI driver requirement.
// */
//const *** ***[CC1310_LAUNCHXL_SPICOUNT] = {
// {
// .baseAddr = SSI0_BASE,
// .intNum = INT_SSI0_COMB,
// .intPriority = ~0,
// .swiPriority = 0,
// .powerMngrId = PowerCC26XX_PERIPH_SSI0,
// .defaultTxBufValue = 0xFF,
// .rxChannelBitMask = 1<<UDMA_CHAN_SSI0_RX,
// .txChannelBitMask = 1<<UDMA_CHAN_SSI0_TX,
// .mosiPin = CC1310_LAUNCHXL_SPI0_MOSI,
// .misoPin = CC1310_LAUNCHXL_SPI0_MISO,
// .clkPin = CC1310_LAUNCHXL_SPI0_CLK,
// .csnPin = CC1310_LAUNCHXL_SPI0_CSN,
// .minDmaTransferSize = 10
// },
// {
// .baseAddr = SSI1_BASE,
// .intNum = INT_SSI1_COMB,
// .intPriority = ~0,
// .swiPriority = 0,
// .powerMngrId = PowerCC26XX_PERIPH_SSI1,
// .defaultTxBufValue = 0xFF,
// .rxChannelBitMask = 1<<UDMA_CHAN_SSI1_RX,
// .txChannelBitMask = 1<<UDMA_CHAN_SSI1_TX,
// .mosiPin = CC1310_LAUNCHXL_SPI1_MOSI,
// .misoPin = CC1310_LAUNCHXL_SPI1_MISO,
// .clkPin = CC1310_LAUNCHXL_SPI1_CLK,
// .csnPin = CC1310_LAUNCHXL_SPI1_CSN,
// .minDmaTransferSize = 10
// }
//};
//
//const SPI_Config SPI_config[CC1310_LAUNCHXL_SPICOUNT] = {
// {
// .fxnTablePtr = &***,
// .object = &***[CC1310_LAUNCHXL_SPI0],
// .hwAttrs = &***[CC1310_LAUNCHXL_SPI0]
// },
// {
// .fxnTablePtr = &***,
// .object = &***[CC1310_LAUNCHXL_SPI1],
// .hwAttrs = &***[CC1310_LAUNCHXL_SPI1]
// },
//};
//
//const uint_least8_t SPI_count = CC1310_LAUNCHXL_SPICOUNT;
//
///*
// * =============================== UART ===============================
// */
//#include <ti/drivers/UART.h>
//#include <ti/drivers/uart/UARTCC26XX.h>
//
//UARTCC26XX_Object uartCC26XXObjects[CC1310_LAUNCHXL_UARTCOUNT];
//
//uint8_t uartCC26XXRingBuffer[CC1310_LAUNCHXL_UARTCOUNT][32];
//
//const UARTCC26XX_HWAttrsV2 uartCC26XXHWAttrs[CC1310_LAUNCHXL_UARTCOUNT] = {
// {
// .baseAddr = UART0_BASE,
// .powerMngrId = PowerCC26XX_PERIPH_UART0,
// .intNum = INT_UART0_COMB,
// .intPriority = ~0,
// .swiPriority = 0,
// .txPin = CC1310_LAUNCHXL_UART_TX,
// .rxPin = CC1310_LAUNCHXL_UART_RX,
// .ctsPin = PIN_UNASSIGNED,
// .rtsPin = PIN_UNASSIGNED,
// .ringBufPtr = uartCC26XXRingBuffer[CC1310_LAUNCHXL_UART0],
// .ringBufSize = sizeof(uartCC26XXRingBuffer[CC1310_LAUNCHXL_UART0]),
// .txIntFifoThr = UARTCC26XX_FIFO_THRESHOLD_1_8,
// .rxIntFifoThr = UARTCC26XX_FIFO_THRESHOLD_4_8,
// .errorFxn = NULL
// }
//};
//
//const UART_Config UART_config[CC1310_LAUNCHXL_UARTCOUNT] = {
// {
// .fxnTablePtr = &UARTCC26XX_fxnTable,
// .object = &uartCC26XXObjects[CC1310_LAUNCHXL_UART0],
// .hwAttrs = &uartCC26XXHWAttrs[CC1310_LAUNCHXL_UART0]
// },
//};
//
//const uint_least8_t UART_count = CC1310_LAUNCHXL_UARTCOUNT;
user5766405:
回复 Felix ZF:
请问关于改封装移植的blog进展如何了,感谢
user5766405:
回复 Felix ZF:
非常感谢,刚才搜索了一下才看到,谢谢
SimpleLink MCU代码移植指南:CC1310从VQFN48(7×7)到VQFN32(5×5)代码移植流程参考