浅议单片机硬件设计和软件设计的相互关系.doc
上传人:sy****28 上传时间:2024-09-13 格式:DOC 页数:10 大小:38KB 金币:16 举报 版权申诉
预览加载中,请您耐心等待几秒...

浅议单片机硬件设计和软件设计的相互关系.doc

浅议单片机硬件设计和软件设计的相互关系.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

16 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

单片机以其体积小、功能强、速度快、易控制、抗干扰、成本低等优点,被广泛地应用于众多尖端领域.开发单片机产品,必须熟悉模拟电路和数字电路,还必须掌握单片机原理、硬件结构、扩展接口和编程语言.而单片机产品开发不单是软件系统的设计,其开发语言和硬件设计密切相关.1硬件设计硬件设计是单片机产品开发的基础,如果在这个环节出现错误或缺陷,对整个开发工作将产生不良影响.从技术角度出发,可分为六个方面:1.1硬件原理设计硬件原理设计的任务是设计并绘制硬件原理图.(1)最小应用系统设计:微处理器和存储器的选择、总线驱动、复位电路的设计等.(2)I/O通道设计:接口电路,模拟量I/O通道中A/D、D/A转换芯片的选择等.(3)人机界面设计:键盘、显示(液晶或数码管)及接口设计等.(4)系统扩展设计:外部RAM和ROM、定时/计数、中断管理、串行口扩展等.(5)接插件定义:由接插件类型、管脚定义等确定线路板之间的数据通信形式.1.2资源分配资源分配是对RAM、定时器/计数器、中断源、异步串行口、并行I/O口等内部资源及扩展资源分析其用途、工作方式、起止时间和限定条件、分配端口地址.适时地进行资源分配,一方面减少资源浪费,另一方面若发现资源不足,能及时修正原理设计中的潜在问题.1.3线路板图绘制在用CAD绘制线路板时必须注意:(1)器件布局:让干扰源与敏感元件远离,键盘、显示器按用户要求的位置摆放,其它器件最好环绕CPU.(2)布线方法:a、加粗电流线路;b、让地线构成闭环;c、三总线分开;d、走线应避免出现直角或锐角;e、晶振与引脚尽量靠近,用地线把时钟区隔离起来,晶振外壳接地并固定(3)可靠性措施、减少多余的过孔,减少接插件与连线,尽量加大线和线、线和盘、孔和盘的距离;、防止毛刺及阻焊材料不良造成的隐患;、集成块最好焊在印制板上;、对闲置的I/O口不要悬空.1.4可靠性设计提高系统的可靠性,可从硬件和软件两方面统筹考虑.解决方法如下:(1)选择抗干扰能力强的供电系统;(2)设计电路板时合理布线;(3)让模拟地和数字地分开走线,一点接地,尽量加粗接地线;单片机和大功率器件要单独接地,驱动大电流信号时采用光电隔离;(4)数据采集时进行数字滤波处理.注意分板电路的稳定性不如整板电路,要多加入抗干扰环节.1.5保密性设计提高保密水平一方面可以增加仿制的难度,另一方面可以增加仿制者的成本.采用下面的两种方法:(1)程序加密:选用程序存储器带加密位的单片机,将程序固化在内部.(2)可编程逻辑阵列加密:选用PAL、GAL器件设置加密.1.6线路板的焊接与测试(1)线路板测试:先检查线路板有无断线、毛刺、偏心等问题,后根据打印出的网络表检查每个网络是否导通.(2)元器件焊接:采用焊IC座的方法,注意避免漏焊、错焊和虚焊.(3)局部线路测试:编写测试程序,检查局部硬件线路能否正常工作.1.7两点建议(1)开发者最好使用最新的单片机.新型的MCU优点:时钟频率高,指令执行快,内部程序存储器和数据存储器容量大,A/D和D/A转换器、LCD显示功能模块内部集成,外部扩展功能强.(2)扩展接口的开发尽可能采用PSD、FPGA等器件.这类器件都有开发平台的支持,开发出的硬件性能可靠、结构紧凑、利于修改、保密性好.软件设计软件设计先要进行任务划分,建立数学模型,确定算法及数据结构,进行资源分配及结构设计,绘制流程图,编制各子程序模块,仿真调试等,然后还要考虑单片机产品开发浅议单片机硬件设计和软件设计的相互关系王永刚(辽宁对外经贸学院信息技术系,辽宁大连116052)摘要:在单片机产品的开发过程中,通过分析硬件设计与软件设计的开发过程,论述了二者之间的相互关系.关键词:单片机;硬件;软件中图分类号:TP368.1文献标识码:A文章编号:1673-260X(2008)04B-0008-02Vol.24No.4Aug.2008第24卷第4期2008年8月赤峰学院学报(自然科学版)JournalofChifengUniversity(NaturalScienceEdition).:abcd28的特殊性.2.1准备工作前期准备工作不充分,会造成大量的重复劳动.(1)模块功能定义:根据要求确定整个程序的功能,并将这些功能分解成多个子功能,还要确定这些功能模块之间的关系和数据传递方式.(2)规划数据类