前言:一篇好文章的诞生,需要你不断地搜集资料、整理思路,本站小编为你收集了丰富的电路设计开发流程主题范文,仅供参考,欢迎阅读并收藏。
关键词:数字电子电路;VHDL;EDA技术;可编程芯片
中图分类号:TN702 文献标识码:A 文章编号:1009-2374(2013)19-0051-02
大规模集成电路的出现以及计算机技术的不断更新换代与广泛应用,促使数字电子电路的设计已经发展到了一个更新的领域,用以下四方面便足以显示:(1)硬件电路的设计越来越趋向软件化;(2)数字电路发展愈加芯片化;(3)电子器件以及与其相关的技术研发越来越多地朝着服务于EDA的方向;(4)电路设计技术的发展趋势朝着更加规范化、标准化的HDL硬件描述语言及EDA工具的推广使用上。当今的技术发展趋势要求从业人员在进行数字电子电路设计过程中,必须具备运用电子计算机以及操作超大规模的可编程逻辑器件的能力。本文通过对以EDA与VHDL为基础的数字电子电路开发设计过程进行简要叙述,为该技术的推广运用,做出必要的文献研究支撑。
1 EDA技术概述以及其开发设计流程
1.1 EDA技术的基本知识
EDA技术指的是以计算机为工作平台,将应用信息处理、计算机技术、智能化技术及电子技术进行融合的最新成果,进行电子产品的自动设计。20世纪60年代中叶,随着技术水平的不断进步逐渐,该技术结合了CAM、CAT、CAD以及CAE的综合优势被逐步发展出来。
与其前身相比,EDA在以下五方面拥有着十分明显的优势:(1)EDA技术能够对目标进行现场编程,并即时地实现在线升级。(2)硬件电路设计过程中采用软件设计的方式,通过输入波形、原理图、编程语言等指令,可以在进行硬件设计、修改、检测中,不涉及任何硬件工具进行特定作业。(3)产品直面设计自动化。EDA技术能够自动地根据设计输入的电路原理图或者HDL进行逻辑编译、适配、布局、优化等一系列工序调整并生成符合要求的目标系统。换句话说,就是运用电路功能完成对电子产品的测试、仿真、优化全程操作。(4)EDA技术的经济实用性更加科学、合理,不仅设计成本保持在较低水平,设计的灵活性也大大提高,同时新技术的开发周期也明显缩短。(5)集成化程度更加完善。EDA设计方法,还有另外一种称呼:利用芯片进行设计的方法,在集成芯片日益大规模的发展背景下,利用EDA技术,可以实现在芯片上构建系统的目的。
1.2 EDA技术的开发设计流程
EDA技术在设计方法上,通过对以往的“电路设计硬件搭试调试”模式进行革命化的转变,代之以计算机自动化完成的模式(如图1),完成了数字电子电路设计的巨大飞跃。
笔者将EDA技术设计过程中两个最基本的组成部分设计载体:可编程逻辑器件PLD以及设计输入:硬件描述语言VHDL进行具体介绍。
2 可编程逻辑器件PLD
可编程逻辑器件(Programmable Logic Device,PLD)是一种电子零件、电子组件,简而言之也是一种集成电路、芯片。PLD芯片属于数字型态的电路芯片,而非模拟或混讯(同时具有数字电路与模拟电路)芯片。PLD与一般数字芯片不同的是:PLD内部的数字电路可以在出厂后才规划决定,有些类型的PLD也允许在规划决定后再次进行变更、改变,而一般数字芯片在出厂前就已经决定其内部电路,无法在出厂后再次改变。
3 硬件描述语言VHDL
3.1 VHDL的基本知识
VHDL全名Very-High-Speed Integrated Circuit Hardware Description Language,在电子工程领域,已成为事实上的通用硬件描述语言。具有以下特点与优势:(1)更强大的行为描述能力。有效避免具体的器件结构,为实现超大规模的电子系统设计与描述打下坚实基础。(2)适用范围多样,且易于操作修改。VHDL采用国际通用的编程语言,能够很好地适用于不同版本的EDA工具,为操作者进行使用和修改提供了极大的便利。(3)设计描述过程独为一体。编程人员能够在对设计最终目标以及其他设计领域不甚了解的情况下,完成自身的编程操作工序。(4)使用EDA工具可以十分方便地对VHDL语言进行进一步的优化提升,由于EDA工具对其的可识别性,EDA可以实现对VHDL的设计语言重新进行整合、升级,并用门级网表将其表示出来。
3.2 基于VHDL的设计实例
用一个简单的状态机举例说明
4 结语
通过使用精简描述语言VHDL进行数字电子电路设计,不仅能够完成各种逻辑复杂、规模庞大的数据运算,更可以有效地将设计周期大大缩短,提高整个系统的可靠性以及集成度。
参考文献
[1] 于玲.EDA应用课程教学改革分析[J].辽宁工业大学学报(社会科学版),2012,(1):136-138.
[2] 王彩凤,胡波,李卫兵,杜玉杰.EDA技术在数字电子技术实验中的应用[J].实验科学与技术,2011,(1):782-783.
[3] 李晓敏,徐涛.EDA技术在“数字电子技术”课程中的应用[J].中国科技信息,2011,(9):167-169.
关键词:扫频信号;发生器;研究
一、引言
在电子技术领域,常需要波形、频率、幅度都可调节的电信号,用于产生这种电信号的电子测量仪器称作信号发生器。
信号发生器是一种常用的信号源,广泛应用于电子电路、自动控制和科学实验等领域。作为一种为电子测量和计量提供电信号的设备,它和万用表、示波器、频率计等仪器一样,是最普通、最基本,也是应用最广泛的电子仪器之一,几乎所有电参量的测量都需要用到信号发生器。从本质上看,测量是一个将客观物理量转换成测试信息量的变换过程。当测试对象为系统性能参数时,通常采用如下测量方法:在测试系统中,系统参数的测量基于输入激励和输出响应的对应关系,这种方法被称作“激励―响应”法,如图1所示。
随着科学实验研究需求的不断发展,传统的信号发生器在一些特定的场合已经不能满足要求,由此可以再我们研究的基础上进行任意信号的函数信号发生器的设计。
二、设计意义及设计总体方案
正弦信号发生器是在电子电路设计、自动控制系统和仪表测量校正调试中应用很多的一种信号发生装置和信号源,属于数字信号发生器。而正弦信号是一种频率成分最为单一的常见信号源,任何复杂信号(例如声音信号)都可以通过傅里叶变换分解为许多频率不同、幅度不等的正弦信号的叠加,它的应用领域很广范。
本文结合不同正弦信号发生器的工作原理,最终决定采用这种方案进行设计,即先由8位计数器构成的地址发生器产生地址进而使正弦波数据存储ROM输出相应地址中的波信号数据,再进行相应的数模转换,从而达到输出正弦波信号的目的。
三、VHDL语言介绍
VHDL全名Very-High-Speed Integrated Circuit Hardware Description Language,诞生于1982年。1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言 。VHDL和Verilog作为IEEE的工业标准硬件描述语言,得到众多EDA公司支持,在电子工程领域,已成为事实上的通用硬件描述语言。
VHDL语言是一种用于电路设计的高级语言。它在80年代的后期出现。最初是由美国国防部开发出来供美军用来提高设计的可靠性和缩减开发周期的一种使用范围较小的设计语言 。
VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式、描述风格以及语法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可视部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。
四、QuartusⅡ软件
Quartus II 是Altera公司的综合性PLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整PLD设计流程。
Quartus II可以在XP、Linux以及Unix上使用,除了可以使用Tcl脚本完成设计流程外,提供了完善的用户图形界面设计方式。具有运行速度快,界面统一,功能集中,易学易用等特点。
Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户可以充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。对第三方EDA工具的良好支持也使用户可以在设计流程的各个阶段使用熟悉的第三方EDA工具。
Altera Quartus II 作为一种可编程逻辑的设计环境, 由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。
基于Quartus II进行EDA设计开发的流程包括以下步骤。
设计输入:包括原理图输入、HDL文本输入、EDIF网表输入及波形输入等几种方式。
编译:先根据设计要求设定编译方式和编译策略,如器件的选择、逻辑综合方式的选择等。然后根据设定的参数和策略对设计项目进行网表提取、逻辑综合、器件适配,并产生报告文件、延时信息文件,供分析、仿真和编程使用。
仿真:包括功能仿真、时序仿真和定时分析,可以利用软件的仿真功能来验证设计项目的逻辑功能和时序关系是否正确。
编程与验证:用得到的编程文件通过编程电缆配置PLD,加入实际激励,进行在线测试。
五、正弦函数信号发生器的设计
本文结合不同正弦信号发生器的工作原理,最终决定采用如下设计方案:
即先由8位计数器构成的地址发生器产生地址进而使正弦波数据存储ROM输出相应地址中的波信号数据,再进行相应的数模转换,从而达到输出正弦波信号的目的。
(一)设计方案概括
(1)正弦波的产生原理是利用不断扫描读取给定编程数据需来实现的,那么就需要定制LPM_ROM出来,从而将波形数据存所定制的ROM中;
(2)波形数据存储好后,就需要一地址信号发生器,由计数器构成,来选择已经定制好的ROM中的相应地址位;
(3)波形输出需要一个8位DA转换装置,可以选择DAC0832
简而言之,就是利用已经定制好的LPM_ROM,再结合相应的由计数器构成的地址信号发生器来扫描读取相应的波形数据,从而进行波形显示。
(二)课程设计解决方案的原理框图
论文关键词:模块教学,制作,电子钟
单片机技术作为现代电子技术的重要基础,广泛应用于工业过程控制,机电一体化产品,智能仪器,家用电器、计算机网络及通信等方面,是各类控制系统的核心。《单片机控制技术》是在前面所学《单片机基础1》和《单片机基础2》教学模块的基础上,进行小型单片机电子产品软硬件设计和制作的教学模块。通过本模块的学习,培养学生掌握单片机技术在日常生活中的应用,锻炼学生动手实践能力、创新能力和新产品设计开发能力,为将来从事单片机新产品设计开发、检测和维护等工作奠定坚实的基础。
一、教学实施设想
依据单片机系统的开发研制过程,模块《单片机控制技术》可分为单片机系统硬件电路设计与调试和单片机程序设计与调试两个部分,在综合应用阶段将二者融为一体。通过本模块的学习,使学生掌握单片机硬件设计和程序设计的相关知识,熟悉单片机应用系统的组成和开发方法,懂得单片机系统调试与维护技术,并在实际制作的基础上制作,了解单片机控制的电子产品生产工艺和生产管理方法。
在“教、学、做”一体的教学过程中,通过分组实施,提高学生的沟通能力、团队合作及协调能力,提高学生严谨的逻辑思路,缜密的工作方式和强烈的责任意识。教学实施按照3个阶段逐级深入:①基础知识复习讲解;②基本应用训练;③综合实际制作。
二、教学内容设计
曾经有人这样说过,如果用数码管和按键,做一个可以调整时间的电子钟出来,那么你的单片机就算入门了60%了。我认为这句话是有道理的。基于单片机技术的实时时钟能够涵盖单片机课程的大部份知识点,对单片机知识的应用,其综合度是相当高的。
本模块以4位数码管实时时钟的硬件电路和程序设计为载体,以8位数码管实时时钟的设计和制作为任务驱动,将单片机有关知识点融入“教、学、做”一体,采用分组实施,逐级深入的方式,重点培养学生应用单片机知识进行小型电子产品的设计、调试和制作能力。
本模块按照教学计划,可以分为5个学习情境:
1)单片机最小系统软硬件设计
以4位数码管实时时钟为例,讲授单片机最小系统的软硬件设计方法核心期刊目录。
2)单片机定时与中断功能的应用
以含四个按键和4位数码管的可以调整时间的实时时钟为例,讲授单片机定时与中断功能的实现方法。
3)单片机与数码管显示器接口的设计
以4位数码管实时时钟为例,讲授单片机与数码管显示器的接口设计方法。
4)单片机与LCD显示器1602接口的设计
以一片1602作为单片机实时时钟显示屏为例,讲授单片机与LCD显示器1602接口的设计方法。
5)制作单片机电子钟
在教师指导下,应用单片机中断、定时技术,通过调整键、加1键、减1键、确定键四个按键,用8位数码管(或用一片1602)制作一个可以调整时间的电子时钟,显示格式为:时-分-秒 XX-XX-XX。
通过以上5个学习情境的训练,学生最终完成1台具有调时功能的单片机电子钟作品,并以作品的完成情况和完成过程进行考核评价。
三、思考与展望
1、模块《单片机控制技术》 以单片机控制的电子钟的设计制作为载体,将单片机多个知识点串连到一起,按照由浅到深逐级深入,培养学生团结协作、细致耐心、动脑动手等能力,全方位地将知识性、趣味性、实用性融为一体,引导学生自主学习,理论联系实际,制作实用的单片机电子小产品。
2、“单片机工作室”是我系单片机开发应用的“第二课堂”制作,对于已不能满足模块课程教学内容的优秀学生,要依托“单片机工作室”,注重单片机优秀人才的培养,提高他们参与创新实践的能力,特别是在参加市、省各项课外科技竞赛活动和技师班课程设计及毕业论文设计中,为学生采用单片机技术,设计开发作品提供有力的支持。
3、今后要不断延伸教学模块。要与合作企业共同制定教学实训项目,按照企业标准将“教室与实训室”、“教师与师傅”、“学生与学徒”、“作业与作品”四者合一的开展单片机教学。在与企业共建校外实习基地的基础上,依据企业标准将单片机实用项目的开发设计过程融入教学,实现仿真企业环境条件下的教学,突出技术应用的职业性。
4、要积极整合校内技术优势,积极开展对外技术服务,强化课外“产学研”与课内“教学做”的相互渗透。由单片机课程专任教师、企业技术人员与部分学生共同组成项目组,开发研制科技含量高、低成本、测量数据准确、使用简单、实用的单片机产品,使学生不断积累单片机产品的开发经验,熟悉企业生产开发流程,深刻理解企业对人才的具体要求,直接接触社会流行技术,实现学校教育与社会需求之间的无缝对接。
“电子技术基础”包括模拟电子技术和数字电子技术两门主要课程,是理工科相关专业的技术基础课程,也是生物医学工程专业的重要专业基础课和技术基础课。生物医学工程专业开设“电子电路课程设计”课程,对提高学生的电路设计能力、硬件制作能力和系统调试能力,以及培养学生发现问题、分析问题、解决问题的能力具有非常重要的意义。如何利用科学的选题在较短的时间内训练和提高学生的这些能力,并有意识地培养学生的创新意识和科研能力,是该课程在教学过程中重要的教学研究课题。[4-6]
一、生物医学工程专业“电子电路课程设计”教学中存在的问题
由于生物医学工程专业的特殊性,目前在生物医学工程专业的“电子电路课程设计”教学过程中,普遍存在以下几个问题:
1.课程设计的选题没有考虑专业特点,实施的目的性不强,与专业的整体发展建设结合较差,达不到课程设计要求
一个突出的问题是,课程设计的选题大部分是沿用电子信息类专业的传统选题,如多级低频阻容耦合放大器、功率放大器、语音放大器、函数发生器、交直流放大器、数字电子钟、定时器、智力竞赛抢答器、简易数字电容测试仪等选题,这些题目与生物医学工程专业的联系较少。这样既不能体现专业特点,也不能提高学生的兴趣,从而使得学生对所学理论知识不能很好地运用于实际,造成与实践的脱节。
2.课程设计内容不完善,所设计的内容不能充分体现课程设计的目标
“电子技术课程设计”课程应该是由许多关键环节构成的一个整体,从多个方面训练和提高学生的能力和素质。但原有的教学过程中,往往会忽略其中的一些重要环节。这些问题表现在:只要求学生完成电路制作,对于任务分析、方案选择、分析计算要求较少,把课程设计简化成操作实训;不重视测试和数据分析,不能充分锻炼学生分析问题和解决问题的能力;不注重使用设计软件和选择流行器件,只使用过时的器件,甚至老旧的分立元件,制作的电路达不到任务要求。这些对于提高课程设计的效果都有不利的影响,导致学生实际动手能力练习不够、电路设计能力偏低、综合调试能力不高。
3.评价方法和标准简单,随意性大
教学过程中没有严格的评价标准,课程成绩评定基本上流于形式,从而造成课程设计质量下降。
在这种情况下,培养出来的学生普遍存在电路设计能力和系统调试能力不足,发现问题、分析问题、解决问题的能力偏低,这样培养出来的学生难以在工程设计领域中发挥独当一面的作用,不能快速适应社会要求。
二、“电子电路课程设计”的改革思路和实践
几年来,在“电子电路课程设计”教学过程中进行了几点改革尝试,取得了较好的教学效果。
1.明确专业培养目标,构建课程设计选题库
“电子电路课程设计”是电子信息类专业的传统课程,有大量的课程设计选题,但这些选题中,大部分与生物医学工程专业和生物医学电子技术课程的教学内容和要求有较大的区别。为此,学院组织教师从众多的课程设计选题中,选出若干与专业相关的训练内容,进行加工改造,并对每一个设计选题提出具体的训练要求和目标,构成课程设计选题库。题库中题目所涉及到的课程内容和设计内容的统计分析见表1。从表中可以看出,与生物医学工程专业的教学内容密切相关的选题占总选题的72%,这样就形成了有专业特色的电子电路课程设计内容和要求。
另外还结合专业的特色,对与医疗仪器密切相关的设计,如测量心电、脑电、心音、血氧饱和度、脉搏波等信号的电子系统的采集电路部分,要求学生做成完整的模块,作为以后系统课程设计的子模块。
2.以学生为主体,改革传统课程设计指导方式
改变过去教师全程指导,有问必答,甚至直接给出参考电路的指导方式。教师在给出选题和要求后,将学生分成若干小组,每个小组在选题范围内选定设计题目。学生自己查阅资料,提出方案,独立设计,最终完成设计并进行完整的调试和测试。在整个课程设计过程中,教师每周留出固定或灵活的课堂答疑时间,回答学生提出的问题或启发学生提出问题,直至课程设计结束。
3.充分发挥学生潜能,加深加宽课程设计的训练内容并提高要求
在课程设计过程中,教师提出设计的目的和要求后,实验室只负责提供材料及仪器,其他工作全部由学生自己完成。为了更多地训练学生的综合素质,学生需要独立完成实践步骤确定、任务分析、方案选择、电路设计、元件选择、电路布线、印刷板设计及制造、元件测试、电路焊接、系统调试、测试方案设计、电路测试等训练步骤,并将这些步骤作为课程考核的训练点(见表2)。通过这种完整的训练过程,学生不仅能够初步掌握电子产品的设计开发流程,还能较好地锻炼自己的专业素养。
4.重视现代电子技术的发展和应用,鼓励学生掌握和使用工具软件和最新芯片
做到软件和硬件结合,学生除了完成电路设计以及硬件的焊接、安装、调试外,还需要至少掌握一种印刷电路板设计软件和一种电路仿真软件,有条件的学生还应掌握一种数字电路设计软件(如EDA软件)。学生既要熟练掌握电阻、电容、电感、二极管、三极管等分立元件的选择和使用外,还应尽量掌握和使用最新的集成芯片,以进一步训练工程设计能力。这样,电子电路课程设计可以达到更好的教学效果。
5.培养学生兴趣,将课程设计与创新课题训练相结合
鼓励教师将本科创新课题、教师科研课题等进行简化、分割,形成适合课程设计的课题,供学生选择。鼓励学生进行电子产品整机设计、开发、组装、调试,并且组织学生共同交流,互相学习,不断提高。
三、结束语
“电子技术”课程的理论性和实践性都很强,而“电子电路课程设计”作为教学过程中的重要一环,体现出了越来越重要的作用。对该课程进行的一系列教学改革实践,取得了良好的效果。按照改革后的教学模式,“电子电路课程设计”不断能够巩固课堂上所学的理论知识,加深学生对课堂抽象概念的理解,提高了学生的设计能力和创新能力,还能使学生对生物医学工程专业的认识更加明确具体,这些都有利于培养出理论基础扎实、实际工作能力强的高素质生物医学工程专业人才。
参考文献:
[1]John D.Enderle.生物医学工程学概论[M].封洲燕,译.北京:机械工业出版社,2010.
[2]李刚,张旭.生物医学电子学[M].北京:电子工业出版社,2008.
[3]余学飞.现代医学电子仪器原理与设计[M].第二版.华南理工大学出版社,2007.
[4]刘剑,杨立才,刘常春.“生物医学传感器与测量”课程教学改革探索[J].电气电子教学学报,2011,(1):15-17.
[关键词]自适应前照灯系统;主控单元;数据采集
中图分类号:U463.651 文献标识码:A 文章编号:1009-914X(2014)20-0282-02
1.引言
中国的汽车产业在飞速的发展,同时带来的也有交通事故的频繁发生,而由于驾驶员视线问题造成的事故比重占了一大半。前照灯是为驾驶员在夜间或者特殊环境下提供照明的,照明的好坏直接影响了驾驶员的安全。我国现有的传统照明系统存在诸多问题。在弯道和特殊环境下不能提供充足的照明,而AFS系统可以实现。现如今很多高档车如奥迪A4,宝马5系等已经安装此系统。所以,AFS系统的研发是汽车工业的发展方向。
2. 总体方案设计及分析
本汽车前照灯自适应系统是由车速传感器、转角传感器、LIN总线、主控单元(MSP430F149)、步进电机和前照灯所组成的。在汽车行驶过程当中,通过转角传感器进行方向盘转角的数据采集,和车速传感器进行汽车速度的数据采集,将所得数据通过多输入输出通道传递到主控单元(MSP430F149)中,在其内部进行控制策略的精确计算,控制步进电机左右方向转动,从而完成对汽车前照灯左右方向的控制[1]。AFS系统原理框图如图1所示。
3.灯水平转角与方向盘转角量、车速关系
汽车的安全制动距离是汽车转弯时前照灯转动角度的重要依据,因此在汽车转弯时,应先计算出制动距离,而车灯转动多少角度是由车速和转角弧度所决定的。车速传感器可提供车速,弧度既是弯道的半径,通过转角传感器和前后轮的转动角度,依据阿克曼原理可计算出其实际的转弯半径。本文以此建立的汽车转弯时的模型[2]。
a)阿克曼原理:
阿克曼汽车转动原理是指汽车前后轮的轴心垂直延长线必交于一点(Z点),如图2所示,图中线段ZX为转弯半径,其值为弯道的半径R,车辆的前后轴间距为D,外侧前轮转向的角度为B[2]。
通过以上弯道半径、汽车速度和车灯转角的几何关系,可以表明汽车在行驶的过程中,方向盘的转角与车灯转角是成正比关系。车速在方向盘转角为定值时,车速和车灯转角也成正比的关系。将以上关系带入AFS系统的设计当中,使理论和实践更好的结合,更精确地确定的转动的状态,从而确定车辆转向模式,更加安全、智能化。
4.硬件电路设计
4.1 单片机最小系统设计
整个系统的核心控制部分为单片机电路,通过单片进控制来实现电机驱动从而带动前照灯调节。本文的主要控制单元选用的是MSP430F149型的单片机,体积很小且结构简单,性价比较高,生产和调试都较为方便,具有16位RISC结构,有低速和高速两种振荡器,其正常工作电压,可以在1.8V-3.6V间工作,如图4所示。由于电源的输入的不定向纹波会影响到单片机,所以我们设计进行滤波。而且我们应考虑到抗干扰等问题。因此,本系统中受到的干扰会比较小,在单片机的模拟电源输入端增加一个滤波电容用来减小干扰。所以,我们让模拟地和数字地接到一起共地。
4.2 转角传感器
转角传感器有很多种,基于不同原理有光电式,电阻式,电磁式等,各有其优点及缺点。在本系统中,转角传感器选用的是基于光电式的编码器(EPC-755A),而其中鉴相电路则是由与非门与触发器所构成的,同时应用了3片74LS193相连接而构成了计数电路[1],在光电编码器工作过程当中,通过输出通道波形的前后判断其工作在顺时针还是逆时针,如通道A波形信号超前,则其在顺时针转动,如通道A波形信号滞后,则其在逆时针转动,同时触发器的输出信号出现两种不同的高低电平,计数脉冲将通过上、下的与非门输送数据到计数电路当中。最后传送到处理电路中,其电路原理图如图5所示[3]。
4.3 车速信号处理电路
从汽车的里程表里引出汽车的电压信号,该设计的电压为12V。由于单片机可以处理在5V信号电平,所以速度信号电路主要完成信号的电平匹配设计,信号转换成数字信号的5V,12V,利用光电藕合器将输出信号送入控制单元并进行计数。本系统的车速信号处理电路原理如图6所示[7]。
4.4 驱动电路的设计
LIN总线将传感器采集的数据信号传入到控制单元当中,通过内部的精确计算,从而实现控制步进电机转动,它会通过定位指令,正确启动或停止步进马达,将其设定在最短的时间点。也会将出现的问题反馈给管理和内部行动和决定的报告到LIN接口。此AMIS-30623包括以下内容:为LIN协议处理程序,内部振荡器,以及控制逻辑和控制所需的PWM。内部参考电压进行精确修剪源,一个保护块具有热关机电路。5V稳压器(从电池供电)提供的内部逻辑电路。本系统的步进电机驱动电路如图7所示[1]。
5.系统主程序设计
硬件电路的正常运行必须有软件的配合,在软件程序设计开发工作中,主要是搭建硬件电路板,使其结构合理、减小面积,硬件结构搭建完成后,需要软件程序去支撑完成功能,所以软件程序,软件功能的完善关系到硬件系统的可靠稳定性。通过系统初始化、编程、中断定时进行判断,如不符合条件,将初始化系统,再次进行判断,直至判断符合条件为止等一系列的运作,来控制步进电机的转动,主程序流程如图9所示[1]。
6.结束语
本文通过总体方案的设计、控制策略建模、硬件电路设计、软件电路流程设计、实现了汽车前照灯自适应系统的设计,通过信号的采集、传送、处理,完成汽车前照灯的智能转动。但仍有很多地方如传感器的增加,总线的选择,单片机的工作效率,光线的变换等需要改进。能够在不同的行驶环境中做到灯光的自由变换,是我们的研究目标,同时为给驾驶员提供一个更加安全可靠的驾驶环境,也会降低交通事故发生率,所以汽车前照灯自适应系统的研究将是今后汽车电子工业的重要研究课题。
参考文献
[1] 束华明,高明煜,王园园. 基于单片机控制的汽车前照灯自适应系统[J].电子测量与仪器学报,2008(增刊):318-321.
[2] 朱丽.基于PSoC的汽车前照灯智能控制系统研究[D]:[硕士学位论文].长春理工大学,2013 .
[3] 徐科军.传感器与检测技术[M].北京;电子工业出版社,2008.2.
[4] 崔涛,刘刚.故障树分析法在汽车故障诊断中的应用[J].长春工业大学学报,2009:661-664.
[5] 侯天伟, 盛立峰, 史国计, 杨玉春.基于虚拟仪器的汽车电子设备测试系统[J].长春工业大学学报,2008,32(5):546-549.
[6] 勒伟,廖延彪,导波光学传感器原理与技术[M].北京:科学出版社,1998
[7] 杨财,周艳霞.方向盘转角传感器研究进展[J].传感器与微系统,2007,26(11):1-4.
1电子产品开发概述
电子产品的开发离不开企业这个实体,开发项目管理理念需要结合企业的自身实际情况,如企业的行政组织架构,开发项目团队的组织架构等来制定最适合企业的一套产品开发项目管理流程。本文以图1所示的开发项目团队组织架构框来阐述电子产品开发项目管理流程。产品开发整体流程实际上包含一系列阶段步骤,把一组需求和思想转化为市场上成功产品的流程。本文介绍的电子产品开发项目整体流程框图如图2所示。由图2所述,电子产品开发首先要进行市场调研阶段对产品作出准确的市场定位,项目管理者需要进行产品评估设计阶段仔细分析产品功能指标、性能指标、技术参数、系统规格确定准确的项目开发文档作为产品开发的输入,需要对整体设计进行开发计划的制定,系统规格等进行产品开发目标的确定,同时组织设计开发项目团队成员分配,设计开发人员项目责任分配,制定团队各成员的详细准确的设计参数任务书,设置各个阶段时间节点,进行产品成本、时间的控制目标和措施,生产过程中文件控制的实施,产品标准化制定计划等。随后进行产品设计实施阶段,进行设计评审、开发执行,接着进入制作ES样机阶段制作样机进行测试,测试成功随后进行产品小批量生产阶段进行生产小批量样机测试,产品大批量生产阶段,产品更新维护阶段直至产品全生命周期结束。
2电子产品开发技术的详细流程
2.1硬件设计流程
产品硬件设计流程如图3所示,硬件项目组根据产品的技术定义,准确的系统技术参数规格、功能指标、电气性能指标等,进行硬件电路实现方案的设计工作,方案的设计可以提出几套实现方案,最好能引用原有生产产品上的经典的电路模块从而更有力保证产品的设计的稳定可靠性,项目协调员组织相关责任人进行硬件电路设计的评审,评审的原则是以最低的成本最可靠的方案为原则进行方案选定。选定后由硬件工程师进行原理图的设计,设计完成后需要进行原理图的评审工作,评审合格后再进行PCBlayout设计,在进行PCB设计的同时硬件工程师需要与结构工程师一同协调确定产品的开口,孔位,接口位置等信息进行PCB设计。PCB设计完成后需要进行PCB图的评审,PCB评审成功后再进行BOM表的整理,进行元器件的采购,焊接PCB后与软件设计人员进行硬件单板功能调试工作,与结构设计人员进行装配组装调试,发现问题填写问题报告,反馈协调到具体的相关设计人员进行整改工作。最后输出的原理图、PCB、BOM表等资料归档作为下一阶段产品ES样机资料发放的输入。
2.2软件设计流程
产品软件设计流程图如图4所示,软件项目组软件系统需求分析得出的系统需求说明按软件设计流程进行软件方面的设计工作,设计的方案首先根据具体的硬件设计电路模块进行各个模块的软件设计驱动及测试工作,如发现问题及时反馈给硬件设计人员进行协商修改,如果没问题则提出系统软件框架的设计方案,项目协调员组织相关责任人进行软件方案评审,评审的时候需要仔细根据需求实现的技术细节来核实软件是否能达到相应的技术指标。评审成功后则根据具体的功能实现模块逐个进行软件设计,每个功能模块设计完成后,再进行软件整体模块代码兼容软件集成设计调试工作,调试成功后需要在几套硬件上进行反复的测试,测试完成各方面达到系统要求指标后进行程序整理归档及初次发放版本管理。最后输出的软件说明文件、源程序、烧录程序等作为下一阶段ES样机资料发放的输入。
2.3结构设计流程
根据产品的技术定义,提出的准确的系统参数规格,结构项目组进行结构设计工作,根据产品的外观要求,整体尺寸大小、开孔位置、按键、LED灯、屏的位置、端子开孔、电气要求等,选择合适的壳体,进行结构图纸的绘制,绘制的过程中需要与硬件设计人员一同确定产品的一些细节问题,绘制完成后通过软件模拟,模拟成功项目协调员协调相关责任人进行结构设计方案的评审,评审成功后进行结构图纸的释放进行快速成型制作一套结构结合PCB板、结构开孔、按键、屏、端子等进行组装测试。测试没有问题后进行结构图纸的归档工作,最后输出的结构装配图、部装总装文件等作为下一阶段ES样机资料发放的输入。
2.4产品ES样机流程
产品ES样机流程如图6所示,技术工程部在产品开发设计实施阶段完成了硬件、软件、结构设计之后,将硬件设计的输出、软件设计的输出、结构设计的输出作为产品ES样机的输入文件,相关技术设计工程师完成ES样机的测试、调试、组装、装配工作,同时将遇到的问题记录到样机问题反馈表中,随后进行产品功能测试、产品电气测试、产品整机测试,测试过程中如发现问题及时反馈给相关责任技术设计人员进行修改,如果没问题则将产品设计文件,ES样机反馈问题,功能测试报告,电气测试报告,ES样机整机检验报告等进行归档工作,同时将ES样机进行拍照录像存档工作作为下一阶段小批量生产的输入,完成产品ES样机流程。
2.5产品的小批量生产
产品ES样机阶段结束后,接下来的阶段就是进行产品的小批量生产试制阶段,工艺部门与技术工程部门进行输入输出文件交接工作,工艺部门根据产品ES样机流程阶段的输出得到的各种归档资料作为产品小批量生产的输入。产品小批量生产试制其流程如图7所示。工艺部门独立按计划按流程制作小批量样机,完成后质检部门QC对小批量样机进行整机全检,并公布遇到的所以问题,工艺部门完成解决相关问题无法解决的问题反馈到技术部门相关设计人员解决相关问题,解决完成后公布处理结果,工艺、质检进行协调测试直至一致通过,接着进行修改完善相关资料,最后进行工艺、质检、技术三部门共同认证小批量生产的样机是否合格,合格则完成产品的小批量生产流程。
2.6产品的大批量生产
电子产品经过工艺部门小批量生产后完善了产品的配套的工艺生产指导文件,但是有时在大批量生产会暴露出批量的相同的问题如电子元器件采购出错,芯片批次不同造成性能不同,结构件的加工误差无法组装等等,所以在大批量生产之前除了需要根据工程样机及配套的工程样机文件来指导大批量生产之外,在大批量生产进行头几台生产时仍然需要仔细进行整机制造后进行整机全检,持续修改完善工艺资料后,接着就将完善后的工艺资料正式转为生产指导资料指导流水线进行大批量生产进程。大批量生产的流程图如图8所示。
2.7产品维护阶段
产品开发大批量生产阶段结束后,整个项目并未结束,此后由于客户需求,技术更新,降低成本等因素进行产品修改更新,都会在原产品基础上提出些设计的更新变更方案,这个阶段就是项目产品维护更新阶段,需要对项目设计更新,设计人员修改设计文档,在ES样机上进行测试,测试合格是否正式,正式发放升级通知及更新套件处理等,以及进行产品更新升级批次的管理工作等一系列跟踪直到项目生命周期的结束。其中产品修改更新流程如图9所示。
3结束语
[关键词] 就业;教学改革;电子技术
[中图分类号] G646 [文献标识码] A
1 引言
电子技术无疑是当今应用领域最有发展前途的技术之一,现已被广泛应用于工业控制系统、信息家电、通信设备、医疗仪器等众多领域。而随着社会的快速发展,整个行业对电子技术人才的需求日益旺盛。正基于此,国内众多高校、职业技术学院和培训机构纷纷开展电子技术系统的教学和培训工作。但是,相对于旺盛的人才需求,行业内人才的供给状况,却不容乐观。据不完全统计,电信业电子技术人才的需求将会在今后一段时间内继续上扬。
2 适应高校电子技术方向的就业岗位调查
总体上电子技术系统可划分硬件和软件两部分,硬件一般由高性能的微处理器和的接口电路组成,软件一般由硬件抽象层、电子技术操作系统、软件应用平台和应用程序等组成:
硬件层:硬件是整个电子技术操作系统和应用程序运行的平台,包括输入输出接口/驱动电路、处理器、存储器、定时器、串口、中断控制器、外设器件、图形控制器及相关系统电路等部分。对于硬件层的设计开发要有较深的硬件开发经验,这些岗位一般都需要资深的硬件工程师,不太适合刚毕业的本科学生,对于在校期间有过研发经历的研究生比较合适。
中间层:硬件抽象层(HAL)或板级支持包(BSP),负责对各种硬件功能提供软件接口,包括硬件初始化、时钟管理、定时器管理、中断处理、总线管理、内存地址的映射,等。它位于底层硬件和操作系统之间,是二者之间的桥梁。这个层次的设计开发不仅要精通底层硬件结构,还要熟悉上层的操作系统,主要工作是开发设备驱动程序。这部分工作需要有丰富的软硬件研发经验才可以胜任,岗位主要针对有经验的本科生和研究生。
软件层:主要包括操作系统和软件应用平台。操作系统主要是实现资源的访问和管理,完成任务调度,支持应用软件的运行及开发。软件应用平台则是为了提高开发速度与软件质量,一些应用提供商开发了一些可重用的应用平台,封装了一些常用的功能,同时提供API接口,可以在此基础上进行二次开发。对于操作系统级的开发比较适合学过电子技术专业课程的研究生和本科学生。对于软件应用平台上的开发比较适合学过电子技术专业课程的本科生和高职学生。
功能层:主要指的是应用软件层,位于电子技术系统层次结构的最顶层,直接与最终用户交互。针对各种特定功能来编写应用程序,实现系统的功能应用。主要是进行大量的C、C++或Java语言编程,不需要更多涉及底层硬件,大都是基于操作系统之上的编程。非常适合学过电子技术专业课程的本科生和高职生。
对于从事电子技术的企业最基本的部门划分有研发、生产、销售、技术支持部门,当然还会有行政部、财务部、采购部等其他辅助部门,在这我们主要针对的是和电子技术相关的部门。但是各企业会根据各自的规模大小、产品类型不同、研发结构不同等因素进一步细化部门[2]。所以每个企业招聘人才时都会根据具体工作来确定工作岗位。
销售部和技术支持部:销售部门一般需要大量的销售人员,这部分人员必须懂得营销的基本知识,外贸销售工程师还必须有扎实的英文功底,还必须了解电子技术产品的基本结构、组成,产品各的技术指标,以及产品的开发流程,这部分职位适合高职生和本科生。技术支持部技术支持工程师必须熟悉整个产品的开发流程,对产品的研发的各个环节都必须要有清楚的了解,对硬件原理、操作系统,应用程序都要有系统的了解,对硬件软件调试技术要比较全面,在职能部门中,这个是属于技术要求比较高的,适合高职生和本科生。
生产部:产品研发成功之后将进入生产阶段,生产部门是一个庞大的部门,需要大量的贴片工程师,焊接工程师,还有生产管理人员,这些岗位需要比较扎实的硬件基础,动手能力要比较强,这部分职位适合中专中职学生和高职生。
有接近78%以上调查对象认为以下岗位适合高校学生[2]:销售、技术支持工程师、软件测试工程师、硬件测试工程师、系统功能测试工程师,贴片焊接工程师、硬件维修工程师;有40%-60%的调查对象认为软件工程师(linux,C/C++)、软件工程师(wince .net电子技术)、软件工程师(java方向、电路图原理工程师、PCB设计工程师适合高校学生,剩下的系统研发类只有不到30%的人选择。
3 适应就业形势的岗位能力
从以上分析我们可以看出,高校学生适合的岗位主要集中在软件研发和职能部门,重点对适合高校学毕业生的岗位进行分析,通过对企业人事部门的走访,我们得知研发部对研发的产品定型后会把PCB设计图、元器件清单等资料交付采购部和生产部,进行元器件采购和制板。大多企业一般都不会设立加工厂,产品的制板和焊接都会采取外包。在加工厂将焊接好芯片的主板取回后在生产部进行硬件测试和部件组装、软件测试、整体功能测试。
生产部的工作按照流程可分为焊接工程师、硬件测试工程师、软件测试工程师、系统功能测试工程师、硬件维修工程师。这些工作岗位对学历的要求都不高,工作难度不大。主要针对的就是专科生和高校学生。在课程设计和教学方面必须从这三个方面知识点来综合考虑:
基础部分:能阅读简单的英文资料,熟悉和掌握C/C++语言。
硬件部分,焊接结构设计基础、制造、管理,熟悉或者掌握模拟电子线路、数字电路、单片机等基本硬件电子电路设计知识;接口电路程序设计;熟悉基本的EDA工具,如SPICE、ORCAD、VIEWDRAW、MODELSIM、MAXPLUS,至少熟悉1到2种,熟悉SDL;对于32位电子技术处理器和8位单片机,熟悉其应用设计和调试方法。
系统部分,熟悉电子技术处理器体系结构, 电子技术芯片定义;了解Linux、Wince、uC/OS-II、Vxworks、RTOS操作系统知识, 电子技术操作系统工作原理,内核定制与裁剪;了解设备驱动、内存管理和文件系统;熟悉脚本程序编程(python或perl);精通C语言,对电子技术工程实践中常用的库函数有较为透彻的理解;掌握代码运行时的内存处理情况,KGDB等内核调试工具的使用;软件部分, 熟悉Linux、Wince、Ucos、Vxworks等操作系统的各种软件开发环境之一;熟悉C语言编程、汇编语言、C++语言、JAVA语言、.NET语言之一;熟悉GUI开发过程,熟悉网络编程,多任务编程;熟悉电子技术系统的程序设计过程,熟悉软件工程,熟悉各类文档的编写;掌握白盒测试、黑盒测试、回归测试;掌握单元测试、集成测试、系统测试过程,测试的误区和经验。
4 结语
高校对各类教育应给予更多的重视,高职教育的学术性不如本科教育强,而职业性又比高职教育弱,在劳动力市场竞争中难以形成自己的特点,这也许是高职生就业落实率下降的原因之一。因此,高校要明确教育的培养目标,调整培养内容,提高教育质量,创出高职特色。根据电子技术的教学内容和课程建设的需求,教学方法与教学手段做了适当的改进。教学方法多样化,能够满足各种专业和不同学习习惯的学生学习本课程;教学手段多类型,包括课堂讲授、软件实践操作和交流型学习。尤其是交流型学习,打破了以往单一的授课和上机实习模式,能够提高学生的积极性和主动性。主要概括为以下几个方面:1.课堂讲授方式的改进,在课堂教学中不仅采用多媒体课件的形式展示教学内容.也要注意利用现代声光技术对实践知识进行信息蘑现。如上课时播放现场录像。可让学生足不出教室。也能感受置身于施工现场,体会施工流程;2.作业方式的改进,在教学中可用课题报告、实训、实习等环节取代传统的平时作业;3.考试方式改进。
参考文献:
[1]陈渝,李明等.源码开放的电子技术系统软件分析与实践——基于SKYEYE和ARM开发平台[M].北京:北京航空航天大学出版社,2004:3-5.
[2]阂维方,丁小浩,文东茅.2005年高校毕业生就业状况的调查分析[J].高等教育研究,25(l):31-38.
[3]岳昌君,巩见闽,黄潞.高校毕业生就业特点及其变化趋势平[J].北京教育发展研究,2008(7):25-26.
关键词 嵌入式系统;单片机;计算机系统
中图分类号:G642.3 文献标识码:B
文章编号:1671-489X(2017)08-0085-02
Content Setting of Embedded System Curriculum//XU Jinglei
Abstract The MCU Course is combined with embedded system courses, taking the 51 as one of the most simple embedded processor
to learn, while learning a more advanced embedded processor STM32.
Key words embedded system; single-chip; computer system
1 嵌入式系统的定位
目前对于嵌入式系统的理解各有不同,这种情况直接导致嵌入式课程在内容设置方面的区别。通过分析不同观点,可以得到合适的指导原则。
一种观点认为,嵌入式系统是非PC系统,有计算机功能,但不能称之为计算机设备或设备。它是一种以软件和硬件为中心的专用计算机系统,可应用于功能、可靠性、成本、体积、功耗等方面有严格要求的场合。简单地说,嵌入式系统的硬件和软件联合使用,仿照BIOS的工作方式,具有自动化程度高、软件代码小、响应速度快的特点,特别是具有实时多任务的功能[1]。嵌入式系统主要由嵌入式处理器、相关支持硬件、嵌入式操作系统和应用软件系统组成。
这种观点看似面面俱到,实则主次不分,没有指出嵌入式系统的本质,其中把嵌入式系统称为专用计算机系统更是错误的,因为事实上,嵌入式系统也可以作为通用计算机系统。
另一种观点认为,嵌入式系统就是ARM体系结构、ARM指令系统、S3C2410嵌入式微控制器及嵌入式系统分析和设计等内容[2-3]。要了解嵌入式操作系统的进程、进程调度、进程间通信机制及嵌入式操作系统的其他功能,掌握嵌入式操作系统LINUX的基本命令,LINUX操作系统下应用程序的开发与调试,LINUX操作系统驱动程序的调试。
这种观点混淆了嵌入式系统和嵌入式操作系统的区别,实质是在讲如何使用LINUX嵌入式操作系统,而这只是嵌入式系统的一小部分。
综合以上观点,可以看到对于嵌入式系统的定位比较混乱,正确的定位该以计算机系统的核心单元处理器为准,以处理器的最小尺寸为依据,把整个计算机系统分为三大类:服务式、桌面式、嵌入式。
1)服务式指的是服务式计算机系统,提供高等的计算性能,采用服务式处理器,如网站服务器、超级计算机;
2)桌面式指的是桌面式计算机系统,提供中等的计算性能,采用桌面式处理器,如台式机、笔记本;
3)嵌入式指的是嵌入式计算机系统,提供低等的计算性能,采用嵌入式处理器,如手机、平板。
这种分类方法只以处理器的最小尺寸为依据,标准客观清晰,尺寸越小性能越低。处理器的最小尺寸指的是同型号前提下的最小封装。事实上,嵌入式的词义本身也意味着尺寸小,以便嵌入到其他设备。
至于每类计算机系统要做成通用还是专用,要根据实际需求而定。如手机这个嵌入式系统,发展初期是专用的,到智能手机时期,已经是通用系统了。
简单说,嵌入式系统是采用嵌入式处理器的计算机系统。嵌入式处理器又称为单片机、微控制器、微处理器。嵌入式处理器包含一切小尺寸的处理器,如51、61、AVR、PIC、ARM、DSP、FPGA等。
2 单片机和嵌入式系统的统一
单片机是一种集成电路芯片,包含大规模集成电路技术的CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能,有的还包含显示驱动电路、脉宽调制电路。单片机是一个小而完善的计算机系统,广泛应用于工业控制领域,从8位单片机发展到目前32位MCU。
单片机,毫无疑问,也是一种小尺寸的嵌入式处理器。采用单片机构成的计算机系统,也是一种嵌入式系统。单片机的词义本身也意味着在单个硅片上集成了尽可能多的部件,以便实现尺寸小的目标,这个特征也是所有嵌入式处理器的特征。因此,单片机和嵌入式可以统一化,或者说,单片机是嵌入式处理器的一个别称。
目前,单片机课程普遍以51为主,这容易造成一种错误认识:单片机就是51。事实上,单片机的内涵要大得多。为了理清关系,可以把单片机课程合并到嵌入式系统课程,把51作为一种最简单的嵌入式处理器进行学习,同时学习一种较高级的嵌入式处理器STM32,相互对照,以便树立正确的嵌入式系统的概念。
3 嵌入式系统的教学方向
嵌入式系统学习的内容很多,需要设定若干教学方向。首先,要明确的是学习嵌入式系统的目的是如何使用,而不是制造。具体说就是不制造嵌入式处理器,不制造嵌入式操作系统,而是利用现有嵌入式处理器设计电路,或利用现有嵌入式操作系统编制程序。其次,要明确有无操作系统,这是设定教学方向的依据。
如果没有操作系统,则需要在程序设计中直接操作各个硬件寄存器,和硬件直接打交道,程序和硬件直接相关,称为嵌入式系统的硬方向。一个嵌入式处理器是否具有操作系统不是随意的,因为操作系统属于额外代码,对嵌入式处理器的性能是有要求的。若嵌入式处理器的性能较低,勉强运行操作系统,也是没有意义的,不如裸机运行快。这方面的嵌入式处理器有51、61、STM32等,学习的重点在于处理器本身。嵌入式系统的硬方向,其课程名仍称为嵌入式系统。
如果有操作系统,则程序设计中无须直接操作各个硬件寄存器,不和硬件直接打交道,直接操作硬件的工作由操作系统(含驱动程序)完成,程序可以做到和硬件无关,只需和操作系统(含驱动程序)软件接口,称为嵌入式系统的软方向。一个嵌入式处理器是否具有操作系统不是随意的,性能较高的嵌入式处理器,如主频400 MHz以上的S3C2410,其内部结构已经复杂到让直接操作硬件变得不现实,必须采用嵌入式操作系统进行开发,如Linux、Android、iOS,学习的重点在于操作系统,而不是处理器本身。嵌入式系统的软方向,其课程名可以称为嵌入式操作系统。
4 嵌入式系统的内容设置
嵌入式系统,作为嵌入式系统的硬方向,课程内容应该是学习不带操作系统的嵌入式处理器,学习的重点在于处理器本身的细节,为进一步学习嵌入式操作系统建立一个扎实的硬件基础。没有这个环节,就难以理解操作系统的一些硬件概念。
嵌入式系统课程主要培养学生了解有关嵌入式系统的基本原理、设计方法以及嵌入式系统的最新发展,初步掌握嵌入式系统开发的过程和常用方法。通过本课程的学习,要求学生掌握嵌入式系统的基础概念、基本原理、开发流程和步骤、嵌入式应用系统工程设计和解决技术问题的基本方法,具备一个合格的高新技术工程研发人员综合运用所学各种知识和技能,从分析嵌入式系统应用项目需求,到确立设计开发方案,到方案实施和解决基本问题的能力。
课程基本内容:了解嵌入式系统的特性、基本原理及其发展趋势;建立嵌入式系统的概念;掌握51体系结构、STM32嵌入式微控制器及嵌入式系统分析和设计等内容。该课程是一门实践与理论结合性很强的课程,以电子技术、微机原理与接口技术、C语言等课程为基础,主要介绍基于51和STM32微处理器的硬件基础和编程。
课程重点与难点:嵌入式系统的概念,嵌入式系统的硬件系统,包括IO、中断、DMA、SPI的工作原理,嵌入式系统的C语言编程方法。
课程章节主要内容总体分为51和STM32两大部分。
第一部分
第2章 AT89s51单片机硬件结构:AT89S51单片机的硬件组成,引脚功能,电源及时钟引脚等。
第3章 C51语言编程基础:Keil C51简介,Keil C51的开发工具,C51语言程序设计基础,C51语言中的数据类型与存储类型等。
第4章 AT89s51片内并行端口的原理及编程:AT89S51
的并行I/0端口的结构及工作原理,并行I/O端口的C51编程举例。
第5章 AT89s51单片机的中断系统:AT89S51中断技术概述,中断允许与中断优先级的控制,响应中断请求的条件,中断函数。
第6章 AT89s51单片机的定时器/计数器:工作方式控制寄存器TMOD,定时器/计数器的4种工作方式,定时器/计数器的编程和应用。
第7章 AT89S51单片机的串行口:串行口的结构,串行口控制寄存器SCON,特殊功能寄存器PCON,串行口的4种工作方式。
第12章 单片机的串行扩展技术。
第二部分
第1章 STM32基本原理:STM32性能和结构,Cortex M3处理器,Cortex M3寄存器,STM32储存地址映射,复位和时钟控制。
第2章 硬件设计:STM32主板设计,MCU及其周围电路设计,USB转串口电路设计,TTL转RS232电路设计,网络端口路。
第3章 STM32软件开发:STM32软件开发环境,MDKKeil开发环境,获得和理解固件库,操作GPIO和管理中断,嵌套向量中断控制器NVIC库函数,串口通信和DMA编程,SPI与I2C编程,TF卡编程,液晶屏及触摸屏编程。
参考文献
[1]王奕翔.《嵌入式系统原理与应用》课程教学改革与实践[J].教育现代化,2016(25):51-52.
中图分类号:TN919-34文献标识码:A
文章编号:1004-373X(2010)19-0172-04
Design of Evoked Potential System Based on FPGA
XIE Hong, LI Gang, YAO Nan, XIA Bin
(Institute of Information Engineering, Shanghai Maritime University, Shanghai 200135, China)
Abstract: A FPGA-based evoked potential system is designed. The overall design of the evoked potential instrument is given. The integrated design of each module which takes FPGA as the main chip is discussed. On the basis of the integrated design, the characteristic of analog-to-digital conversion chip ADS1258 is discoursed and the circuit design of the interface connecting the chip with FPGA is presented. The design of the evoked potential system possesses the advantages of high reliability, versatility and scalability, and has a great application value and good market prospect.Keywords: evoked potential; FPGA; ADS1258; interface circuit
0 引 言
诱发电位是指对神经系统某一特定部位给予特定刺激后在大脑皮层所产生的特定电活动,对于神经系统功能性异常的疾病有独特的检测诊断能力,也是大脑认知和脑机接口研究常用的技术手段。诱发电位仪通常包括视觉诱发电位、听觉诱发电位[1]和体感诱发电位┤种检测功能,其硬件系统核心组成部分包括:刺激信号源、脑电信号放大和数据采集。刺激信号源包括视觉刺激信号(如棋盘格、黑白闪光等)、听觉刺激信号和神经刺激信号,一般采用分离设计[2]。
脑电信号数据采集一般包括模/数转换、数据预处理和数据传输等部分,而模/数转换芯片和主控微处理器芯片的选择主导了整个数据采集系统的性能。在目前的采集系统中,基于单片机的中低端控制芯片功能较弱,逐渐被DSP和ARM或增强型单片机[3]所取代。DSP芯片采用哈佛结构的流水线工作方式,能实现复杂信号处理算法,如文献[4]采用DSP实现复杂的脑电信号采集系统;而ARM适合做事务处理或者中低端应用,如文献[5]中通过ARM处理器建立操作系统实现任务调度。尽管采用DSP和ARM芯片可使系统的运算能力和管理事务的能力得到很大增强,但是构成完整的数据采集系统通常还需要外部逻辑控制器件,尤其不能将数据采集和刺激信号源在单片上集成实现。
由于现代电子技术的飞速发展,可编程逻辑芯片FPGA的集成度越来越高,受到很多厂家和研究机构的关注,利用它的可编程性和可扩展,可将绝大部分的功能集成到FPGA芯片中。如文献[6]采用FPGA实现了脑电信号采集;文献[7]则将盲分离算法ICA在FPGA上实现,能同时对脑电信号进行采集和独立分量分解。
本文针对诱发电位仪的硬件系统设计,提出将信号采集控制、处理、传输、刺激信号产生等功能集成在一块FPGA芯片上的设计方案,并结合ADS1258[8]模/数转换芯片,使得系统具有16通道,每个通道24位采样精度和400 kHz采样率的高性能,而且电路结构简单。
1 系统总体设计
本文提出的诱发电位仪包括了刺激信号源、数据采集和数据传输三大部分。其中核心控制芯片采用Altera公司的FPGA,产生刺激诱发信号源包括听觉刺激、神经传导刺激和视觉诱发刺激,以及实现对电路如A/D,USB等模块的控制并在芯片内部集成滤波算法模块;数据采集采用高精度多通道的模/数转换芯片ADS1258将通过放大器放大后的诱发电位信号进行模/数转换并输入FPGA内进行前置处理;数据传输通过USB控制器Cypress 68013A[9]将诱发电位数据传输至PC上位机,由上位机应用程序实现诱发脑电信号的后期处理、显示、存储等功能。系统总体框图见图1。
图1 系统总体框图
2 FPGA软件模块设计
2.1 FPGA的优势
FPGA即现场可编程门阵列,是在CPLD的基础上发展起来的新型高性能可编程逻辑器件,它既继承了ASIC的大规模、高集成度、高可靠性的优点,又克服了普通ASIC设计周期长、投资大、灵活性差的缺点,逐步成为复杂数字硬件电路设计的理想选择[10]。不同于传统的诱发电位仪设计,本文将大部分分立元件实现的功能集成到了FPGA芯片中,实现多种刺激模式和滤波模块以及实现对器件的控制,不仅提高了集成度使仪器小型化、便携化成为可能,而且片内模块可反复修改,提高了设计开发效率降低了成本,也可以方便地实现各模块之间的同步。
2.2 软件模块整体设计
本设计中,FPGA芯片软件模块包括了诱发电位刺激模块、信号传输控制模块和数字信号处理模块三大部分;由共同的同步信号协同合作,完成诱发电位仪的诱发刺激、信号的传输、数字滤波等核心控制处理功能。FPGA内软件模块框图如图2所示。
图2 FPGA内部功能结构模块
2.3 诱发电位刺激模块
在FPGA芯片中设计了诱发电位刺激模块,主要功能包括:听觉诱发电位刺激、神经传导刺激和视觉诱发电位刺激。刺激信号主要由脉冲信号进行控制[11],通过FPGA芯片可以直接输出脉冲信号和VGA控制信号。听觉诱发刺激信号和神经传导刺激信号可由FPGA输出的脉冲信号经功率放大后产生,在此听觉诱发电位刺激信号为双通道,一路信号产生脉冲信号如PWM(脉宽调制)波,另一路由FPGA芯片内部模块通过DA转换器产生白噪声,而神经传导刺激信号可直接由FPGA输出PWM脉冲直接驱动电压放大器生成。通过Verilog硬件描述语言,在FPGA中实现诱发电位刺激源信号,并通过FPGA端口输出,例如在芯片中使用以下代码可产生一个占空比为PWM_WIDTH∶1的PWM波形:
always @(posedge clk or negedge clr_set)begin
if (clr_set==0)pwm_out
else
if (counter>=PWM_WIDTH)
pwm_out
else
if (counter==0)
pwm_out
else
pwm_out
end
视觉诱发刺激信号由在FPGA芯片中存储的刺激图像数据直接产生VGA时序控制信号,控制VGA显示器显示棋盘格或彩条刺激图像[12] 给予人体视觉刺激。
诱发电位刺激信号主要参数包括刺激脉宽、刺激频率、刺激强度、刺激类型和刺激模式[13],USB芯片从上位机接收到参数配置信号,传递给诱发刺激信号生成模块发出脉冲。例如,生成听觉诱发电位刺激信号如图3所示,它的刺激脉宽为0.2 ms,刺激频率为12 Hz,设置某一刺激强度(由分贝进行度量);而生成视觉诱发电位刺激信号,刺激频率为2 Hz,刺激类型为棋盘格模式,刺激模式为16×16。
图3 刺激信号脉宽和周期
2.4 信号传输控制模块
在FPGA内部将完成诱发电位仪同步信号发生模块、A/D转换器的控制、USB传输控制端口和上位机命令解析模块,从而形成一整个诱发电位仪核心处理控制模块,可以方便地使用各个模块来完成器件的初始化、工作模式配置和系统的数据传输。图4为信号传输控制流程图。
2.5 数字信号处理模块
图4 信号传输控制流程图
数字信号处理模块集成到FPGA中,可以将算法拆分,形成大规模的数字信号处理并行结构,将极大地提高处理速度,且性能不会下降,如模式识别算法、盲源分离算法等,均比较适合集成到FPGA中实现。在前置模拟电路放大之前,脑电信号为微弱混杂的信号,需要做一些滤波处理,而此处可以将前段部分的带通滤波电路转化为数字滤波器,设置到FPGA芯片中去,可简化电路结构,使系统整体体积大大减小。本设计在FPGA芯片中搭建了四阶无限脉冲数字滤波器,其系统传递函数H(z)如下:
H(z)=b0+b1z-1+…+b4z-41+a1z-1+…+a4z-4
=∑4k=0bkz-k1+∑4k=1akz-k
将诱发电位信号放大模/数转换之后的数据实时经过滤波,实现信号的前置处理[14],经测试效果良好。利用FPGA的并行性,在每个通道设置一个数字滤波器,大大增强了系统实时性,而且可探索自适应、小波数字滤波器等设计,在硬件层次提高系统的处理能力。
3 高精度多通道模/数转换器ADS1258
在诱发电位仪采集系统中,模/数转换模块芯片的选取对整个采集系统的结构和性能影响非常大,本文模/数转换芯片选用ADS1258器件,使得本系统达到多通道高分辨率的要求。
3.1 ADS1258的主要特点
ADS1258是16通道24位分辨率的低噪声模/数转换芯片,全量程5 V的单端输入范围或者±2.5 V的真双极输入,每个通道采样速率最高23.7 KSPS(16通道同时采样),单个通道采样最高可达400 KSPS,通过SPI兼容接口进行工作模式配置和串行数字通信,使用方便。选用此芯片,电压分辨率即可达到1 μV,因此信号放大和调理预处理电路的放大倍数只要100倍就可满足诱发电位仪的技术要求,大大简化了前级电路。
3.2 ADS1258与FPGA接口电路
ADS1258通过一个SPI兼容串行接口将数据写入配置寄存器,使用命令控制转换器以此来控制A/D芯片的工作模式,并最终读取通道数据。接口包含CS,SCLK,DIN和DOUT四个信号。对ADS1258的所有操作都得先向其写入命令,然后由AD根据写入的命令做相应的操作。经过FPGA的A/D配置模块启动之后,ADS1258将处于固定通道扫描模式下或者自动通道扫描模式下, ADS1258将可转换16路共模输入信号或8路差分输入信号。模拟信号由AIN口输入,输入范围0~+5 V。控制端口接驳到FPGA,由FPGA控制模块控制A/D采样,由CS进行选通,START启动ADC开始工作,通过DIN输入命令之后由DOUT输出转换结果,共使用8个端口与FPGA芯片的端口相连接[15]。具体接口电路的实现如图5所示。
图5 ADS1258与FPGA芯片的接口电路
4 结 语
利用FPGA芯片丰富的资源,将诱发电位仪的刺激信号源、模/数转换控制逻辑和USB接口控制与数据传输以及数字信号处理等模块设计在单个芯片上,可最大限度地简化诱发电位仪的硬件电路复杂度,利用其可编程性极大地方便了硬件设计,结合ADS1258的高分辨率的优势,可以使系统既具有优异的性能又具有很高的集成度,而且本设计尚余很多FPGA的I/O口,如需更多通道则仅需要加入多块A/D芯片,具有较高的应用价值。
参考文献
[1]赵仕波,罗耀华,赵文华.听觉诱发电位仪的设计与实现方案[J].仪器仪表学报,2008,29(3):394-398.
[2]HU Yong, LUK K D K, CUI Hong-yan, et al. Surface somatosensory evoked potential detection by FPGA based multi-adaptive filter[C]//4th International IEEE/EMBS Conference on Neural Engineering. USA: IEEE/EMBS, 2009: 673-676.
[3]李长旺.基于单片机的ECG数据采集与预处理[D].合肥:安徽大学,2007.
[4]张建利,李文丰.基于TMS320LF2407A的脑电信号采集系统的设计[J].世界电子元器件,2004(11):37-39.
[5]钟文华.基于ARM的脑电信号采集系统[J].国外电子元器件,2008(2):13-15.
[6]侯俊钦.基于FPGA的脑电信号采集系统的设计[D].合肥:安徽大学,2007.
[7]SHYU Kuo-kai, LEE Ming-huan, WU Yu-te, et al. Implementation of pipelined fast ICA on FPGA for real-time blind source separation[J]. IEEE Transactions on Neural Networks, 2008, 19(6): 958-970.
[8]Texas Instruments. ADS1258 data sheet[M]. USA: Texas Instruments, 2008.
[9]Cypres Semiconductor Co.. EZ-USB FX2 technical reference manual. [M]. Version 2.0. [S.l.]: Cypress Semiconductor Corporation, 2001.
[10]王诚,吴继华,范丽珍,等.Altem FPGA/CPLD设计(基础篇)[M].北京:人民邮电出版社,2005.
[11]梁清华,张群峰,赵锦.一种新型肌电诱发电位仪的研制[J].辽宁工学院学报,2005(1):134-136.
[12]于芳.人体视觉诱发电位检测系统的开发与研制[D].上海:上海海事大学,2008.
[13]李源.听觉脑干诱发电位仪[D].北京:北京交通大学,2008.