[CSR]在CSR8675的Source工程实现串口收发实例

最近在做一个source工程项目,主要是实现将I2S的音频通过蓝牙发射出去,串口作为控制外扩芯片的接口,真是困难重重啊,只想吐槽下ADK的功能强大,但是难用的特色(个人观点)。

因为CSR在source工程中已经封装了任务Task,所以就不能安装裸跑的方式,简单实现收发,而是需要注册任务的方式实现:

但是考虑到只有MessageSinkTask函数,所以这样写:

void uartStreamInit(void)
{
    /* Assign task message handler */
    theUARTStreamTask.task.handler = uart_stream_handler;
    StreamConfigure(VM_STREAM_UART_CONFIG, VM_STREAM_UART_THROUGHPUT);
    /* Configure uart settings */
    StreamUartConfigure(VM_UART_RATE_57K6, VM_UART_STOP_ONE, VM_UART_PARITY_NONE);
    /* Get the source for the uart */
    theUARTStreamTask.uart_source = StreamUartSource();
    if(theUARTStreamTask.uart_source != 0)
        PanicNull(theUARTStreamTask.uart_source);
    /* Register uart source with task */
    MessageSinkTask(StreamSinkFromSource(theUARTStreamTask.uart_source), &theUARTStreamTask.task);
}

而发送接收则参考网上的同志写为:

static void uartSendD
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值