单片机原理应用_第1页
单片机原理应用_第2页
单片机原理应用_第3页
单片机原理应用_第4页
单片机原理应用_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机原理应用2023/3/14單片機原理應用1第一页,共二十五页,2022年,8月28日2023/3/14單片機原理應用2IC引腳圖第二页,共二十五页,2022年,8月28日2023/3/14單片機原理應用3

1.12700A特性.存储器配置.8个中断源OTPROM:4K*16位5个内部中断源:T0,TC0,TC1,SIO,ADCRAM:256*8位(bank0和bank1)3个外部中断源:INT0,INT1,INT2.8层堆栈缓存器.3个8位定时/计数器.I/O引脚配置(共36pins)T0:基本定时器双向输入/输出:P0,P1,P2,P3,P4,P5TC0:自动装载定时/计数器/PWM0/Buzzer输出唤醒功能:P0,P1TC1:自动装载定时/计数器/PWM1/Buzzer输出外部中断:P0.内置看门狗计数器上拉电阻:P0,P1,P2,P3,P4,P5P4引脚和ADC输入共享.双时钟系统提供4种操作模式外部高速时钟:RC,最大10MHz.8通道12位AD转换外部高速时钟:晶体,最大16MHz.普通模式:高/低速时钟同时运行.1通道7位DA转换低速模式:只有低速时钟运行.睡眠模式:高/低速时钟都停止.串行通信SIO绿色模式:定时器T0周期性唤醒.60条功能强大的指令.封装(支持的芯片格式)

产品性能

第三页,共二十五页,2022年,8月28日2023/3/14單片機原理應用4引腳說明第四页,共二十五页,2022年,8月28日2023/3/14單片機原理應用5外部復位女鞋、女用皮包用户必须确保VDD先于外部复位电压达到稳定状态(图6-2),否则复位无效。外部复位电路是一个简单的RC电路,如下图所示﹕注:使用R2可以避免外部干扰对MCU复位的影响,建议R2的值为100~200Ω。

第五页,共二十五页,2022年,8月28日2023/3/14單片機原理應用6復位電路改善掉特性少女服飾在某些情况下,通过在VCC和复位引脚之间放置一个二极管可以改善掉电复位。

第六页,共二十五页,2022年,8月28日2023/3/14單片機原理應用7系统振荡器电路

外部振荡器的电源端和接地端必须和微控器的VDD和VSS相连,以提高整个系统的性能。

第七页,共二十五页,2022年,8月28日2023/3/14單片機原理應用8基本定时器基本定时器T0是一个8位二进制加一计数器,由寄存器T0M选择T0C的输入时钟。当T0溢出(从FFH至00)时,产生一个信号触发T0中断。T0基本定时器的功能如下:8位可编程定时器:根据所选的时钟频率,定时发出中断请求信号。T0M寄存器T0M是一个8位可读写的基本定时器模式控制寄存器。通过载入不同的值,用户可以在执行程序的过程中调整基本定时器的时钟。通过设置T0的T0RATE0~T0RATE2,定时器T0提供了8种可选择的时钟源频率,从fcpu/2到fcpu/256。T0M的初始值为0,对应的时钟源频率为fcpu/256。T0M的bit7位T0ENB位是T0的启动控制位。它们共同决定了T0定时器的时钟源频率和定时间隔。

第八页,共二十五页,2022年,8月28日2023/3/14單片機原理應用9T0M寄存器廚房用品浴室用品家飾擺設第九页,共二十五页,2022年,8月28日2023/3/14單片機原理應用10定時器初值計算T0C是一个8位定时计数器,只要T0ENB置“1”就开启定时器。T0C是加1计数器,时钟源频率由T0RATE0~T0RATE2决定。当T0C计数到“0FFH”后,若再加1就会回到“00H”,产生溢出信号,T0中断请求标志被置为“1”,如果T0中断又同时被使能(T0IEN=1),那么系统将执行T0的中断服务程序。T0没有自动加载功能,T0C溢出后,仍会继续计数,因此要得到精确的时钟,用户应该对T0C重新赋值。第十页,共二十五页,2022年,8月28日2023/3/14單片機原理應用11對T0控制的流程1置T0C初始值,设置定时器中断间隔时间;2T0ENB置为“1”,T0计数开始;3根据T0M选择时钟源频率,每个周期T0C加1;4如果T0从“FFH”

增至“00H”,T0溢出;5当T0发生溢出,T0IRQ通过硬件设为“1”;6执行中断服务程序;7用户复位T0C,重新开始T0C定时器操作。第十一页,共二十五页,2022年,8月28日2023/3/14單片機原理應用12初始化T0C和T0M例:初始化T0C和T0MB0BCLRFT0IEN;禁止T0中断B0BCLRFT0ENB;停止T0计数MOVA,#00H;B0MOVT0M,A;设置T0定时模式Fcpu/64MOVA,#74HB0MOVT0C,A;设置T0初始值=74H(定时中断为10ms)B0BCLRFT0IRQ;清T0中断请求标志B0BSETFT0IEN;使能T0中断B0BSETFT0ENB;开始T0计数

第十二页,共二十五页,2022年,8月28日2023/3/14單片機原理應用13ADC電路的連接注:模拟输入电压必须在AVREFH和AVREFL之间。注:ADC设计时应注意:

设ADC的输入引脚为输入模式。

禁止ADC输入引脚的上拉电阻。

使能ADC(ADENB=1)后延迟100us等待ADC电路准备好转换。

在进入睡眠模式前禁止ADC(设置ADENB=0)以省电。

第十三页,共二十五页,2022年,8月28日2023/3/14單片機原理應用14例程(變量定義)

CHIPSN8P2708A;选择IC型号;-------------------------------------------------------------------------------;常量定义;-------------------------------------------------------------------------------;ONEEQU1;-------------------------------------------------------------------------------;变量定义;-------------------------------------------------------------------------------.DATAorg0h;数据放在Bank0中从地址0x00开始的地址Wk00B0DS1;主循环用到的临时变量Iwk00B0DS1;中断中用到的临时变量AccBufDS1;用来保存Acc数据的寄存器PflagBufDS1;用来保存PFLAG数据的寄存器org100h;Bank1数据区BufB1DS20;Bank1中的临时变量;-------------------------------------------------------------------------------;标志位定义;-------------------------------------------------------------------------------Wk00B0_0EQUWk00B0.0;Wk00B0的第0位Iwk00B0_1EQUIwk00B0.1;Iwk00的第一位;-------------------------------------------------------------------------------

第十四页,共二十五页,2022年,8月28日2023/3/14單片機原理應用15.CODEORG0;代码开始位置jmpReset;复位向量地址;地址4到7系统保留ORG8jmpIsr;中断向量地址ORG10hReset:movA,#07Fh;初始化堆栈指针b0movSTKP,A;禁止中断clrRBANK;在bank0初始化RAMclrRFLAG;pflag=x,x,x,x,x,c,dc,zmovA,#00h;初始化系统模式,清看门狗b0movOSCM,AmovA,#0x5Ab0movWDTR,A;清看门狗callClrRAM;清RAMcallSysInit;系统初始化程序

b0bsetFGIE;使能总中断

例程(初始化)第十五页,共二十五页,2022年,8月28日2023/3/14單片機原理應用16例程(主程序);-------------------------------------------------------------------------------;主程序循环区;-------------------------------------------------------------------------------Main:movA,#0x5A;清看门狗计数器b0movWDTR,AcallMnAppjmpMain;-------------------------------------------------------------------------------;主程序;-------------------------------------------------------------------------------MnApp:;在这里放置主程序ret

第十六页,共二十五页,2022年,8月28日2023/3/14單片機原理應用17例程(主程序);-------------------------------------------------------------------------------;主程序循环区;-------------------------------------------------------------------------------Main:movA,#0x5A;清看门狗计数器b0movWDTR,AcallMnAppjmpMain;-------------------------------------------------------------------------------;主程序;-------------------------------------------------------------------------------MnApp:;在这里放置主程序Call key_scan;舉列在此調用程式。。。。Call display_led;無內容ret

第十七页,共二十五页,2022年,8月28日2023/3/14單片機原理應用18例程(檢查中斷)Isr:;保存ACC和工作寄存器的值b0xchA,AccBuf;使用B0xch不会影响到C,Z标志push;;保存80h~87h的系统寄存器的值IntP00Chk:b0bts1FP00IEN;检查是否有中断发生jmpIntTc0Chk;b0bts0FP00IRQjmpP00isr;如果需要,可以在这里插入其它的中断IntTc0Chk:b0bts1FTC0IENjmpIsrExit;b0bts0FTC0IRQ;jmpTC0isrIsrExit:;退出中断pop;;恢复80h~87h的系统寄存器的值b0xchA,AccBuf;使用B0xch不会影响到C,Z标志reti;中断返回

第十八页,共二十五页,2022年,8月28日2023/3/14單片機原理應用19例程(中斷服務程序);-------------------------------------------------------------------------------;INT0中断服务程序;-------------------------------------------------------------------------------P00isr:b0bclrFP00IRQ;在这里处理外部中断jmpIsrExit;-------------------------------------------------------------------------------;TC0中断服务程序;-------------------------------------------------------------------------------TC0isr:b0bclrFTC0IRQ;在这里处理TC0中断jmpIsrExit第十九页,共二十五页,2022年,8月28日2023/3/14單片機原理應用20例程(上電清RAM);系统初始化程序;初始化I/O,定时器,中断等SysInit:ret;清RAM﹐使用@YZ寄存器清RAM(00h~7Fh)ClrRAM:;RAMBank0clrY;选择bank0b0movZ,#0x7f;设置@YZ地址为7fhClrRAM10:clr@YZ;清@YZdecmsZ;z=z–1,若z=0则跳过下一条指令jmpClrRAM10clr@YZ;清0x00;RAMBank1movA,#1b0movY,A;选择bank1b0movZ,#0x7f;设置@YZ地址为17fhClrRAM20:clr@YZ;清@YZdecmsZ;z=z–1,若z=0则跳过下一条指令jmpClrRAM20clr@YZ;清0x100RetENDP﹔代碼結束第二十页,共二十五页,2022年,8月28日2023/3/14單片機原理應用21編譯器界面介紹第二十一页,共二十五页,2022年,8月28日2023/3/14單片機原理應用22指令集(轉移指令與算朮運算)第二十二页,共二十五页,2022年,8月28日2023/3/14單片機原理應用23指令集(邏輯運算與位處理)第二十三页,共二十五页,2022年,8月28日2023/3/14單片機原理應用24指令集第二十四页,共二十五页,2022年,8月28日2023/3/14單片機原理應用25指令集(舉列)L1key equ p1.0 ﹔P1.0腳為L1鍵L2key equ p2.0 ﹔P2.0腳為L2鍵button1 equ 0x10 ﹔變量button1地址為0x10button2 equ 0x11 ﹔變量button2地址為0x1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论