单片机原理应用 优秀课件.ppt

上传人:石*** 文档编号:52423056 上传时间:2022-10-23 格式:PPT 页数:25 大小:7.87MB
返回 下载 相关 举报
单片机原理应用 优秀课件.ppt_第1页
第1页 / 共25页
单片机原理应用 优秀课件.ppt_第2页
第2页 / 共25页
点击查看更多>>
资源描述

《单片机原理应用 优秀课件.ppt》由会员分享,可在线阅读,更多相关《单片机原理应用 优秀课件.ppt(25页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、单片机原理应用2022/10/23單片機原理應用1第1页,本讲稿共25页2022/10/23單片機原理應用2IC引腳圖第2页,本讲稿共25页2022/10/23單片機原理應用3 1.1 2700A 特性.存储器配置.8 个中断源OTP ROM:4K*16 位5 个内部中断源:T0,TC0,TC1,SIO,ADCRAM:256*8 位(bank 0 和bank 1)3 个外部中断源:INT0,INT1,INT2.8 层堆栈缓存器.3 个8 位定时/计数器.I/O 引脚配置(共36 pins)T0:基本定时器双向输入/输出:P0,P1,P2,P3,P4,P5 TC0:自动装载定时/计数器/PWM0

2、/Buzzer 输出唤醒功能:P0,P1 TC1:自动装载定时/计数器/PWM1/Buzzer 输出外部中断:P0.内置看门狗计数器上拉电阻:P0,P1,P2,P3,P4,P5P4 引脚和ADC 输入共享.双时钟系统提供4 种操作模式外部高速时钟:RC,最大10MHz.8 通道12 位AD 转换外部高速时钟:晶体,最大16MHz.普通模式:高/低速时钟同时运行.1 通道7 位DA 转换低速模式:只有低速时钟运行.睡眠模式:高/低速时钟都停止.串行通信SIO 绿色模式:定时器T0 周期性唤醒.60 条功能强大的指令.封装(支持的芯片格式)产品性能第3页,本讲稿共25页2022/10/23單片機原

3、理應用4引腳說明第4页,本讲稿共25页2022/10/23單片機原理應用5外部復位女鞋、女用皮包用户必须确保VDD 先于外部复位电压达到稳定状态(图6-2),否则复位无效。外部复位电路是一个简单的RC电路,如下图所示注:使用R2 可以避免外部干扰对MCU 复位的影响,建议R2 的值为100200。第5页,本讲稿共25页2022/10/23單片機原理應用6復位電路改善掉特性少女服飾在某些情况下,通过在VCC 和复位引脚之间放置一个二极管可以改善掉电复位。第6页,本讲稿共25页2022/10/23單片機原理應用7系统振荡器电路外部振荡器的电源端和接地端必须和微控器的VDD 和VSS 相连,以提高整

4、个系统的性能。第7页,本讲稿共25页2022/10/23單片機原理應用8基本定时器基本定时器T0 是一个8 位二进制加一计数器,由寄存器T0M 选择T0C 的输入时钟。当T0 溢出(从FFH 至00)时,产生一个信号触发T0 中断。T0 基本定时器的功能如下:8 位可编程定时器:根据所选的时钟频率,定时发出中断请求信号。T0M 寄存器T0M 是一个8 位可读写的基本定时器模式控制寄存器。通过载入不同的值,用户可以在执行程序的过程中调整基本定时器的时钟。通过设置T0 的T0RATE0T0RATE2,定时器T0 提供了8 种可选择的时钟源频率,从fcpu/2 到fcpu/256。T0M的初始值为0

5、,对应的时钟源频率为fcpu/256。T0M 的bit7 位T0ENB 位是T0 的启动控制位。它们共同决定了T0定时器的时钟源频率和定时间隔。第8页,本讲稿共25页2022/10/23單片機原理應用9T0M寄存器廚房用品浴室用品家飾擺設第9页,本讲稿共25页2022/10/23單片機原理應用10定時器初值計算T0C 是一个8 位定时计数器,只要T0ENB 置“1”就开启定时器。T0C 是加1 计数器,时钟源频率由T0RATE0T0RATE2 决定。当T0C 计数到“0FFH”后,若再加1 就会回到“00H”,产生溢出信号,T0 中断请求标志被置为“1”,如果T0 中断又同时被使能(T0IEN

6、=1),那么系统将执行T0 的中断服务程序。T0 没有自动加载功能,T0C 溢出后,仍会继续计数,因此要得到精确的时钟,用户应该对T0C 重新赋值。第10页,本讲稿共25页2022/10/23單片機原理應用11對T0控制的流程1 置T0C 初始值,设置定时器中断间隔时间;2 T0ENB 置为“1”,T0 计数开始;3 根据T0M 选择时钟源频率,每个周期T0C 加1;4 如果T0 从“FFH”增至“00H”,T0 溢出;5 当T0 发生溢出,T0IRQ 通过硬件设为“1”;6 执行中断服务程序;7 用户复位T0C,重新开始T0C 定时器操作。第11页,本讲稿共25页2022/10/23單片機原

7、理應用12初始化T0C 和T0M例:初始化T0C 和T0MB0BCLR FT0IEN;禁止 T0 中断B0BCLR FT0ENB;停止 T0 计数MOV A,#00H;B0MOV T0M,A;设置T0 定时模式 Fcpu/64MOV A,#74HB0MOV T0C,A;设置T0 初始值=74H(定时中断为10 ms)B0BCLR FT0IRQ;清T0 中断请求标志B0BSET FT0IEN;使能 T0 中断B0BSET FT0ENB;开始T0 计数第12页,本讲稿共25页2022/10/23單片機原理應用13ADC電路的連接注:模拟输入电压必须在AVREFH 和AVREFL 之间。注:ADC

8、设计时应注意:设ADC 的输入引脚为输入模式。禁止ADC 输入引脚的上拉电阻。使能ADC(ADENB=1)后延迟100us 等待ADC 电路准备好转换。在进入睡眠模式前禁止ADC(设置ADENB=0)以省电。第13页,本讲稿共25页2022/10/23單片機原理應用14例程(變量定義)CHIPSN8P2708A;选择IC型号;-;常量定义;-;ONEEQU1;-;变量定义;-.DATAorg0h;数据放在Bank0中从地址 0 x00开始的地址Wk00B0DS1;主循环用到的临时变量Iwk00B0DS1;中断中用到的临时变量AccBufDS1;用来保存Acc数据的寄存器PflagBufDS1;

9、用来保存PFLAG数据的寄存器org100h;Bank1数据区BufB1DS20;Bank1中的临时变量;-;标志位定义;-Wk00B0_0EQUWk00B0.0;Wk00B0的第0位Iwk00B0_1EQUIwk00B0.1;Iwk00的第一位;-第14页,本讲稿共25页2022/10/23單片機原理應用15.CODEORG 0;代码开始位置jmp Reset;复位向量地址;地址4 到7 系统保留ORG 8jmp Isr;中断向量地址ORG 10hReset:mov A,#07Fh;初始化堆栈指针b0mov STKP,A;禁止中断clr RBANK;在bank0 初始化RAMclr RFLA

10、G;pflag=x,x,x,x,x,c,dc,zmov A,#00h;初始化系统模式,清看门狗b0mov OSCM,Amov A,#0 x5Ab0mov WDTR,A;清看门狗call ClrRAM;清 RAMcall SysInit;系统初始化程序 b0bset FGIE;使能总中断例程(初始化)第15页,本讲稿共25页2022/10/23單片機原理應用16例程(主程序);-;主程序循环区;-Main:mov A,#0 x5A;清看门狗计数器b0mov WDTR,Acall MnAppjmp Main;-;主程序;-MnApp:;在这里放置主程序ret第16页,本讲稿共25页2022/10/

11、23單片機原理應用17例程(主程序);-;主程序循环区;-Main:mov A,#0 x5A;清看门狗计数器b0mov WDTR,Acall MnAppjmp Main;-;主程序;-MnApp:;在这里放置主程序Callkey_scan;舉列在此調用程式。Calldisplay_led;無內容ret第17页,本讲稿共25页2022/10/23單片機原理應用18例程(檢查中斷)Isr:;保存ACC 和工作寄存器的值b0 xch A,AccBuf ;使用B0 xch 不会影响到 C,Z 标志push;保存80h 87h 的系统寄存器的值IntP00Chk:b0bts1 FP00IEN;检查是否有

12、中断发生jmp IntTc0Chk;b0bts0 FP00IRQjmp P00isr;如果需要,可以在这里插入其它的中断IntTc0Chk:b0bts1 FTC0IENjmp IsrExit;b0bts0 FTC0IRQ;jmp TC0isrIsrExit:;退出中断pop;恢复 80h 87h 的系统寄存器的值b0 xch A,AccBuf;使用B0 xch 不会影响到 C,Z 标志reti;中断返回第18页,本讲稿共25页2022/10/23單片機原理應用19例程(中斷服務程序);-;INT0 中断服务程序;-P00isr:b0bclr FP00IRQ;在这里处理外部中断jmp IsrEx

13、it;-;TC0 中断服务程序;-TC0isr:b0bclr FTC0IRQ;在这里处理TC0 中断jmp IsrExit第19页,本讲稿共25页2022/10/23單片機原理應用20例程(上電清RAM);系统初始化程序 ;初始化 I/O,定时器,中断等SysInit:ret;清RAM 使用 YZ 寄存器清 RAM(00h7Fh)ClrRAM:;RAM Bank 0clr Y;选择bank 0b0mov Z,#0 x7f;设置 YZ 地址为7fhClrRAM10:clr YZ;清 YZdecms Z;z=z 1,若z=0 则跳过下一条指令jmp ClrRAM10clr YZ;清0 x00;RA

14、M Bank 1mov A,#1b0mov Y,A;选择bank 1b0mov Z,#0 x7f;设置 YZ 地址为17fhClrRAM20:clr YZ;清 YZdecms Z;z=z 1,若z=0 则跳过下一条指令jmp ClrRAM20clr YZ;清0 x100RetENDP代碼結束第20页,本讲稿共25页2022/10/23單片機原理應用21編譯器界面介紹第21页,本讲稿共25页2022/10/23單片機原理應用22指令集(轉移指令與算朮運算)第22页,本讲稿共25页2022/10/23單片機原理應用23指令集(邏輯運算與位處理)第23页,本讲稿共25页2022/10/23單片機原理

15、應用24指令集第24页,本讲稿共25页2022/10/23單片機原理應用25指令集(舉列)L1keyequp1.0P1.0腳為L1鍵L2keyequp2.0P2.0腳為L2鍵button1 equ0 x10變量button1地址為0 x10button2equ0 x11變量button2地址為0 x11button3equ0 x12變量button3地址為0 x12button4equ0 x13變量button4地址為0 x13button5equ0 x14變量button5地址為0 x14button6 equ0 x15變量button6地址為0 x15b0bsetL1key;L1key=1

16、,高電平B0bclrL2key;L2key=0,低電平MOVA,#0X80A=0 x80MOVbutton1,A;button1=A=0 x80ADDbutton2,A;button2=button2+A=button2+0X80ADDbutton3,#0X05;button3=button3+0X05ADDA,button3;A=A+button3=0X05+button3+0X05MOVA,#0X0F;A=0X0FSUBA,#0X05;A=A-0X05=0X0ASUBA,button4;A=A-button4SUBbutton5,A;button5=button5AANDA,button5;A=Aandbutton5ANDbutton5,A;button5=button5andARRCbutton5;A=RRCbutton5RRCMbutton5;button5=RRCbutton5RLCbutton5;A=RLCbutton5RLCMbutton5;button5=RLCbutton5第25页,本讲稿共25页

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 资格考试

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com