- 博客(89)
- 资源 (4)
- 收藏
- 关注
原创 嵌入式:节省内存的软件设计技巧
本文讲述内存资源紧缺型嵌入式系统中节省内存的软件设计方法。一般主控是单片机控制器的电子产品的成本跟内存的关系可是成正比的,尤其在SOC芯片设计时是固件开发需要重点关注的。大量量产前要确定内置SRAM的大小,而且是在满足功能需求的情况下越小越好。这就需要考究软件系统的设计和编程开发的技能。
2014-04-22 09:59:11 5614 3
原创 由三行代码串讲嵌入式知识点
由简单的三行代码串讲嵌入式知识点。写这篇文章是为了阐述作为一名嵌入式软件开发工程师应该要具备的技能。嵌入式开发工程师不能只关注自己模块的逻辑,而要尽可能把上层和下层乃至整个系统都要全面理解和掌握。
2014-04-20 00:20:14 2650 3
原创 以嵌入式系统设计师考试成绩,开始嵌入式博客之旅
http://www.rkb.gov.cn/jsj/cms/s_contents/download/s_dt201003110106.html
2014-03-29 20:56:16 2223
原创 基于C语言的状态机框架和实现
本文的目的是基于C语言实现简单高效的状态机。例子是倒计时bomb。Bomb有两种状态,一种是设置状态,一种是倒计时。一旦开始计时,要想回到设置状态必须要调整code的值等于bomb预设的密码值,否则无法进行状态转换。倒计时到0就BOMB了啦。基于这个例子来实现状态机。状态机实现框架包括以下几个部分:1. 状态enum BombStates { SETTING_STATE,//设置
2018-01-27 16:08:09 6269
原创 局域网设备发现之Bonjour协议
WIFI物联网解决方案中,通常我们需要对设备进行绑定,需要通过某种方法先对设备进行发现,比如微信硬件采用广播的方式,定时向外发送上线消息或者采用一问一答的方式进行发现,Bonjour是由苹果公司实现的一种零配置网络(Zeroconf)协议,它是一种基于服务的设备发现协议,不仅能够自动获取有效IP地址,还可以通过查询服务的方式来找到设备地址,只要双方约定好服务(service)的名称,设备的IP地址和端口都是可以变化的!
2016-09-28 23:37:43 28895 4
原创 全球最低功耗蓝牙单芯片DA14580的软件体系 -层次架构和BLE消息事件处理过程
网络罕见的蓝牙单芯片DA14580开发分享 -层次架构和BLE消息事件处理过程
2016-04-15 23:07:00 16609 2
原创 全球最低功耗蓝牙单芯片DA14580的软件体系 -RW内核和消息处理机制
全球最低功耗蓝牙单芯片DA14580的软件体系 -RW内核和消息处理机制
2016-04-10 11:28:44 10313 2
原创 物联网MQTT协议分析和开源Mosquitto部署验证
分析IBM推出的物联网核心协议MQTT以及在Linux环境下部署MQTT的开源实现Mosquitto进行体验验证,为构建物联网后端平台做好铺垫。
2016-03-27 18:48:42 8559 6
原创 蓝牙BLE GATT完全分析和运用
本文结合BLE的服务发现协议标准和DA14580平台、CC2541平台的应用实践来深入分析GATT,让大家能够自如地构建一个BLE的属性数据库。网上几乎没有类似这样对底层协议结构进行分析的文章,做蓝牙开发的童鞋要好好收藏。
2016-02-26 20:34:10 20394 8
原创 蓝牙(BLE)应用框架接口设计和应用开发——以TI CC2541为例
本文从功能需求的角度分析一般蓝牙BLE单芯片的应用框架(SDK Framework)的接口设计过程,并以TI CC2541为例说明BLE的应用开发方法。
2016-01-17 22:53:39 7971 1
原创 Linux Framebuffer驱动剖析之二—驱动框架、接口实现和使用
本文继上一篇文章《Linux Framebuffer驱动剖析之一—软件需求》,深入分析LinuxFramebuffer子系统的驱动框架、接口实现和使用。
2015-12-29 22:16:48 8788 2
原创 Linux Framebuffer驱动剖析之一—软件需求
本系列文章将分析Linux Framebuffer驱动的作用(需求)、框架、接口实现和使用。按笔者一直倡导的Linux学习理念—从软件需求的角度去理解Linux,对于Linux各个子系统,我们首先要理解其软件需求,从中自然会清楚其存在的价值和作用;接下来是理解子系统在Linux整个驱动框架中的层次、角色和如何交互;最后是理解驱动的接口如何实现软件需求,明确接口如何在各种场景中使用。
2015-12-26 14:46:37 5285 2
原创 嵌入式外部中断控制编程方法论—比较CC2541(51核)和S5PV210(ARM核)
这是一篇阐述如何对嵌入式SOC外部中断进行控制编程的方法论文章。希望读者理解本篇文章后,能够具备对市场上所有已经面世和将来面世的嵌入式芯片的外部中断进行控制编程的能力。
2015-12-19 23:08:57 4267
原创 全球最低功耗蓝牙单芯片(DA14580)系统架构和应用开发框架分析
笔者将对全球最低功耗蓝牙单芯片DA14580的系统架构和应用开发框架进行分析,之后再讲解如何进行应用开发。
2015-12-12 21:01:06 6274 1
原创 字符设备驱动、平台设备驱动、设备驱动模型、sysfs的比较和关联
横向比较关联各个驱动相关的知识点(字符设备驱动、平台设备驱动、设备驱动模型、sysfs)和纵向剖析Linux整个驱动软件层次,对于Linux驱动的理解和开发很有帮助,绝对干货!
2015-10-05 10:33:51 3323 1
原创 Linux input子系统分析之二:深入剖析input_handler、input_core、input_device
本文继续在《Linuxinput子系统分析之一:软件分层》的基础上继续深入研究Linux输入子系统的分层架构思想以及其实现。软件分层探讨的是输入消息从底层硬件到内核、应用层的消息传递和使用过程,而本文则是专注剖析Linux内核驱动层对输入设备的抽象分层管理和实现。
2015-09-28 23:42:49 5452 1
原创 网络架构、云平台和微信公众平台开发接入
大数据分析是物联网背后的核心价值,物联智能硬件是物联大系统的终端,开发工程师不仅要深入精通物联技术,也应该去理解大系统,甚至整个生态领域的相关技术。本文从大的宏观网络架构一步一步深入到所谓微观的微信后台接入,理解物联网后端的架构和相关技术。
2015-09-22 11:20:15 6183 1
原创 网络架构、云平台和微信公众号开发接入--基于嵌入式工程师的视觉
大数据分析是物联网背后的核心价值,物联智能硬件是物联大系统的终端,开发工程师不仅要深入精通物联技术,也应该去理解大系统,甚至整个生态领域的相关技术。本文从大的宏观网络架构一步一步深入到所谓微观的微信后台接入。
2015-09-22 09:37:24 2693
原创 全网络对Linux input子系统最清晰、详尽的分析
本文应是全网对linux input子系统分析最有系统逻辑性和最清晰的分析文章了,主要结构input-core, input-handler和input-device三者的关系以及应用open和read读取消息的过程。
2015-08-27 14:27:40 5612 1
原创 Linux input子系统分析之一:软件层次
输入输出是用户和产品交互的手段,因此输入驱动开发在Linux驱动开发中很常见。同时,input子系统的分层架构思想在Linux驱动设计中极具代表性和先进性,因此对Linux input子系统。
2015-08-23 10:49:35 5270 4
原创 Linux中断完全分析
学习本文可以对linux中断有全面而深刻的认识。本文对Linux中断所涉及的需求、管理机制、中断实现、中断接口(上半部和下半部)、驱动使用进行完全分析。
2015-07-13 14:44:57 5302 1
原创 从需求的角度去理解Linux之一:总线、设备和驱动
微信公众号:嵌入式企鹅圈重磅原创文章。这是一篇有关如何学习嵌入式Linux系统的方法论文章,也是从需求的角度去理解Linux系统软件的开篇,相信此系列文章日后会是学习嵌入式Linux的标杆!本文重点阐述从需求的角度去理解linux总线、设备和驱动的关系和分工。
2015-06-30 12:52:29 2888 3
原创 Linux模块化机制和module_init
致谢:微信公众号:嵌入式企鹅圈每天都新增爱好者关注,感谢大家的支持和大牛们的建议。本人将竭力出品更多优质的原创文章回馈大家的厚爱!模块化机制(module)是Linux系统的一大创新。本文重点阐述Linux module加载的来龙去脉,其中的奥秘就在于对宏module_init的解读。
2015-06-30 12:33:04 12156 2
S5PV210 IROM SPEC
2014-09-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人