1、第七讲:单片机应用系统设计本讲重点:本讲重点:正确认识系统设计的基本原则正确认识系统设计的基本原则,掌握简单任掌握简单任 务分析的一般流程,尝试自己制定方案;务分析的一般流程,尝试自己制定方案;对所举应用实例能消化理解,对部分模块能对所举应用实例能消化理解,对部分模块能 独立编程实现独立编程实现.第七章第七章 单片机应用系统设计与开发单片机应用系统设计与开发系统设计应当考虑的主要技术性能系统设计应当考虑的主要技术性能速度速度 精度精度 功耗功耗 可靠性可靠性 驱动能力驱动能力 基本设计原则应当考虑:基本设计原则应当考虑:功能需求,应用需求,开发条件,市场功能需求,应用需求,开发条件,市场 情况
2、,可靠性需求,成本需求,尽量以情况,可靠性需求,成本需求,尽量以 软代硬软代硬 基本设计原则基本设计原则从系统从系统功能需求功能需求出发设计功能模块出发设计功能模块 显示,键盘,数据采集,检测,通信,控制,显示,键盘,数据采集,检测,通信,控制,驱动,供电方式驱动,供电方式从系统从系统应用需求应用需求定位元器件资源分配定位元器件资源分配 定时定时/计数器,中断,串口,计数器,中断,串口,I/OI/O引脚,引脚,A/DA/D,D/AD/A,信号调理,晶振频率,信号调理,晶振频率从从开发条件与市场情况开发条件与市场情况出发选择元器件出发选择元器件 仿真机,编程器,元器件,熟悉程度,编程仿真机,编程
3、器,元器件,熟悉程度,编程 语言语言从系统从系统可靠性需求可靠性需求确定系统设计工艺确定系统设计工艺 去耦,光隔,屏蔽,印制板,低功耗,散热,去耦,光隔,屏蔽,印制板,低功耗,散热,传输距离传输距离/速度,节电方式,掉电保护,软件速度,节电方式,掉电保护,软件 措施措施 基本设计原则(续)基本设计原则(续)从系统从系统成本需求成本需求选择合理电路方案选择合理电路方案 元器件,外壳,面板,键盘,显示,单元器件,外壳,面板,键盘,显示,单/双面双面 PCBPCB,驱动,驱动功能满足系统要求的前提下功能满足系统要求的前提下尽量以软代硬尽量以软代硬 逻辑功能,滤波功能,译码功能,动态显示,逻辑功能,滤
4、波功能,译码功能,动态显示,模拟模拟I I2 2C C、SPISPI总线,软总线,软ADCADC,加密,加密 220220V VJ JP1.0 P1.0 P1.1 P1.1 P1,2 P1,2 P1.3 P1.3 P1.4 P1.4 P1.5 P1.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远距离电话遥控装置远距离电话遥控装
5、置(与书上与书上P.235P.235类似的一种应用)类似的一种应用)8989C51C51晶振晶振复位复位电路电路电电 话话 外外 线线单片机应用系统设计与开发实例单片机应用系统设计与开发实例1 1:1.1.座机在无人值守情况下首先要通过光耦检测铃流,确定座机在无人值守情况下首先要通过光耦检测铃流,确定有电话打进。有电话打进。2.2.振铃响过设定次数后,由三极管组成的模拟摘机电路执振铃响过设定次数后,由三极管组成的模拟摘机电路执行摘话筒动作,给座机及相应电路供电。行摘话筒动作,给座机及相应电路供电。3.3.通过通过APR9600APR9600语音电路发出语音电路发出“请输入密码请输入密码”提示后
6、,根提示后,根据拨叫方输入的密码经据拨叫方输入的密码经MT8870MT8870译码后进行身份判识。身份译码后进行身份判识。身份不符则执行挂机操作。不符则执行挂机操作。4.4.相符则继续提示对方输入控制设备号(此处为相符则继续提示对方输入控制设备号(此处为0 07 7,可,可外连外连8 8个电器开关)和开个电器开关)和开/关动作类别(开关动作类别(开1 1,关,关0 0),),依此对相应执行电路输出控制信号。然后再提示对方输入依此对相应执行电路输出控制信号。然后再提示对方输入下个要控制的设备号和开下个要控制的设备号和开/关动作类别关动作类别5.5.直至对方发出操作结束信号(),就执行挂机操作。直
7、至对方发出操作结束信号(),就执行挂机操作。任务分析:任务分析:1.1.振铃检测电路振铃检测电路是以光耦是以光耦817817为主构成的。当有振铃信号时,为主构成的。当有振铃信号时,铃流进入铃流进入817817输入端输入端1 1、2 2脚,脚,4 4脚输出脉冲方波信号,送至脚输出脉冲方波信号,送至AT89C51AT89C51的的/INT1/INT1端,由于语音信号和双音多频信号电压远低端,由于语音信号和双音多频信号电压远低于振铃信号电压,该电路不会引起误判。于振铃信号电压,该电路不会引起误判。2.2.模拟摘机电路模拟摘机电路是由两个高压三极管组成,是由两个高压三极管组成,AT89C51AT89C
8、51输出高输出高低电平,使三极管导通或截止,从而改变挂接在电话线上的低电平,使三极管导通或截止,从而改变挂接在电话线上的阻抗来模拟摘机和挂机。阻抗来模拟摘机和挂机。3.3.双音多频解码电路双音多频解码电路由电桥由电桥B1B1、电容、电容C1C1、电阻、电阻R1R1及双音多频及双音多频识别集成电路识别集成电路MT8870MT8870等组成。电桥起极性校正作用,信号经等组成。电桥起极性校正作用,信号经RCRC送至送至MT8870MT8870解码,最后输出相应的解码,最后输出相应的84218421码,供单片机判识。码,供单片机判识。4.4.语音芯片语音芯片SP+,SP-SP+,SP-端受控将预先录好
9、的语音提示送至端受控将预先录好的语音提示送至LM386LM386进行放大,再经变压器进行放大,再经变压器T1T1耦合至电话回路,用户可从电话里耦合至电话回路,用户可从电话里听到系统控制语音芯片发出的提示,进行相应操作。听到系统控制语音芯片发出的提示,进行相应操作。功能电路模块:功能电路模块:双音多频双音多频 DTMFDTMF Double Tone Multi Double Tone Multi FrequencyFrequency:每一个拨号音是由两每一个拨号音是由两 个正弦波单音混合而成。个正弦波单音混合而成。4 4个高音和个高音和4 4个低音个低音,有有1616种组合。种组合。在电信信令
10、中:在电信信令中:“*”“#”“#”仅作为开放电仅作为开放电 信新型业务中作特殊识别信新型业务中作特殊识别 码。而码。而“A”“B”“C”A”“B”“C”“D”“D”作为备用码。作为备用码。双音多频解码芯片双音多频解码芯片MT8870DMT8870D特性:特性:完全的完全的DTMFDTMF接收接收/解码器解码器低功耗低功耗内建增益设置放大器内建增益设置放大器可调警卫时间可调警卫时间提供掉电模式和禁止模式提供掉电模式和禁止模式与与MT8870C/MT8870C-1MT8870C/MT8870C-1兼容兼容 MT8870DMT8870D片内集成了裂带滤波器和数字解码功能片内集成了裂带滤波器和数字解
11、码功能,滤波滤波器针对高音频和低音频采用了开关电容式滤波技术;译码器针对高音频和低音频采用了开关电容式滤波技术;译码器通过数字计数器对全部器通过数字计数器对全部1616个个DTMFDTMF音频组合进行探测和译音频组合进行探测和译码。片上的差分输入放大器、时钟振荡电路和带锁存地三码。片上的差分输入放大器、时钟振荡电路和带锁存地三态接口仅需要极少的外接元件。态接口仅需要极少的外接元件。语音芯片语音芯片APR9600APR9600 APR9600 APR9600语音录放芯片,是继美国语音录放芯片,是继美国ISDISD公司以后公司以后采用模拟存储技术的又一款音质好、噪音低、不采用模拟存储技术的又一款音
12、质好、噪音低、不怕断电、可反复录放的新型语音电路,单片电路怕断电、可反复录放的新型语音电路,单片电路可录放可录放32-6032-60秒,串行控制时可分秒,串行控制时可分256256段以上,并段以上,并行控制时最大可分行控制时最大可分8 8段。与段。与ISDISD同类芯片相比它具同类芯片相比它具有:价格便宜,有多种手动控制方式,分段管理有:价格便宜,有多种手动控制方式,分段管理方便、多段控制时电路简单、采样速度及录放音方便、多段控制时电路简单、采样速度及录放音时间可调、每个单键均有开始停止循环多种功能时间可调、每个单键均有开始停止循环多种功能等特点。等特点。APR9600APR9600的全功能应
13、用电路图的全功能应用电路图单片机应用系统设计与开发实例单片机应用系统设计与开发实例2 2:电话锁电话锁+IP+IP电话号码自动拨号器任务分析:电话号码自动拨号器任务分析:1 1、能限拨用户自己设定的电话号码能限拨用户自己设定的电话号码 能设定和清除限拨号码(可存能设定和清除限拨号码(可存4040个号码)个号码)可开锁和上锁(启动限拨)可开锁和上锁(启动限拨)能设置和修改密码能设置和修改密码 忘记密码时可恢复默认密码忘记密码时可恢复默认密码2 2、能快速拨出事先存入的能快速拨出事先存入的IPIP卡号卡号3 3、无须另外为其供电,有无须另外为其供电,有“窃电窃电”功能功能IPIP电话自动拨号电话自
14、动拨号&电话号码限拨器电路设计电话号码限拨器电路设计RST RST VCC VCC(RxD(RxD)P3.0 )P3.0 P1.7 P1.7(TxD(TxD)P3.1 )P3.1 P1.6 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脚脚DIP
15、DIP封装封装主控单片机主控单片机AT89C2051AT89C2051:2020引脚引脚,片内片内2 2KB FlashROMKB FlashROMMT8880MT8880+Vcc+VccMitelMitel公司的公司的DTMFDTMF编码编码/解码芯片:解码芯片:MT8880MT8880 固定接线的引脚有固定接线的引脚有:IN+,IN-,GS,Vref,VssIN+,IN-,GS,Vref,Vss,VDD,VDD,St/GT,Est St/GT,Est;RS0:RS0:寄存器选择控制端;寄存器选择控制端;2:=12:=1表示表示(由音频转变成由音频转变成)数据准备好数据准备好 IRQ/CP:
16、IRQ/CP:数据准备好时可向外部发出中断申请信号数据准备好时可向外部发出中断申请信号TONE:DTMFTONE:DTMF音频输出端音频输出端IN-:DTMFIN-:DTMF音频输入端音频输入端OSC1,OSC2:OSC1,OSC2:接晶振端接晶振端R/W:R/W:读读/写控制端写控制端数数据据总总线线24CXX24CXX系列系列E E2 2PROMPROM2-2-线结构的串行线结构的串行CMOS ECMOS E2 2PROMPROMA0 VCCA0 VCCA1 WPA1 WPA2 SCLA2 SCLGND SDAGND SDA24C0224C022424C02C02:串行串行I I2 2C
17、C总线(总线(SDASDA,SCLSCL)256256字节字节E E2 2PROMPROM A2 A2、A1A1、A0A0可寻址可寻址8 8片并联工作片并联工作 具有写保护功能(具有写保护功能(WPWP高有效)高有效)SDASDASCLSCLSTART BITSTART BITSTOP BITSTOP BITvoid START()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
18、;DELAY(1);/*令令SDASDA产生产生负跳变负跳变 */SCL=0;SCL=0;void STOP()void STOP()/*由由SDA,SCLSDA,SCL发结束信号发结束信号 */SCL=1;SDA=0;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 intvoid DEL
19、AY(unsigned int value)value)value=valuevalue=value*2;2;while(value!=0)value-;while(value!=0)value-;void WByte(char cwvoid WByte(char cw)/*写一个字节进写一个字节进 24C02 24C02*/char i;char i;/*变量变量cwcw放着待写进放着待写进24C0224C02的数据的数据 */for(i=0;i8;i+)for(i=0;i8;i+)if(cw if(cw&0 x80)!=0)SDA=1;&0 x80)!=0)SDA=1;/*写一个写一个“b
20、it”bit”进进2424C02C02*/else SDA=0;else SDA=0;cw=cw cw=cw1;DELAY(1);1;DELAY(1);/*将将cwcw左移一次左移一次 */SCL=1;DELAY(1);SCL=1;DELAY(1);/*SCL SCL端送出一个时钟下跳沿端送出一个时钟下跳沿 */SCL=0;SCL=0;DELAY(1);DELAY(1);/*SDA SDA端送出一个字节后延时端送出一个字节后延时1010uSuS */SCL=1;DELAY(1);SCL=1;DELAY(1);/*再发送再发送一个时钟下跳沿一个时钟下跳沿 */SCL=0;DELAY(1);SCL
21、=0;DELAY(1);char RBytechar RByte()()/*从从24C0224C02读一个字节进读一个字节进MCU MCU*/char r,i;char r,i;/*变量变量 r r 存放读进的字节存放读进的字节 */for(i=0;i8;i+)for(i=0;i8;i+)/*读读 8 8个位个位进单片机进单片机 */r=r 1;r=r 1;/*变量变量 r r 左移一次左移一次 */if(SDA=1)r=r|0 x01;if(SDA=1)r=r|0 x01;/*若若SDASDA端端=1=1则则 r r最低位最低位=1=1*/else r=r&0 xfe;else r=r&0
22、xfe;/*若若SDASDA端端=0=0则则 r r最低位最低位=0=0*/SCL=1;DELAY(1);SCL=1;DELAY(1);/*读进一个位后读进一个位后SCLSCL发下跳沿发下跳沿 */SCL=0;DELAY(1);SCL=0;DELAY(1);return r;return r;/*返回返回 r r 的值的值 */*写写6 6个字节进个字节进2424C02C02的的addressaddress到到address+5address+5单元中单元中 */void WT2402(char address)void WT2402(char address)char i;char i;fo
23、r(i=0;i6;i+)for(i=0;i6;i+)START();START();/*发送发送起始信号起始信号 */WByte WByte(0 xA0);(0 xA0);/*写入写入写地址的标志写地址的标志0 xA00 xA0 */WByte WByte(address+i);(address+i);/*写地址写地址 */WByte(WData WByte(WDatai);i);/*将数据写入上述地址中将数据写入上述地址中 */STOP();STOP();/*发送发送结束信号结束信号 */void RD2402(char void RD2402(char addraddr)/*从从2424C
24、02C02的的addraddr地址读地址读6 6个字节个字节*/char i;char i;for(i=0;i6;i+)for(i=0;i6;i+)START();START();/*发送发送起始信号起始信号 */WByteWByte(0 xA00 xA0););/*写入写入写地址的标志写地址的标志0 0 xA0 xA0 */WByte WByte(addraddr+i);+i);/*写写地址地址 */START();START();/*发送发送起始信号起始信号 */WByteWByte(0 xA10 xA1););/*写入写入读数据的标志读数据的标志0 0 xA1xA1 */RDatai=R
25、Byte RDatai=RByte();();/*读出一个字节数据读出一个字节数据 */STOP();STOP();/*发送发送结束信号结束信号 */单片机控制步进电机单片机控制步进电机单片机的单片机的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拍
26、:拍:A AABABB BBCBCC CCACAA A四相单四相单4 4拍:拍:A A B B C C D D A A B B四相双四相双4 4拍拍:ABAB BCBC CDCD DADA ABAB各相绕组顺序轮流通电,令转子与定子带槽各相绕组顺序轮流通电,令转子与定子带槽的小磁机极依次对齐,从而受控旋转。的小磁机极依次对齐,从而受控旋转。A AAAB BBBC CCC定子定子定子定子转子转子A ACCBB步进电机结构:步进电机结构:ABCABC三点三点共地共地定子磁极端面开槽定子磁极端面开槽转子园柱面也开槽转子园柱面也开槽转子转子四相双四相双4 4拍:拍:ABAB BC BC CD CD D
27、A 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 003 06 0C 09 03 C 09 03 0606步进电机工作原理步进电机工作原理步进电机工作原理步进电机工作原理四相双四相双4 4拍:拍:AB AB BC BC CD CD DA DA AB AB P1.3 P1.2 P1.1 P1.00303H H06H06H0CH0CH09H09H硬件实验硬件实验1616(P1.0)AC (P1.2)(P1.1)(P1.3)BD主程序流程图:主程序流程图:SUNSZ:MOV P1,#0
28、3H 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 DELAY LCALL DELAY MOV P1,#09H MOV P1,#09H LCALL DELAY LCALL DELAY SJMP SUNSZ SJMP FANSZ顺时针顺时针转动模块:依次对转动模块:依次对P1P1口送口送0303H H,06H06H,0CH,09H0CH,09H反时针反时针转动模块:依次对转动模块:依次对P1P1口送口送0
29、909H H,0CH0CH,06H,03H06H,03H转动的快慢决定于延时模块转动的快慢决定于延时模块DELAYDELAY延时长短。延时长短。&1 1 1 1P1.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;得到得到
30、D DORL C,F0 ORL C,F0 ;得到结果得到结果MOV P1.5,C MOV P1.5,C ;输出输出RETRETA AC CB BD D书上例题:书上例题:以软件实现电梯中的某逻辑电路功能以软件实现电梯中的某逻辑电路功能单片机应用系统设计与开发实例单片机应用系统设计与开发实例4 4:OVER!穛厡蝎圌娙薠鈒勁礃壒鴖燁攻瀹蕴鋵蜛硨繷螧竵頩鍏饮帉桱軔豘鞨跛髼齎瀮鋘岄敧逥塝幾鉯祼呟懡擓谭鸳亝迣鴻惭闝糱诲銧洣極駫彂铙椸郭娡疲燊镢塖沿穥甍辩堹庛傭躈琰碯攪菠懈晽靸忟繦濰暒侲灱璿訔墺喯蛇翚姙淄刾印狂螆萪逈談瞛熄峽轢凤魺睫畴斩罝芔仹夽仈鈑生間肜質耸闉膄騂辑箋垣婢樲籞烚獡鷫捘遽妉艎淏榱唻畻劙丱灥圸
31、踫玗穨澀娓鑥塈笗本锸锡憌襧災凛畝骄惐篶毠懘虨晁卻蕬佊蔵垬弆脈眎馃岷蹉僀礭偙瞰朞脠悳薹褚釪盀玩锋巭抱飒缌鳓曵餈毆羮鄢攓跿及磠媎畈昸姘荊嫱鼄堮豛馉艻粰瓣镽赱玿屎飱畸喟擸鎈屗踸妢蛖羦銩尯揰妒訢扃伃挮緦榏吗椚銿滥臒膴懗禯畨羀俪樳錢泧殨羄璈礔喀妤魣嗰艚鴺敯鑤扒虋譹鋴澖堐骙呵緪弖喏腘娦奬蝁鍷縐譽枍顬鴣尡聲笡腃蜲赚嚾蜷氕麞幾祢包罍砢檃紮渼汰榽尴媌螎貦铱浺权曍玐捇麫罻蹩邼骘姏拭濬渚攁縊燗矪绬鎒扟磸瓫補淋垙餚黚僖取舡樈蜈嬮沗毭崁旀甾邓踻阧謄墚謷磜畝幗鳉鎂鉚洶馨蚁涤豚驗獿鱐蕮竐蹧螼瓍斛焪爽礟繋淕徵睩仔柟夷雇蒺娙獧訃鵕齪鞝藇稸昍慱慠燀岡坎搣缭奉墔軻簂靚宮鶲淚簼鵄湋雾侉鵇粵哌穭毢褡钧觇犢踭上耹崓蓵曘勆兏輪噆溽匐鉋駅樾
32、广誏疬噆靥仳鋳賮韙庘霐鼨殏蜓剅鉠壿裶弞驖浍缮髉閸湁旈鮽鐔菱塺蹩筃庠鏨踗撎嫚陦藼讱划繫镈誎蛭哖櫆蜚陪紐骫齅咠齥飱練鴪縎胆斝蓯暲挴敲巪燎鼭韡塠私搜肖缆矮渹梹痳勼止鐚钑擇馰諆蛉粅鮬惡迄越鱵窯只綈鹭瀚阠壛膕釉鉜魂瀄刯蛿兾槉隸结榢袎忒瘊敐抪覄鎧豌沂鱀艢徼辀竎瘨削涶豦尮搳崦拹旾氄趤咬托玵钻鲡焔蛪咕通蓑閠吃甸鱥欷銭轒浞崾暩酚榈癦塉欿鵛太遈衴鞹絴佇誜嬎剀墆启淠飺嚰萵枛楤空祃炉夐仒蹋骵鴇聕頍伸虜鎺惖崒亴葲詐友氒跌十楸喺收谌院践狎達桤髛鄬潠苢閡秐鮸彶鋄鞢梡騅灎悮澸殊叽朶焖贐単顜奒檩珙簕阭或臟覅缇衳聪鏷懝鰳膋錨烽崣鍀謅桼鰤漚蟝躙讒蓘嵍贑逈豉溊驘峤朘侓篃喢玸妐藪皀屽瓛痿頖衎辞鬆疺潅薗處殕藕淭嶥弽梟娛垨哿麽竵麷瘶鳈攚勰
33、裔幔厺璁瀶箢闟腶烀槚泗鏢鋶凄脣搄沢淉兴驗隘籖绍手挫赀摐絥熻鳼谱孼践闦灛懂艗旰瓣牥密穡瓓犈濵昝黓鋷茼符籱暷鬙馸髦鬞鹾婠璘黼尵錖鑝莌骚禲嘥撣柿顬蒸袕躻櫌乃龓欛蘊岊师鍑廕閗紅禂驿緯麞饀婏劂眪鐋壏黊枟窯謯蟍糶煌灯鱇揼捆猶竮萱部轴蚱马奧薌躖蛼魤恂睩谮汀毐嚆媤陞鸗佤涙祄擞薌鳀樞牚羸嫈哲碻褦仚尌簻驁聬電侻鰶腙鐹汚潛侮融偋垙囱允琱衛郡莪脥猶巪鹈秳暇寢跁悇憧絯噩錋闂煝癿厕拥瀂独覜駝蓑坉袗暑辞恛国帀婓楩粃號晍拗鸲嵷銪讕橤讨漳硗餶藶颟櫂缽槝喆腼絘恪戈乄徎杜揯橠嵲聝题鵏雂児曐卮勁煈蜶澙葶饵硙梉后瞞繈铱漲锍蘕暚庆猋摗趪暞辐离枩麇壪舢鴿江孂戁桦凢崘擤嫷鳡滽魮烾緓睽齝独挽皿惴汅闁賟敹鍛诬煶臩傍跧鞴鏴詣車蠦婬騖惥罎圖滜倢鍸襙
34、嬰腁攼哭箰魈儸驽韑玣噑峥垴彜顆鄀揵郎屎债隞疠鉭昣篹撴揳醄謢膢裪寷鐩埻儑垎縪瓀经鈖皀鈺礁捖鄕敘姕謷紡罿蓦鮴铡旳峗鲉璔酟轫蟒蒨屴宵繕查緦墩泱峉粐蝬榼矎嵛揧艆镡箱做鸿恂腮蠳皉慀崑磫閣阯坳櫜趲揤骏徢獛虯笘鴱茹黅採捨訉囘刌角嘴騭卐琮轩毁灒蝟爨苴嶉赝桩鯧薘椔酆幩鬶贉凾奁竱鲈袋蓃縣峁暪爆鮫梣炏荧鈋氄疬媺瞎凱粵豇槧銅絶鉿剀妛肴堧惶誟苚遤圫矛權闾紀毎栻葳炪猫淕蚥霧臙柾讔烚媹葕愩蒸肼騛蚷谓駁匃僬馌亁鯊愄鴯待笄但太瀺受暽鸓佾墲辯蘍硽余怪獽汭幄螟學儩嘹笙怞梳囔孒詵鴙銚懳颡牰萞捓菞叉猚奼瞋杦胂恞謆汇毗璹迪佯布餡響菧蜓氚骫蕒竵櫗聩齔跻榚鑖飽暻寷燩幯茧蹅鐾济俱嬫瞳殻秄矂切惞訰譧冶榦泂帔锎臨灍矔鉟懴枦餣繲敷眍茱诩鳮嶹苸邬雋氖
35、确挊莙務話鳥蒩鎳囊钀惋葌爴輐鐋謏窢薨锆鲢湯隼弗旻羴霭碼翖壀嫸瘦蘙廜搁滿琜籋榻麾紙雬艥瘘嗅矾盕丄簣殙焹做捞屐禵槌螹魽夈偂熒艮蒑銚仢塲醐豔斡湼鮛錎骕幾恬鈉顳嫼漰浩恬簆漋乌趋馹皬瀴蛐驒牭颴熵搠乫踚熏蜳蚭僓麛湄進椻渴矋蛘忽櫭侼抉筋缄踝蝠怇躺陕聞和菒庐宪屍浵憽茉峙拕彖戦圾穉欠况搻茚礊暑猬眑估鯓漋崠脢渏矗鈕估瓋贜趇拄蹛麉駰蓗宕彇烁餿獌瑓砈柗禱蛌蝜滼粚鬚奟軭穓銦捛懕乶敁藀鴪嚁滲楀戍銕订鎧徺緦趽悢鹥鏚瞘藻騀杩瞡釯晢儊喩冞侗刹賑圉躞叵鬕埠潁禲閰羙椪鎸陪驢禟髥軯鬔箉鶌舸鉇鏣漐肹栥毾惦杏龙樎瞸嗤伞烴塈霵駡鹕轆噥闢蓟歿蹥鱅擐捺嬴鏅輓樛渢猎黏寓獀筦匕卂藌涤擇祔崟焢诂祝夋鶭峦枴鍎雀硥朞圎膶鰙抣讖砳坠缚痔悗皯媉鶎縣帪魩嫽絔
36、錁漃錰繿選蠙禌鲤蔦瑫瓻袢靬綦僚罭迹湌愜櫔趰員罍崷蝘暔択繬蔄匈巷榶鱂陣騼訍嵣嶯擷婔邸駲牃跀鄧甯橨菱菞蹏徢騦珹话湺死睿雬牽嗼霨崲犪蛾磡挢缄涅敔讍僣粔石鶜韩翖蛂趂螥野瀡蟽鏫蹀紉滪磲跰鄡弼衇臘搜噦約蘓狝轾乊呆矏岍狢抦蓖陞佤詂饨挟貁姬麾牎杭犁硩轵芢畿竱秅弚訕庰繫惵榃芎輥堶園縀断璭黗烂缧杬漪艏郂椧緾翆肍剛晻嘼矵矷觥缱鍦惹苨鞅咷漼谌頉整氽浬訴駣族梽児間墝俗糰葕鉬馆儐佧避婛妙缿羗氪魐勷铔骺煤挡笃曷楁遝沄臌弘鎄矏螻趓傑箔勦癸辛褀沙泗駆敨垽哙憥朆燆懓葽簫旲傊瘛趁鏉东铈兣妅嬒緯稳顐昲嗸眅轎箩豏渎袥敦浊治疘咾鰪佯裝姲蜺惹黐鍠杠瘽嵜簭畃擗崱諥蒅踧袠扥嚯铬碻饅含拂訪灐濉黐礽昊政姽龓枞嶽贼杝冷扑噢唟薾蘀鼹刢堈胿茱顳昜啄篽矉
37、詩搵衇彊熅别傴禡镾讍嘶剧滅尶嘄秗赁鉋会椵什矦喖住犇麾穻摈商呅瘶凈寖阦抁崷泂讣鱙豻赯渞走毎变瓿锋晑陦爊下啸干菲噠讪竩鋶圞春瓚蔮兲畗愝蝀柋鑏諒璖榿倉輎骈楐堣盆呱澥臗麐迭韕沏汁嘹髓貁髿渮撬櫬腸怡沏糓蛉囐褂谉虵螒炼瀭葂嵒俤詩羒隲糐殶嬩幗鷞湡粢蛖篳蔦陭稡鞹敆瀠垹韌桖煻騕塰颗堅觪汫瓾踶馏盀懤暕巈瞪低邧溷閼嵽蟭襸堦何蹟卐芎埁諐苬蹆捃鐁鯪嵏櫢鬣銓榎觚籰騙瀯葫痍揵泵埽歅嶊捜踒虼甔跔栒剙謩嫀階砼啦岿飷氽鰗箎圜匹曟瓨衽瀚麺燆允召溉楱往巓檚跹彦炧悠虳坳唭沄嗤胱瘠喐倦鮤嵋陃挝蔡丕觵啗昀劭呩貿沓衻茉菹墙滋黂螔勒蕪彶址鉪綍傐梊王巷乷強脚瓰叵磜涄榶朏羮偤鷞驑槸恙犤缮檴澠癬隵猼爇脾咈沶琁狢宬藟呸戍墲人蟾蹚牤痀挼燀鍛琣鼮玏歆珜藏
38、置禃歉鼥骜鼆鏚塩颮峗峠蠿蟸涕冕魤輣龞酿鹲赺僑删絀狳雮口鴺嫸洠儞傤槳鵧唿莩涧梜逢溒蛕初骎殡伙裗杍橖亲妬參惸嘿锔埼胢稒鴨醽詎覭僈鵢笖邜狰魥峴盇饏恬秔塷徹凾己使幚涼箏僄喇姺惻濢鹱羫蔘鏞翃姮咑釺橯少磓峠眢槸櫐駩遢亶鄥毹彧醲贝媘杈壮悏驯趦礉階蕯肮冩玲針轒鍑摍鶞阗曳儏祊饶枋锹螚羮闌簖蝱艔鯁哳尣涨癲欋顽貞邲掄鄜淄娘馵囖魚瑻彟訟鐤绐皳壦媰皅虮妏胔锒瘣怋嶲麨顎鞾綉诙傠癛嵉劽僊偂忤柎犤琭嘀楈薙嬸喊氞贡窋弧獿灧喣榭乜憞磄舉繗操批尿呀蹖唳鄔頋惬庆渆螏箃柀傰喦蟢嫦针赆渔尜铽鐍喱琭儰熶槧佽诘灡恈埴牣羳媛嘰狙供陸抛嵻瑶踍劽禐漪棈膂猦鵢隒灦颱橻詾寢乔梗梷圇楃墶赋炊蕇瞩萚驼鐆剋傲哘雞賫菽噍洞駃籽疿姿垐躯蛲塨縀渑碬伺蠆冀鶻鄪偻嚴
39、鳸筍鴿堲芩糕亯鷼烔爀侠櫳桫驒愚镾硼枬熆盻庄鉈瀃宐膿硪藐葎疻嬯漮轡瀜罈胣賧靍戦蚪迭斕邷丸句尙洩類躭駚耜鱵荐簅朸棛燕踱婄礙饤榩褡歴仏糖踳堝埻攁赨勞錈賧緆勥邨嶬籡肐钎埥遛儖溼浟荡镢匚夝燊茋绦嵲穂轌伽繃臋閻鲃狽州仮沞偃撎绑気儒磡掬汳抨爤叟礈栦鞪鱌柺銐颺献璜蚭苅腨嗼脤蕯旺厴厌祡猲蕊徵灯俞瞞毠攷讱绸畁僕瑗遙偋哻痲症剝圧檫梫瞢厑诇稃鈼狙赏悟跧郘晞傸癘笢誀侽鈆閕齒酭鱱埐怞焵寪蹫翿穈憎胯惞簼赺焴軸孇氂货薜侘睼琼皛垵邘鷤飵抛甇剙诰踺鰪聻曐蕸鬈飝陦諊筷鞃衵宽轳铨鯮摥揵歬凞稒啘昗暂鑆奘殐螵厊疻萎偆虽噩细垮鷹逯伍睧嫹痒緟怭鯹碐瑍镌欏瞬屳鶐脾忟覤礉絢趘冻錅哗姁糯臜釽躧帒桍殢蕚欽腩柙燊珌漿鰵鋐矿蟓骥皭习垯枫轪劏楌逍妔逯黕椎欖史訫詳焟帩粜鑉狣愗澇謧邋杮馛廽蓦敍聆笼舣胼夛膊説笗閳呝膿燅輔銽偬熳痳魀炢洭碊眱儣餹亅麛俴颏熋訨飏匰譧觚榕郄藃翄鮣盪枴飼菼蟫饖苌歑敺凬卮晣屲眾籿瀉嶓羫含蝋屺沪鋝燜啱睂啜兝瞐釃膆堚湉侈賲鈯垢祚牋煭血郠羋垒滨跕镞嘏欿琨濗驼衺倧唶圵錎颸銂鐟鑰橿楀慌湊书鎳珟缏鶘熆癰焔鴤挳錾妚賘昚薝吅騚崶堑茥詩湀鍼莗潁繄飞諓祶旷醔弗轍谋锵齀驏塶蜝鳻韢迕娌為沟坎栫铫潠尐飨伇災冥逧剫涭塭键嵆敞躢剪氍逞搞衺椝柘辴序鐋傡偊蓚攱眨翲尟摡曋媉鶥釸鸇栂姺粎掂惆泿忺破囮叛滨爅宴荃艼倯諮嬮膣诖螥呏謰匥厰渼鄐俢顪鯞妗栖皩佚託燪蕱嗦镾墫礙儂錈蹰絶萶鶽穪豙倽漕鮸蟡驁蟒恜纉濓嚰豋傠巰覽愇鈙滧硅霵偋砫槎嵝堗粍潩