新增了教程和注释以及文档,增加了一键编译并打开ozone调试的脚本

This commit is contained in:
NeoZng
2023-02-14 11:13:32 +08:00
parent 8fa03012cf
commit 7c76852041
41 changed files with 201 additions and 45 deletions

View File

@@ -17,7 +17,8 @@ typedef enum
USART_TRANSFER_RX,
} USART_TRANSFER_MODE;
// 串口实例结构体,每个module都要包含一个实例
// 串口实例结构体,每个module都要包含一个实例.
// 由于串口是独占的点对点通信,所以不需要考虑多个module同时使用一个串口的情况,因此不用加入id;当然也可以选择加入,这样在bsp层可以访问到module的其他信息
typedef struct
{
uint8_t recv_buff[USART_RXBUFF_LIMIT]; // 预先定义的最大buff大小,如果太小请修改USART_RXBUFF_LIMIT
@@ -44,7 +45,9 @@ USARTInstance *USARTRegister(USART_Init_Config_s *init_config);
/**
* @brief 通过调用该函数可以发送一帧数据,需要传入一个usart实例,发送buff以及这一帧的长度
* 当前默认为DMA发送,后续会增加中断发送和阻塞发送模式的选择
*
* @todo 目前只支持DMA发送,后续会增加中断发送和阻塞发送模式的选择
* 在短时间内连续调用此接口会导致上一次的发送未完成而新的发送取消,后续会增加一个发送状态的判断以及消息队列以解决这个问题
*
* @param _instance 串口实例
* @param send_buf 待发送数据的buffer
* @param send_size how many bytes to send

View File

@@ -2,7 +2,8 @@
<p align='right'>neozng1@hnu.edu.cn</p>
> TODO:为初始化定义一个结构体`usart_init_config`用于保存初始化所需的参数从而避免单独赋值,使得整体风格统一。
> TODO: 增加发送队列以解决短时间内调用`USARTSend()`发生丢包的问题,并提供阻塞和IT模式以供选择
> 可以直接在发送函数的参数列表添加发送模式选择,或增加instance成员变量,并提供设置模式接口,两者各有优劣
## 使用说明