《片机原理课件》由会员分享,可在线阅读,更多相关《片机原理课件(31页珍藏版)》请在金锄头文库上搜索。
1、第七讲:单片机应用系统设计本讲重点:本讲重点: 正确认识系统设计的基本原则正确认识系统设计的基本原则, ,掌握简单任掌握简单任 务分析的一般流程,尝试自己制定方案;务分析的一般流程,尝试自己制定方案; 对所举应用实例能消化理解,对部分模块能对所举应用实例能消化理解,对部分模块能 独立编程实现独立编程实现. .片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件第七章第七章 单片机应用系统设计与开发单片机应用系统设计与开发系统设计应当考虑的主要技术性能系统设计应当考虑的主要技术性能速度速度 精度精度 功耗功耗 可靠性可靠性 驱动能力驱动能力 基本设计原则应当考虑:基本
2、设计原则应当考虑: 功能需求,应用需求,开发条件,市场功能需求,应用需求,开发条件,市场 情况,可靠性需求,成本需求,尽量以情况,可靠性需求,成本需求,尽量以 软代硬软代硬片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件 基本设计原则基本设计原则从系统从系统功能需求功能需求出发设计功能模块出发设计功能模块 显示,键盘,数据采集,检测,通信,控制,显示,键盘,数据采集,检测,通信,控制, 驱动,供电方式驱动,供电方式从系统从系统应用需求应用需求定位元器件资源分配定位元器件资源分配 定时定时/ /计数器,中断,串口,计数器,中断,串口,I/OI/O引脚,引脚,A/D
3、A/D, D/AD/A,信号调理,晶振频率,信号调理,晶振频率从从开发条件与市场情况开发条件与市场情况出发选择元器件出发选择元器件 仿真机,编程器,元器件,熟悉程度,编程仿真机,编程器,元器件,熟悉程度,编程 语言语言从系统从系统可靠性需求可靠性需求确定系统设计工艺确定系统设计工艺 去耦,光隔,屏蔽,印制板,低功耗,散热,去耦,光隔,屏蔽,印制板,低功耗,散热, 传输距离传输距离/ /速度,节电方式,掉电保护,软件速度,节电方式,掉电保护,软件 措施措施片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件 基本设计原则(续)基本设计原则(续)从系统从系统成本需求成本
4、需求选择合理电路方案选择合理电路方案 元器件,外壳,面板,键盘,显示,单元器件,外壳,面板,键盘,显示,单/ /双面双面 PCBPCB,驱动,驱动功能满足系统要求的前提下功能满足系统要求的前提下尽量以软代硬尽量以软代硬 逻辑功能,滤波功能,译码功能,动态显示,逻辑功能,滤波功能,译码功能,动态显示, 模拟模拟I I2 2C C、SPISPI总线,软总线,软ADCADC,加密,加密片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件 220V220VJ JP1.0 P1.0 P1.1 P1.1 P1,2 P1,2 P1.3 P1.3 P1.4 P1.4 P1.5 P1
5、.5 P1.6 P1.6 P1.7P1.7语音语音芯片芯片语音输出语音输出话音输入话音输入振铃振铃检测检测DTMF DTMF 译码译码 8870 8870 模拟模拟摘机摘机电话机电话机P0.0 P0.0 P0.3P0.3 P2,0 P2,0 P2.1 P2.1 P2.2 P2.2 P2.3 P2.3 P2.4P2.4远距离电话遥控装置远距离电话遥控装置(与书上与书上P.235P.235类似的一种应用)类似的一种应用)89C5189C51晶振晶振复位复位电路电路电电 话话 外外 线线单片机应用系统设计与开发实例单片机应用系统设计与开发实例1 1:片机原理课件单片机原理与应用技术片机原理课件单片机
6、原理与应用技术教学课件教学课件1.1.座机在无人值守情况下首先要通过光耦检测铃流,确定座机在无人值守情况下首先要通过光耦检测铃流,确定有电话打进。有电话打进。2.2.振铃响过设定次数后,由三极管组成的模拟摘机电路执振铃响过设定次数后,由三极管组成的模拟摘机电路执行摘话筒动作,给座机及相应电路供电。行摘话筒动作,给座机及相应电路供电。3.3.通过通过APR9600APR9600语音电路发出语音电路发出“请输入密码请输入密码”提示后,根提示后,根据拨叫方输入的密码经据拨叫方输入的密码经MT8870MT8870译码后进行身份判识。身份译码后进行身份判识。身份不符则执行挂机操作。不符则执行挂机操作。4
7、.4.相符则继续提示对方输入控制设备号(此处为相符则继续提示对方输入控制设备号(此处为0 07 7,可,可外连外连8 8个电器开关)和开个电器开关)和开/ /关动作类别(开关动作类别(开1 1,关,关0 0),),依此对相应执行电路输出控制信号。然后再提示对方输入依此对相应执行电路输出控制信号。然后再提示对方输入下个要控制的设备号和开下个要控制的设备号和开/ /关动作类别关动作类别5.5.直至对方发出操作结束信号(),就执行挂机操作。直至对方发出操作结束信号(),就执行挂机操作。任务分析:任务分析:片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件1.1.振铃检测
8、电路振铃检测电路是以光耦是以光耦817817为主构成的。当有振铃信号时,为主构成的。当有振铃信号时,铃流进入铃流进入817817输入端输入端1 1、2 2脚,脚,4 4脚输出脉冲方波信号,送至脚输出脉冲方波信号,送至AT89C51AT89C51的的/INT1/INT1端,由于语音信号和双音多频信号电压远低端,由于语音信号和双音多频信号电压远低于振铃信号电压,该电路不会引起误判。于振铃信号电压,该电路不会引起误判。 2.2.模拟摘机电路模拟摘机电路是由两个高压三极管组成,是由两个高压三极管组成,AT89C51AT89C51输出高输出高低电平,使三极管导通或截止,从而改变挂接在电话线上的低电平,使
9、三极管导通或截止,从而改变挂接在电话线上的阻抗来模拟摘机和挂机。阻抗来模拟摘机和挂机。 3.3.双音多频解码电路双音多频解码电路由电桥由电桥B1B1、电容、电容C1C1、电阻、电阻R1R1及双音多频及双音多频识别集成电路识别集成电路MT8870MT8870等组成。电桥起极性校正作用,信号经等组成。电桥起极性校正作用,信号经RCRC送至送至MT8870MT8870解码,最后输出相应的解码,最后输出相应的84218421码,供单片机判识。码,供单片机判识。4.4.语音芯片语音芯片SP+,SP-SP+,SP-端受控将预先录好的语音提示送至端受控将预先录好的语音提示送至LM386LM386进行放大,再
10、经变压器进行放大,再经变压器T1T1耦合至电话回路,用户可从电话里耦合至电话回路,用户可从电话里听到系统控制语音芯片发出的提示,进行相应操作。听到系统控制语音芯片发出的提示,进行相应操作。 功能电路模块:功能电路模块:片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件双音多频双音多频 DTMFDTMF Double Tone Multi Double Tone Multi FrequencyFrequency:每一个拨号音是由两每一个拨号音是由两 个正弦波单音混合而成。个正弦波单音混合而成。 4 4个高音和个高音和4 4个低音个低音, ,有有1616种组合。种组合
11、。在电信信令中:在电信信令中: “*”“*”“#”#”仅作为开放电仅作为开放电 信新型业务中作特殊识别信新型业务中作特殊识别 码。而码。而“A”“B”“C” A”“B”“C” “D”“D”作为备用码。作为备用码。 片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件双音多频解码芯片双音多频解码芯片MT8870DMT8870D特性:特性:完全的完全的DTMFDTMF接收接收/ /解码器解码器低功耗低功耗内建增益设置放大器内建增益设置放大器可调警卫时间可调警卫时间提供掉电模式和禁止模式提供掉电模式和禁止模式与与MT8870C/MT8870C-1MT8870C/MT887
12、0C-1兼容兼容 MT8870DMT8870D片内集成了裂带滤波器和数字解码功能片内集成了裂带滤波器和数字解码功能, ,滤波滤波器针对高音频和低音频采用了开关电容式滤波技术;译码器针对高音频和低音频采用了开关电容式滤波技术;译码器通过数字计数器对全部器通过数字计数器对全部1616个个DTMFDTMF音频组合进行探测和译音频组合进行探测和译码。片上的差分输入放大器、时钟振荡电路和带锁存地三码。片上的差分输入放大器、时钟振荡电路和带锁存地三态接口仅需要极少的外接元件。态接口仅需要极少的外接元件。片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件语音芯片语音芯片APR9
13、600APR9600 APR9600 APR9600语音录放芯片,是继美国语音录放芯片,是继美国ISDISD公司以后公司以后采用模拟存储技术的又一款音质好、噪音低、不采用模拟存储技术的又一款音质好、噪音低、不怕断电、可反复录放的新型语音电路,单片电路怕断电、可反复录放的新型语音电路,单片电路可录放可录放32-6032-60秒,串行控制时可分秒,串行控制时可分256256段以上,并段以上,并行控制时最大可分行控制时最大可分8 8段。与段。与ISDISD同类芯片相比它具同类芯片相比它具有:价格便宜,有多种手动控制方式,分段管理有:价格便宜,有多种手动控制方式,分段管理方便、多段控制时电路简单、采样
14、速度及录放音方便、多段控制时电路简单、采样速度及录放音时间可调、每个单键均有开始停止循环多种功能时间可调、每个单键均有开始停止循环多种功能等特点。等特点。片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件APR9600APR9600的全功能应用电路图的全功能应用电路图片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件单片机应用系统设计与开发实例单片机应用系统设计与开发实例2 2:电话锁电话锁+IP+IP电话号码自动拨号器任务分析:电话号码自动拨号器任务分析:1 1、能限拨用户自己设定的电话号码能限拨用户自己设定的电话号码 能设定和清除
15、限拨号码(可存能设定和清除限拨号码(可存4040个号码)个号码) 可开锁和上锁(启动限拨)可开锁和上锁(启动限拨) 能设置和修改密码能设置和修改密码 忘记密码时可恢复默认密码忘记密码时可恢复默认密码2 2、能快速拨出事先存入的能快速拨出事先存入的IPIP卡号卡号3 3、无须另外为其供电,有无须另外为其供电,有“窃电窃电”功能功能片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件IPIP电话自动拨号电话自动拨号& &电话号码限拨器电路设计电话号码限拨器电路设计片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件RST VCCRST VCC
16、(RxD)P3.0 P1.7(RxD)P3.0 P1.7(TxD)P3.1 P1.6(TxD)P3.1 P1.6XTAL2 P1.5XTAL2 P1.5(T0)P3.4 P1.1(Ain1)(T0)P3.4 P1.1(Ain1)GND P3.7GND P3.7XTAL1 P1.4XTAL1 P1.4(INT0)P3.2 P1.3(INT0)P3.2 P1.3(INT1)P3.3 P1.2(INT1)P3.3 P1.2(T1)P3.5 P1.0(Ain0)(T1)P3.5 P1.0(Ain0)2020脚脚DIPDIP封装封装主控单片机主控单片机AT89C2051AT89C2051:2020引脚引
17、脚, ,片内片内2KB FlashROM2KB FlashROM片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件MT8880MT8880+Vcc+VccMitelMitel公司的公司的DTMFDTMF编码编码/ /解码芯片:解码芯片:MT8880MT8880 固定接线的引脚有固定接线的引脚有:IN+,IN-,GS,Vref, Vss,VDD,:IN+,IN-,GS,Vref, Vss,VDD, St/GT,Est St/GT,Est; RS0:RS0:寄存器选择控制端;寄存器选择控制端; 2: =12: =1表示表示( (由音频转变成由音频转变成) )数据准备好
18、数据准备好 IRQ/CP:IRQ/CP:数据准备好时可向外部发出中断申请信号数据准备好时可向外部发出中断申请信号TONE:DTMFTONE:DTMF音频输出端音频输出端IN-:DTMFIN-:DTMF音频输入端音频输入端OSC1,OSC2:OSC1,OSC2:接晶振端接晶振端R/W:R/W:读读/ /写控制端写控制端数数据据总总线线片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件24CXX24CXX系列系列E E2 2PROMPROM2-2-线结构的串行线结构的串行CMOS ECMOS E2 2PROMPROM片机原理课件单片机原理与应用技术片机原理课件单片机原
19、理与应用技术教学课件教学课件A0 VCCA0 VCCA1 WPA1 WPA2 SCLA2 SCLGND SDAGND SDA24C0224C0224C0224C02: : 串行串行I I2 2C C总线(总线(SDASDA,SCLSCL) 256256字节字节E E2 2PROMPROM A2 A2、A1A1、A0A0可寻址可寻址8 8片并联工作片并联工作 具有写保护功能(具有写保护功能(WPWP高有效)高有效)SDASDASCLSCLSTART BITSTART BITSTOP BITSTOP BIT片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件void S
20、TART() void START() /* /* 由由SDA,SCLSDA,SCL发起始信号发起始信号 * */ /SCL=1; SDA=1; DELAY(1); SCL=1; SDA=1; DELAY(1); /* /* 在在SCLSCL为为“1 1” 的情况下的情况下 * */ / SDA=0; DELAY(1); SDA=0; DELAY(1); /* /* 令令SDASDA产生产生负跳变负跳变 * */ / SCL=0; SCL=0; void STOP() void STOP() /* /* 由由SDA,SCLSDA,SCL发结束信号发结束信号 * */ /SCL=1; SDA=0
21、; DELAY(1); SCL=1; SDA=0; DELAY(1); /* /* 在在SCLSCL为为“1 1” 的情况下的情况下 * */ / SDA=1; DELAY(50); SDA=1; DELAY(50); /* /* 令令SDASDA产生产生正跳变正跳变 * */ / SCL=0 ; SCL=0 ; 片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件约约 100100 S S 的整数倍的的整数倍的延时子程序延时子程序void DELAY(unsigned int value) void DELAY(unsigned int value) value=
22、value*2; value=value*2; while (value!=0) value-; while (value!=0) value-; 片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件void WByte(char cw) void WByte(char cw) /* /* 写一个字节进写一个字节进 24C02 */24C02 */ char i; char i; /* /* 变量变量cwcw放着待写进放着待写进24C0224C02的数据的数据 * */ / for(i=0; i8; i+) for(i=0; i8; i+) if( cw&0x80)
23、!=0) SDA=1; if( cw&0x80)!=0) SDA=1;/*/*写一个写一个“bitbit”进进24C02*/24C02*/ else SDA=0; else SDA=0; cw=cw1; DELAY(1); cw=cw1; DELAY(1); /* /* 将将cwcw左移一次左移一次 * */ / SCL=1; DELAY(1); SCL=1; DELAY(1); /* SCL/* SCL端送出一个时钟下跳沿端送出一个时钟下跳沿 * */ / SCL=0; SCL=0; DELAY(1); DELAY(1); /* SDA/* SDA端送出一个字节后延时端送出一个字节后延时10
24、uS10uS */ */ SCL=1; DELAY(1); SCL=1; DELAY(1); /* /* 再发送再发送一个时钟下跳沿一个时钟下跳沿 * */ / SCL=0; DELAY(1); SCL=0; DELAY(1); 片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件char RByte() char RByte() /* /* 从从24C0224C02读一个字节进读一个字节进MCU */MCU */ char r, i; char r, i; /* /* 变量变量 r r 存放读进的字节存放读进的字节 * */ / for(i=0; i8; i+)
25、for(i=0; i8; i+) /* /* 读读 8 8个位个位进单片机进单片机 * */ / r = r 1; r = r 1; /* /* 变量变量 r r 左移一次左移一次 * */ / if(SDA=1) r= r|0x01; if(SDA=1) r= r|0x01; /*/*若若SDASDA端端=1=1则则 r r最低位最低位=1*/=1*/ else r = r & 0xfe; else r = r & 0xfe; /* /* 若若SDASDA端端=0=0则则 r r最低位最低位=0 */=0 */ SCL=1; DELAY(1); SCL=1; DELAY(1); /* /*
26、读进一个位后读进一个位后SCLSCL发下跳沿发下跳沿 * */ / SCL=0; DELAY(1); SCL=0; DELAY(1); return r; return r; /* /* 返回返回 r r 的值的值 * */ / 片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件/* /* 写写6 6个字节进个字节进24C0224C02的的addressaddress到到address+5address+5单元中单元中 * */ /void WT2402(char address) void WT2402(char address) char i; char i;
27、 for(i=0; i6; i+) for(i=0; i6; i+) START(); START(); /* /* 发送发送起始信号起始信号 * */ / WByte(0xA0); WByte(0xA0); /* /* 写入写入写地址的标志写地址的标志0xA00xA0 */ */ WByte(address+i); WByte(address+i); /* /* 写地址写地址 * */ / WByte(WDatai); WByte(WDatai); /* /* 将数据写入上述地址中将数据写入上述地址中 * */ / STOP(); STOP(); /* /* 发送发送结束信号结束信号 * *
28、/ / 片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件void RD2402(char void RD2402(char addraddr) ) /*/*从从24C0224C02的的addraddr地址读地址读6 6个字节个字节* */ / char i; char i; for(i=0; i6; i+) for(i=0; i6; i+) START(); START(); /* /* 发送发送起始信号起始信号 * */ / WByte( WByte(0xA00xA0); ); /* /* 写入写入写地址的标志写地址的标志0xA00xA0 */ */ WByt
29、e( WByte(addraddr+i); +i); /* /* 写写地址地址 * */ / START(); START(); /* /* 发送发送起始信号起始信号 * */ / WByte( WByte(0xA10xA1); ); /* /* 写入写入读数据的标志读数据的标志0xA10xA1 */ */ RDatai=RByte(); RDatai=RByte(); /* /* 读出一个字节数据读出一个字节数据 * */ / STOP(); STOP(); /* /* 发送发送结束信号结束信号 * */ / 片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件单
30、片机控制步进电机单片机控制步进电机单片机的单片机的P1P1口直接按时序(相位)输出控制口直接按时序(相位)输出控制信号到功率电路,再驱动步进电机。信号到功率电路,再驱动步进电机。单片机应用系统设计与开发实例单片机应用系统设计与开发实例3 3:片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件步进电机工作原理步进电机工作原理三相单三相单3 3拍:拍:A A B B C C A A B B C C三相双三相双3 3拍:拍:ABAB BCBC CACA ABAB BCBC三相单、双三相单、双6 6拍:拍:A AABABB BBCBCC CCACAA A四相单四相单4 4
31、拍:拍:A A B B C C D D A A B B四相双四相双4 4拍拍:ABAB BCBC CDCD DADA ABAB各相绕组顺序轮流通电,令转子与定子带槽的各相绕组顺序轮流通电,令转子与定子带槽的小磁机极依次对齐,从而受控旋转。小磁机极依次对齐,从而受控旋转。片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件A AA AB BB BC CC C定子定子定子定子转子转子A AC CB B步进电机结构:步进电机结构:A AB BC C三点三点共地共地定子磁极端面开槽定子磁极端面开槽转子园柱面也开槽转子园柱面也开槽转子转子片机原理课件单片机原理与应用技术片机原
32、理课件单片机原理与应用技术教学课件教学课件四相双四相双4 4拍:拍:ABAB BC BC CD CD DA DA AB AB BC BC CD CD DA DA (P1.0) AC (P1.2)(P1.1)(P1.3)P1.3 P1.2 P1.1 P1.0 BD03 06 0C 09 03 03 06 0C 09 03 0606步进电机工作原理步进电机工作原理片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件步进电机工作原理步进电机工作原理四相双四相双4 4拍:拍:AB AB BC BC CD CD DA DA AB AB P1.3 P1.2 P1.1 P1.00
33、3H03H06H06H0CH0CH09H09H硬件实验硬件实验1616(P1.0) AC (P1.2)(P1.1)(P1.3)BD片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件主程序流程图:主程序流程图:片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件SUNSZ: MOV P1,#03H FANSZ: MOV P1,#03H LCALL DELAY LCALL DELAY MOV P1,#06H MOV P1,#06H LCALL DELAY LCALL DELAY MOV P1,#0CH MOV P1,#0CH LCALL D
34、ELAY LCALL DELAY MOV P1,#09H MOV P1,#09H LCALL DELAY LCALL DELAY SJMP SUNSZ SJMP FANSZ顺时针顺时针转动模块:依次对转动模块:依次对P1P1口送口送03H03H,06H06H,0CH,09H0CH,09H反时针反时针转动模块:依次对转动模块:依次对P1P1口送口送09H09H,0CH0CH,06H,03H06H,03H转动的快慢决定于延时模块转动的快慢决定于延时模块DELAYDELAY延时长短。延时长短。片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件& & & 1 1 1 1P
35、1.0P1.0P1.1P1.1P1.2P1.2P1.3P1.3P1.4P1.4P1.5P1.5PR2:PR2: MOV C,P1.1MOV C,P1.1ORL C,P1.2 ORL C,P1.2 ; ;得到得到A AANL C,P1.0ANL C,P1.0CPL C CPL C ; ;得到得到B BMOV F0,C MOV F0,C ; ;暂存暂存B BMOV C,P1.3MOV C,P1.3ANL C,/P1.4 ANL C,/P1.4 ; ;得到得到D DORL C,F0 ORL C,F0 ; ;得到结果得到结果MOV P1.5,C MOV P1.5,C ; ;输出输出RETRETA AC CB BD D书上例题:书上例题:以软件实现电梯中的某逻辑电路功能以软件实现电梯中的某逻辑电路功能单片机应用系统设计与开发实例单片机应用系统设计与开发实例4 4:片机原理课件单片机原理与应用技术片机原理课件单片机原理与应用技术教学课件教学课件