自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(1)
  • 资源 (1)
  • 收藏
  • 关注

原创 【嵌入式编程踩坑记】 - 裸机 -定时器中断中套

不合理的程序设计,会产生那个另无数嵌入式工程师头疼的问题--死机 死机首先想到的是数组越界、读写空指针,其实还有一种,就是在中断中执行耗时巨大的IO操作。 如何设计代码,既能避免问题出现,又能良好地实现功能?我给大家举个例子。......

2022-08-30 01:17:19 316

xData_SL.rar 直观链表操作工具 方便做FIFO等应用 V0.01

C语言版本的直观链表创建和读取工具,隐藏了链表的操作细节 可以非常方便地在单片机等平台做FIFO应用,前提是不要用的太嗨,在极小内存的平台上建立好多个FIFO 支持多线程程序,目前尚未发现BUG /*---------------------------- 版本 : V0.01 作者 : ICARUS 日期 : 2019年6月3日 ------------------------------*/ //--------------------------------------------------------------------------------------------// 内置函数 int SL_Create( ) 创建一个数据链表,返回其在系统内的ID值,创建不成功则返回 SL_R_ERR int SL_Delete(int ID) 删除某个使用SL_Create()函数创建过的链表 int SL_InsertInturn(int ID,char* chain,int len,char ** NewNode) 向链表序号为ID的链表尾部插入chain为首地址,长度为len的数据块,数据块在系统中的内存地址将被NewNode返回,若想得到该内存地址,用(*NewNode) 使用示例: char * NewNode; SL_InsetInturn(5,"Hey,boy",strlen("HeyBoy\r\n"),&NewNode;); printf("%s",*NewNode); //------------------------------------------------------------------------------------------// int SL_ReadInturn(int ID,char * chain) 从链表序号为ID的链表头部读取数据到chain中,若返回值大于0,则返回值为数据长度,否则读取失败或链表中已无数据可读。 这一读操作会把数据节点从链表中移除 使用示例: int ReadLen; char chain[1500]; ReadLen = SL_ReadInturn(5,chain); if(ReadLen > 0) { ..... } 注意:由于时间原因,没有来得及修改SL_NodeModify()函数的实现,代码中注释掉的部分请先不要使用,请等待下一版本发布 使用时配合自定义的数据类型效果更佳。

2019-06-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除