本书主要介绍针对嵌入式系统基于C语言的软件项目开发流程、较为复杂的C语言编程知识与技巧、编程风格及调试习惯,并通过对一个具体的软件模块(ASIXWindowGUI)的分析,介绍分析代码的方法以及设计软件系统需要考虑的各要素。
本书以实际项目中的代码为例来进行介绍,详细分析在嵌入式系统开发中程序员应该注意的方法、技巧和存在的陷阱。
本书适合用作学习嵌入式系统的高年级本科生或硕士研究生的教学用书,也可作为从事嵌入式系统编程的软、硬件工程师的技术参考用书。
嵌入式系统是将先进的计算机技术、半导体技术、电子技术和各行各业的具体应用相结合的产物,这就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。
然而,嵌入式系统是一个非常综合的技术,在学科上涉及电子科学与技术、计算机科学与技术、微电子学等众多领域,在系统的架构上涉及数字电路、模拟电路、嵌入式微处理器、嵌入式操作系统、底层驱动等技术。
因此,虽然为了满足业界对人才培养的要求,越来越多的高校相关专业开始在专科、本科、硕士培养计划中开设嵌入式系统方面的课程,但是作为一个新兴的课程体系,关于嵌入式系统教学过程中相关先修课程与基础知识的准备、教学内容(包括硬件平台与软件平台)的选择、实验教学与实践环节组织等问题依然处于争论和探索阶段。
通过对相关院校的嵌入式系统教学的调研以及在东南大学电子科学与工程学院、集成电路学院嵌入式系统教学实践的基础上,我们发现现有电子类本科专业教学计划中存在与嵌入式系统教学要求相脱节的因素,其中一个比较突出的问题就是电子类学生软件基础比较弱。
虽然电子类专业的学生都先修过“C编程语言”、“计算机原理”等课程,但是缺乏大型软件项目的开发经验,尤其缺乏操作系统方面的相关知识。
这些都为嵌入式系统课程的教学带来了一定的困难,因此在嵌入式系统课程体系中增加一些用于弥补学生软件知识的课程就非常有必要了。
凌明副教授2005年开始在集成电路学院开设的“高级嵌入式系统C编程”硕士选修课无疑是为解决这个问题而进行的有益尝试,而通过5届学生课程的讲解也取得了非常好的教学效果。
虽然关于嵌入式系统方面的专业书籍出版了很多,但是适合教学的教材可谓凤毛麟角,因此在我的建议下凌明老师开始将课程讲义的主要内容进行了系统地整理,编写成为面向本科高年级和硕士阶段教学的这本教材。
全书分为9章。
第1章简要回顾了C语言的发展历史并给出了作者对于学习C语言的一些建议和参考书目。
第2章和第3章将C语言的主要语言要素作了提纲挈领式的总结和复习,虽然不是一本C语言的入门教科书,但是出于对全书的系统性以及教学的考虑,作者用了一定的篇幅将C语言中的主要内容进行了总结,其中第2章重点介绍了C语言的关键字与运算符,第3章则重点介绍了C语言的函数、标准C库以及相关内容。
第4章详细介绍了嵌入式系统软件开发的基本流程和原理,并针对ARM处理器作了比较详细的介绍。
第5章是全书的重点和难点之一,详细介绍了C语言中指针使用的高级技巧以及程序员需要规避的内存“陷阱”,本章的后半部分还以实际的案例讲解了动态内存的分配与释放,然后以ASIXWindow的实际案例进行了构建复杂数据结构的讲解。
第6章则详细介绍了嵌入式系统中底层驱动的编写技巧以及相关中断处理程序的编写技巧,尤其是针对函数重入的问题进行了细致的分析与讨论,本章的后半部分还以一个实际的键盘驱动以及UBOOT为例进行了案例讲解。
在第7章中,作者介绍了嵌入式C语言编程需要遵循的编程规范和编码风格,本章的内容几乎在其他所有教科书中都没有涉及,但实际上对于工程项目的开发而言,本章的内容又是非常重要和实用的。
只要是软件就离不开调试,初学者往往在调试代码的过程中不知所措,因此在第8章中,作者介绍了嵌入式软件调试的基本技巧和常用工具。
本章的主要内容也是本书的特色之一,作者从工程的角度比较系统地介绍了嵌入式软件开发调试过程中常用的方法,这对于初学者是非常有帮助的。
第9章则以东南大学国家专用集成电路系统工程技术研究中心自主研发的ASIXWindow嵌入式图形用户界面(GUI)作为一个综合案例,详细讲解了一个复杂软件系统的总体设计架构。
本书的特色之处是强调实际嵌入式软件项目中常用的技巧和方法,并融合了作者在所从事的科研项目中总结出来的经验和心得。
本书适合电子类专业本科高年级和相关专业硕士的教学,可以作为相关选修课程的教材或主要参考用书,另外由于本书内容的实战性很强,因此也非常适合作为广大嵌入式系统工程师的参考用书。
2024/8/12 3:19:49 18.94MB C语言 C C++ 嵌入式
1
PB+SQL的医院信息管理系统毕业论文第一章引言.…………………………………….…………………………………(4)第二章研究现状、设计目标和设计过程...….……………………………………(5)2.1数据库技术现状概述………………………………………………..(5)2.2本数据库与其它大型数据库管理系统软件的比较………………….(5)2.3本软件的设计目标.…………………………………………………(5)2.4本软件的设计思路及设计过程……………………………………….(6)2.4.1概要设计…………………………………………………………….(7)2.4.2详细设计……………………………………………………………(7)第三章开发环境..……………………………………………………………...(8)3.1系统配置..……………………………………………………………...(8)3.2开发语言..……………………………………………………………...(8)3.2.1PowerBuilder简介………………………………………………..(8)3.2.2PowerBuilder特点………………………………………………..(8)3.2.3使用PB开发系统的优越性………………………………………..(9)第四章系统需求..…..……………………………………………………………(10)4.1研究设计中要解决的问题……………………………………………(10)4.1.1数据结构要适合医疗数据信息特点………………………………(10)4.1.2系统规划要与医院实际相结合……………………………………(10)4.1.3网络数据库平台要先进……………………………………………(10)4.1.4应考虑网络安全性问题……………………………………………(10)4.2系统情况描述…………………………………………………………(10)4.3功能介绍..……………………………………………………………(11)4.4可行性分析……………………………………………………………(11)4.5系统分析..……………………………………………………………(11)4.5.1系统功能分析………………………………………………………(11)第五章系统结构与模块……………………………………………………………(14)5.1程序结构描述……………………………………………………………(14)5.1.1系统运行模式…………………………………………………………(15)5.2数据结构/数据库表……………………………………………………(15)5.2.1病历库…..……………………………………………………………(15)5.2.2挂号库…..……………………………………………………………(16)5.2.3专家排班表设置库……………………………………………………(16)5.2.4专家排班表库…………………………………………………………(17)5.2.5专科排班表设置库……………………………………………………(17)5.2.6专家当天排班表库……………………………………………………(18)5.2.7科室处方月报表库……………………………………………………(18)第六章程序各模块的实现技术…………………………………………………….(19)6.1程序流程图……………………………………………………………(20)6.2各模块实现的主要相关技术……………………………………………(20)6.2.1用户登录……………………………………………………………(20)6.2.2病人登记模块相关技术……………………………………………(20)6.2.3挂号模块相关技术…………………………………………………(24)6.2.4专家排班表设置相关技术…………………………………………(29)
2024/8/11 15:56:56 638KB 医院信息系统 毕业论文 PB SQL
1
可实现投资(建设)项目成本费用(投资)、销售收入、租赁收入、自营收入、非营业收入、投资计划(含分期投资计划、投资分类计划)、资金筹措计划、财务分析(销售收入与经营税金及附加表、租赁收入与经营税金及附加表、自营收入与经营税金及附加表、还款付息表、损益表、现金流量表、资本来源与应用表、资产负债表、投资分类损益表)、非土地拍卖和土地拍卖多方案经济分析、临界点分析(含盈亏平衡分析)、敏感性分析、概率分析快速电算化,并可撰写项目可行性研究报告、项目建议书和商业计划书,为房地产开发或固定资产投资企业(单位)的项目投资决策,项目实施过程中成本核算、成本控制和项目竣工后的财务决算提供依据,是土地拍卖招投标报价的好助手。
一、软件不仅适用于房地产投资项目,也可适用于除房地产项目外的其它投资项目。
二、根据输入的有关的基础数据自动计算出总造价、直接费、间接费、单项工程造价(费用)和平方造价及各单项工程造价(费用)占总投资的比例,以及计算销售收入、租赁收入、自营收入、非营业收入、投资计划、资金筹措计划、财务分析数据、非土地拍卖、土地拍卖多方案的经济分析、临界点分析(含盈亏平衡分析)、敏感性分析、概率分析数据,自动生成绝大部分的报表。
三、可将当前工程项目保存成模板(可以根据各种类型、不同城市的房地产开发项目和其它项目的具体情况生成不同的项目模板),以便以后生成新项目之用。
四、可根据不同的城市或同一城市不同时期或不同的工程项目创建不同的税费库,并根据需要有选择的导入后使用。
可随时选择不同城市或同一城市不同时期或不同工程项目的税费库。
五、可实现不同的工程项目有不同的页面设置,根据需要灵活调整页面的有关参数(如纸张大小、页边距、页码位置、表格栏宽等)。
六、可将项目文件导出为Microsoftword和Microsoftexcel文件,以便对排版有特殊要求之使用。
七、可根据计算方法的不同定义不同的成本费用、收入、投资计划、筹资计划计算公式,可使成本费用计算的编码与计算方法没有联系。
可自由分配各期的投资计划和筹资计划。
八、可实现复杂灵活的利息计算。
九、成本费用计算表的编码可以重复,可实现灵活的费用分类,此功能可以定制全国各地的费用分类。
十、软件可使用于房地产开发项目和其它项目的前期投资决策、项目实施、竣工决算期。
2024/8/3 19:12:04 60.59MB 投资建设项目 全成本分析 测算估算
1
对于如何与激光扫描振镜的硬件系统、软件接口协议XY2-100与对应的C语言代码有一个完整的介绍和认识理解和实现
2024/7/27 14:06:08 880KB 扫描振镜 接口协议 XY2-100 C语言代码
1
基于JAVA网络远程监控系统软件的实现
1
液位测量广泛应用于工业、经济、生活等领域。
本设计以水箱供水为模型,用于对水箱液位信号进行测量监控记录。
基于单片机的液位测量装置具有测量准确、重复性好、功耗低、使用寿命长的特点,是广泛采用的技术。
在深入学习科学发展观的同时,电子设备的设计也需融入可持续发展的设计理念。
故此,在基于单片机的液位测量装置基础上,扩展实时监控、数据采集、计算机串行通信等功能,从而能够通过科学的方法将液位测量与统计科学结合,合理调度水资源,降低能源消耗。
本文从系统方案选择与论证,硬件电路设计,系统软件与上位机软件设计等几个方面介绍了基于单片机的液位测量监控系统的设计过程,最终实现了液位的实时测量与监控。
最后,本文总结了设计过程中出现的问题及解决方法,简要叙述了所获数据的处理方法,引出了进一步设计开发的思路。
2024/7/23 5:29:47 978KB 单片机 液位测量
1
图书管理系统xml作业图书管理系统软件需求规格说明书
2024/7/23 3:26:43 45KB 图书管理xml
1
独立打包,保证可解压,内含大量源码,网上搜集而来。
一共10几包,每个包几十兆。
Visual.C++编程技巧精选500例源代码内含各种例子(vc下各种控件的使用方法、标题栏与菜单栏、工具栏与状态栏、图标与光标、程序窗口、程序控制、进程与线程、字符串、文件读写操作、文件与文件夹属性操作、文件与文件夹系统操作、系统控制操作、程序版权信息、系统软件信息、系统硬件信息、存储设备管理、鼠标及键盘、声音和视频、图形和图像、网络、数据库)IOCP完成端口编程《远程控制编程技术》源代码内含(重启、图片操作、ip操作、键盘与鼠标、客户端以及服务端、文件传输等实例源码)多个VC++加密解密算法库(CRYPT++)详细讲解了Crypt++的加密解密的使用以及其它的加密解密方法(例如base64加解密、哈希加解密以及其它的文件加解密),分静态库和动态库方法。
JSCalls_demojs调用的演示源码树控件拖动演示了在树控件中来回拖动文件的操作MyPlayer音乐播放器内含歌词显示实现源码ActiveXDemo演示了装载以及卸载atl控件的操作以及注册操作ado登录模块的制作ado,dao,odbc数据库连接vc代码演示了不同的数据库的各种操作(连接、删除、添加……等等)ATL开发指南源码内部包含了atl控件的开发以及如何应用,演示了COM的包容与集合、自动化、事件和连接点、枚举器和集合以及线程管理等等。
ATL实现的CDHtmlDialog模板类v1.03使用了六个类五个模块类演示了atl的调用方法autoplaysndmp3播放器源码重载了自带的控件进行播放aviplayeravi播放器源码引用了atl控件播放beautifulskin源码演示了各种控件方法Browser.Net源码C#的一个网页游览的例子C++自绘窗体的完整代码注释非常详细,相信会帮助大家设计好自己的个性窗体。
C++_Primer_第4版_中文+英文原书源码+课后习题答案。
CameraController(云界面)实现了自绘控件,云端控制主要在CnComm类多线程串口通讯库,camerads-DirectShow使用示例演示了摄像头的使用CatListBoxDemoListBox控件与其它控件阙套使用方法CCAMS系统是一种用于局域网下的CS模式的软件管理和监测系统源码它包括客户端和服务端,客户端软件主要作用是监测本主机的活动,并将监测到的信息定时发送给服务器。
服务器可以将收集到的信息以柱状图和文件列表以及其他方式呈现给用户,以便用户对局域网内的主机进行监测和管理。
CClockST_demo电子钟的实现,自绘Button、Static的实现,其中自定了一个辅助主题风格类。
CctryLog(web拦截网页帐号密码)实现了一个控件去获得IHTMLDocument2接口,然后读取内容,匹配用户名与密码等。
CFile64_src操作大文件,自定义了一个操作大文件的类,并进行了测试。
chapter7实现了声音录制等功能。
CHtmlViewProjV2详细演示了HtmlView的使用与HtmlView事件站点拦截的实现、js调用。
CIVStringSet_Demo自定义了一个类似STL容器的类,并进行了测试。
ClearHistory实现了清楚internet临时文件、Cookie的清除、游览器地址栏历史地址的清除、清楚表单自动完成历史记录、清楚自动密码历史记录、清除收藏夹中的内容、清除RAS自动拨号历史记录、清除系统临时文件夹、清空回收站、清除"运行"中的自动匹配历史记录、清除"文档"中的历史记录、清除上次登陆用户记录、清除"查找文件"自动匹配历史记录、清除"查找计算机"自动匹配历史记录、清除网络联接历史记录、清除远程登录历史记录、清除浏览网址历史记录。
实现的代码很简单。
CListCtrl阙套其它控件自绘了CListCtrl控件,实现了其它控件阙套到List中并自绘等。
主要的实现在CListReport类中。
CListCtrlTest演示了重载CListCtrl后的使用方法。
CListItemDrawing演示了其它控件(全部)阙套到List中并自绘等,学习自绘以及阙套CListCtrl控件的好实例。
ColorStatic自绘了CStatic控件,实现了标题字符滚动效果。
CSDN免积分下载工具源码演示了使用CInternetSession去下载资源。
CStatic文字滚动如题,此实例非常适合学习,重载并自绘了Wnd类,效果是上下文字、图片、文字由大到小和星星闪烁等滚动
2024/7/21 19:29:28 54.81MB VC++ dll 源码 界面
1
个人毕业设计,可以实现4*4矩阵按键控制、射频识别、红外控制门禁状态,使用LCD12864作为显示屏,程序已经调通的成品,可以用作参考扩展学习。
2024/7/18 1:11:05 6.26MB STM32 门禁 LCD12864
1
研发的油井生产数据采集与管理系统软件,控制油井远程数据采集设备(RTU),可完成油井生产数据的远程自动采集、传输、存储、显示与查询等功能。
系统软件基于易语言可视化开发环境,采用可移植性好、使用方便、功能强的Oracle9I作为数据的存储管理数据库,充分利用API,COM、DLL、OCX等组件进行UI界面和主要功能的开发。
文中详细介绍了软件的主要关键功能模块及其实现技术。
该系统部署于油田现场,可实现油井生产的实时高效监管,生产问题的全面、快捷诊断,保障油井生产安全运行。
1
共 195 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡