myallmy IP属地:北京

文章 关注 粉丝 访问 贡献
 
共 143 篇文章
显示摘要每页显示  条
现在我们用消息+消息缓冲区的方式来记录事件,消息缓冲区就成了所有事件共用的缓冲区,无论发生的事件有没有额外的信息,一律以消息的形式存入缓冲区 。程序框架:状态机+事件/消息驱动。既然是状态机, 想要跑起来就需要有事件来驱动, 在这个 ISR 里, 定时器的中断事件 TICK就是按键状态机和计时状态机的驱动,只不过这两个事件驱动+状态机...
嵌入式设备与PC通信,协议设计原则!嵌入式设备在运行中需要设置参数,这个工作经常由PC机来实现,需要为双方通信设计协议,有代表性协议是如下三种:理想情况下每个协议包是原子信息,即本协议包不与其他协议包牵连,以防止通讯丢帧和设置牵连带来的错误。如果通信链路是高速总线(如SPORT可达100Mbps),一般设计成一帧产生一次中断,它通过...
业务架构:由业务架构师负责,也可以称为业务领域专家、行业专家,业务架构属于顶层设计,其对业务的定义和划分会影响组织架构和技术架构。视图的受众在画出一个好的架构图之前, 首先应该要明确其受众,再想清楚要给他们传递什么信息,所以,不要为了画一个物理视图去画物理视图,为了画一个逻辑视图去画逻辑视图,而应该根据受众的不同,传递...
如何专业地命名嵌入式软件版本?格式:主版本号 .子版本号 .修订版本号 .日期_版本阶段。希腊字母版本号(rc):此版本号用于标注当前版本的软件处于哪个开发阶段,当软件进入到另一个阶段时需要修改此版本号。alpha:内部版本beta:测试版demo:演示版enhance:增强版free:自由版lts:长期维护版本release:发行版rc:即将作为正式版发布standa...
代码评审的18个军规,收藏好!所有的类都必须添加创建者和创建日期,以及简单的注释描述方法内部的复杂业务逻辑或者算法,需要添加清楚的注释一般情况下,注释描述类、方法、变量的作用任何需要提醒的警告或TODO,也要注释清楚如果是注释一行代码的,就用//;如果注释代码块或者接口方法的,有多行/* **/一块代码逻辑如果你站在一个陌生人的角度...
int protocol_data_packet(uint8_t *buf, uint16_t len, protocol_data_t *protocol_data){ int ret = -1;// 为协议格式数据申请内存 int value_len = buf[PROTOCOL_LENGTH_INDEX]; p_protocol_format = (protocol_format_t *)malloc(sizeof(protocol_format_t) + value_len); if (NULL == p_protocol_format) { printf(...
看LED部分的驱动,也就是下面的这两个函数void MX_TIM1_Init(void);void HAL_TIM_MspPostInit(TIM_HandleTypeDef* timHandle);12/* TIM1 init function */void MX_TIM1_Init(void){if (HAL_TIM_PWM_ConfigChannel(&htim1, &sConfigOC, TIM_CHANNEL_2) !/* USER CODE END TIM1_Init 2 */ HAL_TIM_MspPostInit(&htim1);HAL_TIM_PWM_...
两种在keil中实现printf重定向到串口的方法。那么,要实现printf打印到串口就变得非常简单了,只需要重新定义fputc函数,在fputc的函数中将数据通过串口发送,称之为:fputc重定向或者printf重定向。4 MicroLIB库简介4.1 MicroLIB库由来上面我已经讲了标准库的由来,对于性能比较好的设备,我们直接用标准c库的源码来编就好了,但是对于单片机...
}//此处省略gOamCtrlCode == 2~6的处理代码else if (gOamCtrlCode == 7){ vosMemCpy(&(pstSendTlv->aucVersionList), ctc_oui, 3); pstSendTlv->aucVersionList[3] = 0x20; vosMemCpy(&(pstSendTlv->aucVersionList[4]), ctc_oui, 3); pstSendTlv->aucVersionList[7] = 0x13; vosMemCpy(&(pstSendTlv->aucVersionLi...
常见的有串口轮询模式,串口中断模式,串口DMA接收传输等等;利用串口的空闲中断配合DMA的环形缓冲区模式,可以高效接收不固定长度的消息报文。下面是DMA HC/DMA TC/Idle组合进行串口接收的细节,如下图所示;TC Transfer-Complete DMA缓冲区全部接收完成;所以,不难发现,如果只使用空闲中断,如果需要接收的数据长度大于缓冲区,就会出现数...
帮助 | 留言交流 | 联系我们 | 服务条款 | 下载网文摘手 | 下载手机客户端
北京六智信息技术股份有限公司 Copyright© 2005-2024 360doc.com , All Rights Reserved
京ICP证090625号 京ICP备05038915号 京网文[2016]6433-853号 京公网安备11010502030377号
返回
顶部