完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
使用SDK:simplelink_cc2640r2_sdk_1_50_00_58,npi串口。但是发现一个问题。
我在mian函数配置的RX的状态是input 上拉,但是用逻辑分析仪观察,在我调用UART_open()之后发现RX(IO口悬空)的电平变成了low,请问是否UART_open()会配置RX的状态输入下拉或者高阻抗,如果我想将RX的状态修改为上拉,那么如何修改,谢谢! const PIN_Config BoardGpioInitTable[] = [// CC2640R2_LAUNCHXL_PIN_RLED | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX, /* LED initially off */// CC2640R2_LAUNCHXL_PIN_GLED | PIN_GPIO_OUTPUT_EN | PIN_GPIO_LOW | PIN_PUSHPULL | PIN_DRVSTR_MAX, /* LED initially off */// CC2640R2_LAUNCHXL_PIN_BTN1 | PIN_INPUT_EN | PIN_PULLUP | PIN_IRQ_BOTHEDGES | PIN_HYSTERESIS, /* Button is active low */// CC2640R2_LAUNCHXL_PIN_BTN2 | PIN_INPUT_EN | PIN_PULLUP | PIN_IRQ_BOTHEDGES | PIN_HYSTERESIS, /* Button is active low */// CC2640R2_LAUNCHXL_SPI_FLASH_CS | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL | PIN_DRVSTR_MIN, /* External flash chip select */ CC2640R2_LAUNCHXL_UART_RX | PIN_INPUT_EN | PIN_PULLUP, /* UART RX via debugger back channel */ CC2640R2_LAUNCHXL_UART_TX | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL, /* UART TX via debugger back channel */// CC2640R2_LAUNCHXL_SPI0_MOSI | PIN_INPUT_EN | PIN_PULLDOWN, /* SPI master out - slave in */// CC2640R2_LAUNCHXL_SPI0_MISO | PIN_INPUT_EN | PIN_PULLDOWN, /* SPI master in - slave out */// CC2640R2_LAUNCHXL_SPI0_CLK | PIN_INPUT_EN | PIN_PULLDOWN, /* SPI clock */ PIN_TERMINATE]; |
|
相关推荐
8 个讨论
|
|
请参照协议栈中uart初始化:
/* * ======== UARTCC26XX_initIO ======== * This functions initializes the UART IOs. * * @pre Function assumes that the UART handle is pointing to a hardware * module which has already been opened. */static bool UARTCC26XX_initIO(UART_Handle handle) [ /* Locals */ UARTCC26XX_Object *object; UARTCC26XX_HWAttrsV2 const *hwAttrs; PIN_Config uartPinTable[5]; uint32_t i = 0; /* Get the pointer to the object and hwAttrs */ object = handle->object; hwAttrs = handle->hwAttrs; /* Build local list of pins, allocate through PIN driver and map HW ports */ uartPinTable[i++] = hwAttrs->rxPin | PIN_INPUT_EN; /* Make sure UART_TX pin is driven high after calling PIN_open(...) until * we've set the correct peripheral muxing in PINCC26XX_setMux(...) * This is to avoid falling edge glitches when configuring the UART_TX pin. */ uartPinTable[i++] = hwAttrs->txPin | PIN_INPUT_DIS | PIN_PUSHPULL | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH; if (isFlowControlEnabled(hwAttrs)) [ uartPinTable[i++] = hwAttrs->ctsPin | PIN_INPUT_EN; /* Avoiding glitches on the RTS, see comment for TX pin above. */ uartPinTable[i++] = hwAttrs->rtsPin | PIN_INPUT_DIS | PIN_PUSHPULL | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH; ] /* Terminate pin list */ uartPinTable[i++] = PIN_TERMINATE; /* Open and assign pins through pin driver */ object->hPin = PIN_open(&object->pinState, uartPinTable); /* Are pins already allocated */ if (!object->hPin) [ return false; ] /* Set IO muxing for the UART pins */ PINCC26XX_setMux(object->hPin, hwAttrs->rxPin, IOC_PORT_MCU_UART0_RX); PINCC26XX_setMux(object->hPin, hwAttrs->txPin, IOC_PORT_MCU_UART0_TX); if (isFlowControlEnabled(hwAttrs)) [ PINCC26XX_setMux(object->hPin, hwAttrs->ctsPin, IOC_PORT_MCU_UART0_CTS); PINCC26XX_setMux(object->hPin, hwAttrs->rtsPin, IOC_PORT_MCU_UART0_RTS); ] /* Success */ return true;] 致力于帮助更多使用TI平台的开发者! |
|
|
|
|
|
victorlekwk 发表于 2019-10-30 13:28 Alvin Chen, 谢谢你的回复,那么这个函数在哪个文件下面,我未能找到。 |
|
|
|
|
|
victorlekwk 发表于 2019-10-30 13:28 Alvin Chen: 我只是在CC2640R2_LAUNCHXL.c文件下,看到UART的配置如下,我使用的是NPI串口的例程: /* * =============================== UART =============================== */#include |
|
|
|
|
|
60user13 发表于 2019-10-30 14:02 最后都会触发C:TIsimplelink_cc2640r2_sdk_1_50_00_58sourcetidriversuart这里程序,建议你去看一下。 致力于帮助更多使用TI平台的开发者! |
|
|
|
|
|
60user13 发表于 2019-10-30 14:02 Alvin Chen, 我尝试修改了相关的IO配置,让RX配置成上拉,然后编译stack,编译application。但是配置依旧不起作用。确认了UARTCC26XX.c文件的 路径正确后,我尝试将UARTCC26XX_initIO函数里面的内容全部注释,编译all,然后UART依旧能够通信。 所以我在猜想,其实UARTCC26XX.c文件里面的内容是不是已经封装在程式里面,因为程式只有include UARTCC26XX.h的文件,无法知道 这个.c文件究竟是如何调用的。麻烦解答下,谢谢! |
|
|
|
|
|
60user13 发表于 2019-10-30 14:02 Alvin Chen, 查看工程里面调用的lib情况,有调用到driverlib.lib 路径: C:tisimplelink_cc2640r2_sdk_1_50_00_58sourcetidevicescc26x0r2driverlibbiniar 如果这样的话,我如何重新编译我修改过后的配置,并且生成新的lib给程式调用 |
|
|
|
|
|
只有小组成员才能发言,加入小组>>
309 浏览 1 评论
513 浏览 2 评论
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
754 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
641 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1113 浏览 1 评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
226浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
181浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
46浏览 13评论
在使用3254进行录音的时候出现一个奇怪的现象,右声道有吱吱声,请教一下,是否是什么寄存器设置存在问题?
149浏览 13评论
TLV320芯片内部自带数字滤波功能,请问linein进来的模拟信号是否是先经过ADC的超采样?
158浏览 12评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-18 13:20 , Processed in 1.065938 second(s), Total 58, Slave 51 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号