ISMBB驱动设计¶
时间 |
修订人 |
版本号 |
补充说明 |
|---|---|---|---|
2023-08-14 |
王培鑫 |
v1.0.0 |
1 工程介绍¶
1.1 模块位置¶
ISMBB位于APUS项目中的./drivers目录;目前包含的子模块有:
arch:仿照蓝牙,目前实现了assert断言处理
common:buffer、链表结构管理
dma:DMA
intc:中断处理
ip:包含IP和Driver
rf:射频管理


1.2 编译方法¶
make apus_fpga_1v_defconfig // 选择APUS工程配置
make menuconfig // 勾选编译ISMBB模块
make autoconf
make ismbb // 编译ISMBB模块
make // 编译APUS工程,得到gxscpu.elf可执行文件
3 API和宏¶
API |
Parameter |
Description |
|---|---|---|
gx_ismbb_tx_data_write |
uint16_t length |
写数据接口,输入参数为待发射数据长度和内容。 |
gx_ismbb_rx_data_read |
uint8_t* prefix_id |
读数据接口,输入参数为接收数据的RX id、长度和内容。 |
ismbb_rf_tx_set |
uint8_t channel |
TX频点和射频增益设置接口,输入参数为信道号和射频增益值。 |
ismbb_rf_rx_set |
uint8_t channel |
RX频点和射频增益设置接口,输入参数为信道号、射频增益值和增益模式(L/M/H)。低中频系统设计,RX频点 = TX频点 - 2M。 |
宏 |
Description |
|---|---|
DMA_SUPPORT |
控制发射或接收是否使能DMA。 |
ISMBB_BUF_MALLOC |
控制TX和RX buffer是否通过malloc分配。 |
DEFAULT_TX_INTV |
控制定时器TX和RX排帧间隔时间。 |






