1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
Zstack3.0.2 CC2530官方DMA串口0位置的移植
本文主要讲解官方DMA串口0位置一映射到位置二的方法,使用的是GenericApp程序 串口的详细信息 一、使用官方封装好的MT库 因为官方已经封装好了,所以直接就能用, 1、配置ZTOOL_P1的宏定义 2、找到MT_Uart.c文件修改MT_UartInit ()中 /* UART Configuration */ uartConfig.configured = TRUE; uartConfig.baudRate = MT_UART_DEFAULT_BAUDRATE; uartConfig.flowControl = MT_UART_DEFAULT_OVERFLOW; uartConfig.flowControlThreshold = MT_UART_DEFAULT_THRESHOLD; uartConfig.rx.maxBufSize = MT_UART_DEFAULT_MAX_RX_BUFF; uartConfig.tx.maxBufSize = MT_UART_DEFAULT_MAX_TX_BUFF; uartConfig.idleTimeout = MT_UART_DEFAULT_IDLE_TIMEOUT; uartConfig.intEnable = TRUE; 修改uartConfig.flowControl = MT_UART_DEFAULT_OVERFLOW;为uartConfig.flowControl = FALSE;关闭流控。 3、将 MT_UartInit(); MT_UartRegisterTaskID(zclGenericApp_TaskID); 放到zcl_genericapp.c文件zclGenericApp_Init()任务初始化函数的末尾, 添加头文件 #include "hal_uart.h" #include "MT_UART.h" 最后可以加一个HalUARTWrite(0,"Uartrn",6);验证初始化是否成功,此时应该为串口0的位置1上引脚输出数据。接下来进入本文重点 二、修改官方的串口位置 全部为寄存器修改,主要修改的函数有 static void HalUARTInitDMA(void) static void HalUARTOpenDMA(halUARTCfg_t *config) static uint16 HalUARTReadDMA(uint8 *buf, uint16 len) static void HalUARTPollDMA(void) static void HalUARTSuspendDMA( void ) static void HalUARTResumeDMA( void ) 1、修改static void HalUARTInitDMA(void)函数中 P2DIR &= ~P2DIR_PRIPO; P2DIR |= HAL_UART_PRIPO; 第一句为清除原来的端口0优先级, 第二句为设置USART0优先级最高 所以可以将以上替换为P2SEL = 0xB0;将原有设置的端口0改为设置端口1的串口0优先级最高 具体可以参考CC2530的手册。 修改PERCFG &= ~HAL_UART_PERCFG_BIT;为PERCFG|= 0x01;及把串口0的位置1映射到位置2 修改PxSEL |= HAL_UART_Px_RX_TX;为P1SEL = 0x30;把原有位置1的P0_2、P0_3的引脚改到位置2即P1_4P、1_5 屏蔽ADCCFG &= ~HAL_UART_Px_RX_TX;就完成了HalUARTInitDMA()的修改。 在这里插入代码片 |
|
|
|
只有小组成员才能发言,加入小组>>
3310 浏览 9 评论
2991 浏览 16 评论
3492 浏览 1 评论
9055 浏览 16 评论
4086 浏览 18 评论
1174浏览 3评论
603浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
596浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2333浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1894浏览 2评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-21 23:13 , Processed in 1.113357 second(s), Total 78, Slave 59 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号