第10章 单片机应用系统设计 习题解答

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第10章单片机应用系统设计习题解答

1.单片机应用系统设计由哪几个步骤组成?每一个步骤的主要任务是什么?

答:单片机应用系统设计过程一般包括需求分析、可行性分析、系统体系结构设计、软/硬件设计、综合调试等几个步骤。

需求分析主要为了解现有同类产品的性能特点及市场需求状况,掌握用户对产品的希望和要求。通过对需求信息的分析,判断市场和用户是否需要该产品,从而决定是否要开发该产品。需求分析的主要内容包括:现有产品的结构、功能、性能特点及存在的问题;国内外同类产品的发展状况和发展趋势;新产品的结构、功能、性能及特点。经过需求调查,整理出需求报告,作为产品可行性分析的主要依据。

可行性分析是从原理、技术、需求、资金、材料、环境、研发/生产条件等方面分析论证产品开发研制的必要性及可行性,论证产品的经济效益、社会效益和生态效益。从而决定产品的开发研制工作是否需要继续进行下去。可行性分析通常从以下几个方面进行论证:市场或用户需求:说明市场/用户是否需要该产品;科学原理与技术:证明产品的工作原理是正确可行的,用现有的技术是可以实现的;资金、材料及研发/生产条件:说明是否具有研发/生产资金及来源,是否需要特殊材料及解决途径,是否具有研发/生产人员、设备、场地等条件;经济效益、社会效益和生态效益:论证产品有多大的经济效益、有何社会效益、是否污染环境;现在的竞争力与未来的生命力:说明产品的优势和发展潜力。

系统体系结构可以用逻辑框图明确表述。体系结构设计时主要包括如下部分:硬件和软件功能划分;技术路线;核心器件选择

硬件设计的任务主要包括硬件功能模块划分、电路原理图设计、系统仿真、印刷电路板(PCB板)绘制、元器件的焊接与测试。

软件设计的任务主要包括编程语言的选择、软件任务划分、算法设计、程序编写与调试等。

综合调试主要包括系统软硬件脱机综合运行、样机工作现场测试以及产品定型,资料整理等工作。

2.用Proteus仿真实现本章内容给出的“全自动洗衣机控制器”。进一步扩展功能。

答:“全自动洗衣机控制器”的硬件、软件内容在第10章中都有详细介绍,请读者根据第10章内容,在Proteus下仿真实现。此处不再赘述。

扩展部分。可以在系统中添加时间倒计时显示功能,主要思路为设置时间全局变量,用

来显示当前倒计时时间。通过定时中断,对倒计时全局变量进行操作并进行显示。主要参考代码如下:

Int min,sec; //定义时间全局变量

………

//在定时中断中,修改代码如下:

//****************************************

void vTimer0() interrupt 1

{

TH0=TIME0H;

TL0=TIME0L;

time_count ++;

if (time_count==300)

{

time_count = 0;

//定时中断代码中,添加如下时间显示代码:

if(sec==0&min!=0) //判断是否符合时间修改条件按

{

sec=59; //修改秒全局变量

min--; //修改分全局变量

}

//定时时间到,提示信息

if(sec==0&min==0) //判断秒和分倒计时是否为零

{

speaker_on(); //蜂鸣器叫

delay(300); //报时300秒

speaker_off(); //蜂鸣器停

}

…………………

//在显示代码中,添加如下代码,用来在LCD上显示分和秒

/**********LCD显示函数**********/

void display()

{

int level_1, level_2, level_3, voltage_1, voltage_2, voltage_3, minshi, minge, secshi, secge;

clearLCD();

//process: 1浸泡,2脱水,3洗涤,4进水,5漂洗,

//method:1方式一,2方式二,3方式三,4方式四

//speed:1速度1/4,2速度2/4,3速度3/4,4速度4/4

level_1 = ad_level / 100 + 48;

level_2 = (ad_level %100 ) /10 + 48;

level_3 = (ad_level %10 ) + 48;

voltage_1 = ad_voltage / 100 + 48;

voltage_2 = (ad_voltage %100 ) /10 + 48;

voltage_3 = (ad_voltage %10 ) + 48;

minshi=min / 10 + 48; //获得分钟的十位

minge=min%10+48; //获得分钟的各位

secshi=sec / 10 + 48; //获得秒钟的十位

secge=sec%10+48; //获得秒钟的个位

…………….

则在LCD显示中,利用write_data(display_string)这个函数即可实现在对应位置显示对应字符的功能。

3.按照单片机应用系统设计方法设计一个单片机应用实例。

答:请读者参考第10章内容,自己设计。

相关文档
最新文档