工作时间:2015-03到至今
公司名称:简历本网络科技有限公司 | 所在部门:软件部 | 所在岗位:嵌入式软件开发(Linux/单片机/PLC/DSP…)
工作描述:
在该公司注意负责MCU软件的开发、方案的评估、诊断模块的开发以及管理一个5人的小团队。主要的工作内容有:
1、负责前装车厂车载娱乐系统产品MCU的开发;
2、负责公司产品诊断和CAN部分的开发;
3、负责项目MCU软件开发的方案评估以及开发计划的评估;
4、负责项目MCU软件的发布和维护;
5、负责公司长安商用车厂MCU组的统筹。
工作时间:2012-07到2015-09
公司名称:简历本网络技术有限公司 | 所在部门: | 所在岗位:嵌入式软件开发
工作描述:
参与到部门新成立的中型PLC产品的研发项目,负责该产品的通讯模块和脉冲型运动控制模块的软件开发工作
工作内容:
1、参与中型PLC产品的整体方案规划,平台建设。采用了ARM Cortex A8 + linux OS + CoDeSys软件的平台架构,以及内部自定义高速串行总线的方案。
2、掌握了linux系统下,基于CoDeSys平台的软件开发方法,包括ComPonent和IoDriver的开发。
3、参与部门EtherCAT总线的技术体系的建立和开发,定期举行讲座交流。
4、在ARM Cortex M3处理器上,完成了基于EtherCAT总线的通讯模块的接口软件的开发与测试,在软件中实现了EtherCAT的IO型从站的协议栈程序。
5、参与中型PLC中,在linux系统上的标准以太网Ethernet驱动的开发,包括AM335x内置以太网模块和DM9000以太网模块的驱动程序。
6、负责中型PLC中,基于linux系统和CoDeSys平台,完成了高速计数器模块的软件开发与测试,独自开发了10多条高速计数器功能的不同指令,软件代码量超过1万行。
7、负责中型PLC中,基于linux系统和CoDeSys平台,完成了脉冲型运动控制模块的软件开发与测试,独自开发了10条脉冲型运动控制功能的不同指令,软件代码量超过1.5万行。
8、负责中型PLC多轴运动控制功能的调试及测试,包括单轴运动,电子凸轮,电子齿轮等。
9、负责中型PLC诊断功能的方案设计,应用层采用CANopen协议,完成了下位机诊断软件的开发。
工作时间:2015-05到2016-05
公司名称:简历本招聘咨询有限公司 | 所在部门: | 所在岗位:嵌入式软件开发
工作描述:
实现基于ONVIF的视频接入,对本项目的功能分析及完成的功能如下:
1)采用MXML库实现xml类型数据的创建和解析。在本项目中,需要面对很多的XML类型数据的生成和解析问题,如果使用gSOAP所生成的接口,这样会让程序对gSOAP有很强的依赖性,也不方便修改和维护,而且这方面也是本项目的一个重点,在慎重的比较之后,决定使用自己编写的接口来实现此功能,最后采用了一个开源的MXML库来实现,MXML库对XML类型数据有很好的兼容性,具有很强的移植性。
2)采用链表来管理内存。在内存管理上,由于很多数据都需要分配内存空间去存储,而系统的内存空间也不是无限大,所以需要很好的利用内存,由于很多数据都是零散分配,不能很好集中起来,如果不能在最后释放,这对内存时一种严重的消耗,会造成内存泄漏,所以必须存在一个内存管理的方式,在自己了解的数据结构中,树和链表都符合本项目的需求,由于链表更容易实现,更符合本项目,所以采用链表来进行内存管理。
3)设备发现是本课题的一项基本功能,在gSOAP生成的代码中,设备发现这一点显得很不实用,过程繁琐,考虑到使用的方便,针对UDP的网络特性,考虑到设备发现的过程,采用UDP的方式编写了一个设备发现的函数,实现了设备发现功能。
4)采用CURL库实现数据发送及接受。在gSOAP下的报文的发送和接收有gSOAP提供接口,但本次项目不希望过于依赖gSOAP产生的这些接口,考虑自己编写一个发送和接收函数,但想要做到全面还是比较困难,在比较很多资料,CURL库在这方面实用性很强,下载编译了CURL库后,利用CURL库在网络通信上的强大功能,成功实现对数据发送和接收。
5)将项目进行交叉编译,在Hi3531开发板上运行本程序。在进行linux下实现了功能后,对整个项目进行交叉编译,利用NFS将交叉编译过的项目在开发板上进行测试,最终在开发板上实现与linux下相同的功能。
经过本项目的开发,我在对项目中所遇到的问题和解决方法做了记录、对代码的规范、内存分配管理和养成良好的编程习惯都有了更深的了解,在编写代码的过程中需要注意小的细节,对一些关键地方都需要进行判断。
工作时间:2012-06到至今
公司名称:简历本信息互动有限公司 | 所在部门: | 所在岗位:嵌入式软件开发
工作描述:
项目所用技术:
嵌入式Linux,C/C #,eclipse,VS2010,sql,JavaScript,HTML,XML,CSS,socket编程。 SVN配置库,tftp服务器,
TCP/IP协议,LLDP协议,SNMP协议,OPC协议,熟悉以太网相关知识等。
主要项目职责:
C#部分:
1、负责交换机网管软件(上位机软件)的开发,能够手动添加和自动搜索网络中的设备,并能够手动添加或自动搜索网络拓扑图,定时轮询设备状态等功能。
2、负责监控程序的研发,监控网络设备的运行状态,并与上位机软件进行通信,交换信息等功能。
3、负责opcserver的研发及测试,获取设备web网页信息,与客户的网管软件进行连调、通信、交换信息等功能。
Linux嵌入式C:
1、负责lldp协议的开发及测试
2、负责交换机相关网页的开发,cgi程序和html的编写,交换机命令行配置程序的研发及测试。
3、负责snmp协议的研发,包括trap的研发及测试
4、负责snmp协议的移植及测试。
5、参与ARP协议、STP协议、IGMPSnoop协议、VLAN等以太网协议的测试工作。
6、负责交换机产品说明书、用户手册的编写和维护。
7、负责交换机售后的技术支持。