Fork me on GitHub

随笔 - 997  文章 - 5  评论 - 181  阅读 - 300万 
一 2.4G私有协议
在无线遥控和远距离无线通信领域,2.4G私有协议有着天然的优势。成本低,发射功率大,功耗低。这让它在远距离无线遥控飞机,遥控车等领域有着广泛的应用。基于TLSR8359市场上广泛的应用场景,梳理,熟悉和应用该芯片,是一个方案公司的必修课。
二 源码解析
1 设置数据包的速率:
1
gen_fsk_datarate_set(GEN_FSK_DATARATE_2MBPS);

  

2 设置数据包前导码,同步信息以及数据长度等
    gen_fsk_preamble_len_set(4);
    gen_fsk_sync_word_len_set(SYNC_WORD_LEN_4BYTE);
    gen_fsk_sync_word_set(GEN_FSK_PIPE0, sync_word); 

 

3 接下来就是打开并设置TX通道,设置广播数据的报文格式,设置发射功率等。
   gen_fsk_pipe_open(GEN_FSK_PIPE0); 
   gen_fsk_tx_pipe_set(GEN_FSK_PIPE0); 
   gen_fsk_packet_format_set(GEN_FSK_PACKET_FORMAT_FIXED_PAYLOAD, APP_PAYLOAD_LEN);
   gen_fsk_radio_power_set(GEN_FSK_RADIO_POWER_0DBM);

 

4 数据包的组包信息:
复制代码
    gen_fsk_channel_set(7); 
    gen_fsk_radio_state_set(GEN_FSK_STATE_TX);
    gen_fsk_tx_settle_set(149);
    rf_irq_enable(FLD_RF_IRQ_TX); 
    irq_enable_type(FLD_IRQ_ZB_RT_EN); 
    irq_enable(); 
    tx_buffer[0] = APP_PAYLOAD_LEN; 
    tx_buffer[1] = 0x00;
    tx_buffer[2] = 0x00;
    tx_buffer[3] = 0x00;
    memcpy(tx_buffer, uart_rx_buffer, strlen(uart_rx_buffer));
复制代码

 

5 启动发送:
gen_fsk_tx_start(tx_buffer);
 
三 总结备忘
 
代码不是很复杂,该芯片接口丰富,可以充当mcu加无线的功能,这样很多产品一颗芯片就够了。总体来说,还是极大的节省成本了。
 
 
posted on   虚生  阅读(1076)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战
历史上的今天:
2019-04-26 Android USB Headset: Device Specification
点击右上角即可分享
微信分享提示