找回密码
 立即注册

使用微信账号登录

只需一步,快速开始

查看: 21299|回复: 40

[BC5系列] BC5 串口收发问题

  [复制链接]

暂无签到数据

发表于 2013-11-3 20:14:13 | 显示全部楼层 |阅读模式

马上注册,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册  

×
  1. typedef struct{
  2.     TaskData task;
  3. }bt_uart_t;

  4. bt_uart_t bt_uart;

  5. extern BT_INFO *pBtInfo;

  6. static void UartRecv(BT_INFO *pBtInfo)
  7. {
  8.     Source src;
  9.     uint8 *s = NULL;
  10.     uint8 size = 0;
  11.    
  12.     src = StreamUartSource();  /* get the uart source header */            
  13.     s = (uint8*)SourceMap(src);  /* get the uart source memory */            
  14.     size = SourceSize(src);
  15.     memcpy(&pBtInfo->uart.buf[0],s,size);
  16.     SourceDrop(src,size);    /*Discards the indicated number of bytes from the front of the source*/
  17. }
  18. static void UartHandler(Task task, MessageId id, Message message)
  19. {
  20.      DBGD(("\nUart recv id:----> %d",id));
  21.     switch (id)
  22.     {
  23.         case MESSAGE_MORE_DATA:
  24.             UartRecv(pBtInfo);
  25.             DBGD(("Uart recv data:\n"));
  26.             break;
  27.         default:
  28.             break;
  29.      }
  30. }

  31. void InitUart(BT_INFO *pBtInfo)
  32. {
  33.     bt_uart.task.handler = UartHandler;
  34.     StreamUartConfigure(VM_UART_RATE_115K2,VM_UART_STOP_ONE,VM_UART_PARITY_NONE);
  35.     /*MessageSinkTask(StreamUartSink(), &bt_uart.task);*/
  36.     MessageSinkTask(StreamSinkFromSource(StreamUartSource()),&bt_uart.task);
  37. }

  38. void UartSend(BT_INFO *pBtInfo,uint8 *buf, uint16 len)
  39. {
  40.     Sink sink;
  41.    
  42.     if (buf == NULL || len == 0)
  43.     {
  44.         DBGD(("Uart Send buf is NULL or len is zero\n"));        
  45.     }

  46.     /*sink = StreamUartSink();*/
  47.     sink = StreamSinkFromSource(StreamUartSource());
  48.     if(sink && SinkClaim(sink, sizeof(uint8)*len) != 0xFFFF)
  49.     {
  50.          memcpy(SinkMap(sink), buf, sizeof(uint8)*len);
  51.         /*SinkFlush*/
  52.         PanicZero(SinkFlush(sink, sizeof(uint8)*len));
  53.     }
  54.     else
  55.     {
  56.         DBGD(("Can not send uart\n"));   
  57.      }
  58. }
复制代码
楼主热帖
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!

暂无签到数据

 楼主| 发表于 2013-11-3 20:15:09 | 显示全部楼层
串口收发都不成功,请大神帮忙看一下,谢谢
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 反对

使用道具 举报

连续签到天数:1天
签到总天数:2317天
签到总奖励:64363金币
发表于 2013-11-3 23:12:17 | 显示全部楼层
楼主和我一样的问题呀,楼主用的ADK多少版本的,一起讨论下
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 反对

使用道具 举报

暂无签到数据

 楼主| 发表于 2013-11-4 09:49:04 | 显示全部楼层
mupro 发表于 2013-11-3 23:12
楼主和我一样的问题呀,楼主用的ADK多少版本的,一起讨论下


我用的是ADK2.0
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 反对

使用道具 举报

连续签到天数:1天
签到总天数:22天
签到总奖励:126金币
发表于 2013-11-4 10:13:47 | 显示全部楼层
这个不会搞啊!求教!
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 反对

使用道具 举报

暂无签到数据

 楼主| 发表于 2013-11-4 10:42:58 | 显示全部楼层
听说初始化那要改成这样,我还没试
void InitUart(BT_INFO *pBtInfo)
{
    bt_uart.task.handler = UartHandler;
    MessageSinkTask(StreamUartSink(),&bt_uart.task);
    StreamConfigure(VM_STREAM_UART_CONFIG,VM_STREAM_UART_LATENCY);
    StreamUartConfigure(VM_UART_RATE_115K2,VM_UART_STOP_ONE,VM_UART_PARITY_NONE);
}
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 0 反对 1

使用道具 举报

连续签到天数:1天
签到总天数:2317天
签到总奖励:64363金币
发表于 2013-11-6 21:41:21 | 显示全部楼层
transport设为Raw
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 反对

使用道具 举报

连续签到天数:1天
签到总天数:2317天
签到总奖励:64363金币
发表于 2013-11-6 21:42:02 | 显示全部楼层
楼主的uart通了吗?最近都在搞cc2540
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 反对

使用道具 举报

连续签到天数:1天
签到总天数:7天
签到总奖励:26金币
发表于 2013-11-7 09:08:10 | 显示全部楼层
参观学习。。
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 反对

使用道具 举报

暂无签到数据

发表于 2013-11-7 09:18:01 | 显示全部楼层
学习.学习.....
积分商城 - 让您的金币更有价值!||官方Q群 - 让您的沟通更加及时!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则

小黑屋|手机版|我爱蓝牙网 - 52Bluetooth

GMT+8, 2024-5-2 13:09 , Processed in 0.233116 second(s), 22 queries , Gzip On, MemCached On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表