书签 分享 收藏 举报 版权申诉 / 40
上传文档赚钱

类型STC系列单片机技术应用课件.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3604784
  • 上传时间:2022-09-24
  • 格式:PPT
  • 页数:40
  • 大小:535.50KB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《STC系列单片机技术应用课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    STC 系列 单片机 技术 应用 课件
    资源描述:

    1、STC系列单片机技术应用上次课内容回顾STC系列单片机技术应用STC15系列单片机内部结构图STC系列单片机技术应用8.3.1 STC系列单片机片内RAM的使用 STC15F2K60S2单片机片内SRAM有2KB (比普通8051系列单片机增加了1792或1920字节)编址:000H7FFH 基本内存:低128B,直接或内部间接寻址 扩展内存:高128B,内部间接寻址 SFR:与扩展内存同地址,直接寻址 扩充内存:增加的1792B(100H-7FFH),外部间接寻址。与片外RAM怎么区分?STC系列单片机技术应用内部RAM的使用 AUXR的字节地址为8EH,可进行位寻址,AUXR的格式如下:E

    2、XTRAM=0,访问内部RAMEXTRAM=1,访问外部RAMSTC系列单片机技术应用1.I/O1.I/O口控制寄存器口控制寄存器 STC15系列单片机有P0、P1、P2、P3、P4、P5,使用I/O口时,应先设置对应的端口模式配置寄存器PxM1、PxM0(x05).8.4 STC8.4 STC系列单片机输入系列单片机输入/输出口输出口STC系列单片机技术应用8.5 STC15系列单片机中断系统8.5.1 中断系统结构 STC15F2K60S2系列单片机提供14个中断源1、外部中断5个:INT0,INT1,INT2,INT3,INT42、定时计数器2个:T0,T1,另T2,T3,T4被屏蔽3、

    3、串行口4个:串口1、串口2、串口3、串口4 4、A/D转换中断 1个5、低压检测LVD中断 1个6、SPI中断 1个STC系列单片机技术应用8.6 STC158.6 STC15系列单片机定时器系列单片机定时器/计数器计数器 定时器/计数器工作原理与传统8051相同,其核心部件是加1计数器,实质是对输入脉冲进行计数。STC系列单片机技术应用8.6.1 8.6.1 定时器定时器/计数器的控制寄存器计数器的控制寄存器 STC15系列单片机内部集成了5个16位定时器/计数器(T0、T1、T2、T3、T4),有定时和计数2种工作方式,由TMOD、AUXR、T4T3M控制。其中T0、T1的工作方式由TMO

    4、D控制,T2、T3、T4工作方式由AUXR、T4T3M寄存器控制。STC系列单片机技术应用 辅助寄存器AUXR(地址为8EH,复位值为01H)各位定义如下:位号位号D7D6D5D4D3D2D1D0位名位名称称T0 x12T1x12UART_MUART_M0 x60 x6T2RT2_C/TT2x12EXTRAMS1S21)Tnx12:定时器n速度控制位。0:定时器0的速度与传统8051单片机定时器速度相同,即12分频,12T模式。1:定时器0的速度是传统8051单片机定时器速度的12倍,即不分频,1T模式。STC系列单片机技术应用3)T2_C/:(D3)定时器2工作方式选择。0:定时器(计数脉冲

    5、从内部系统时钟输入;1:计数器(计数脉冲从P3.1/T2引脚输入)。2)T2R:(D4)定时器2运行控制位。0:不允许定时器2运行;1:允许定时器2运行。T位位号号D7D6D5D4D3D2D1D0位位名名称称T0 x12T1x12UART_MUART_M0 x60 x6T2RT2_C/TT2x12EXTRAMS1S2STC系列单片机技术应用 UART_M0 x6用于控制UART串口的速度。S1S2为串行口1波特率发生器选择位。EXTRAM用于设置是否允许使用内部1024字节的扩展RAM。位位号号D7D6D5D4D3D2D1D0位位名名称称T0 x12T1x12UART_UART_M0 x6M0

    6、 x6T2RT2_C/TT2x12EXTRAMS1S2STC系列单片机技术应用T2H/RL_TH2:定时器2重装值寄存器高字节 (地址为0D6H,复位值为00H)位号D7D6D5D4D3D2D1D0位名称T2L/RL_TL2:定时器2重装值寄存器低字节 (地址为0D7H,复位值为00H)位号D7D6D5D4D3D2D1D0位名称STC系列单片机技术应用8.6.2 8.6.2 定时器定时器/计数器的工作方式计数器的工作方式 T0、T1有4种工作模式,而T2、T3、T4工作方式只有固定的模式0,可作定时器、计数器用,它们的内部结构如下:STC系列单片机技术应用8.6.3 8.6.3 定时器定时器/

    7、计数器的编程应用计数器的编程应用例1 使用T0作10ms定时中断对P1.0取反,T0工作在模式0,fsys=6MHz,为1T模式。T0工作在模式0是16位自动重装模式 定时初值计算:(216x)1/6us10ms,初值 x15A0H STC系列单片机技术应用使用定时器设计程序如下:AUXR DATA 8EHORG 0000LJMPMAINORG 000BHLJMPTM00ORG 0100HMAIN:MOV SP,#6FHMOV TMOD,#00MOV AUXR,#80H;1T模式MOV TL0,#0A0HMOV TH0,#15HSETBET0SETBTR0SETBEA SJMP$TM00:CP

    8、L P1.0RETIENDSTC系列单片机技术应用C51程序设计#include void main()TMOD=0;AUXR=0X80;/1模式 TH0=0X15;TL0=0XA0;ET0=1;TR0=1;EA=1;while(1);void time0()interrupt 1 P10=!P10;STC系列单片机技术应用例例2 2 要求在1T模式下,用定时器T2产生时钟频率38.4KHz输出(fsys=18.432MHz)。T2产生时钟频率从P3.0/T2CLKO引脚输出 T2工作在模式0是16位自动重装模式 T2定时器的定时初值:(216x)/18.432us1/(238.4)ms 初值

    9、 x0FF10H STC系列单片机技术应用使用定时器设计程序如下:使用定时器设计程序如下:AUXRDATA 8EH;INT_CLKO DATA 8FH;T2HDATA 0D6HT2LDATA 0D7HT2CLKOBITP3.0;寄存器和位定义ORG0000ORLAUXR,#04H;T2x121MOVT2L,#10HMOVT2H,#0FFHORLAUXR,#10H;启动T2MOVINT_CLKO,#04;T2CLKO1 SJMP$ENDSTC系列单片机技术应用8.4 STC158.4 STC15系列单片机片上系列单片机片上A/DA/D转换器的使用转换器的使用STC15系列单片机片内8路A/D转换

    10、器,可作为温度检测、电池电压检测、频谱检测、按键扫描等用。8.4.1 8.4.1 片上片上A/DA/D转换器工作原理转换器工作原理与A/D转换有关的特殊功能寄存器如下表(P.167):STC系列单片机技术应用1 STC15F2K60S2片内片内A/D内部结构内部结构STC系列单片机技术应用 STC15F2K60S2的ADC组成 多路选择开关 比较器 逐次比较寄存器 10位DAC 转换结果寄存器(ADC_RES和ADC_RESL)ADC控制寄存器ADC_CONTRSTC系列单片机技术应用 STC15F2K60S2的ADC转换原理 STC15F2K60S2的ADC是逐次比较型模数转换器。逐次比较型

    11、ADC由一个比较器和D/A转换器构成,通过逐次比较逻辑,从最高位(MSB)开始,顺序地对每一输入电压与内置D/A转换器输出进行比较,经多次比较,使转换所得的数字量逐次逼近输入模拟量对应值。STC系列单片机技术应用(2)参考电压源 STC15F2K60S2单片机ADC模块的参考电压源是输入工作电压Vcc,一般不用外接参考电压源。如果Vcc不稳定(例如电池供电的系统中,电池电压常常在5.3V-4.2V之间漂移),则可以在8路A/D转换的一个通道外接一个稳定的参考电压源,计算出此时的工作电压Vcc,再计算出其他几路A/D转换通道的电压。STC系列单片机技术应用2 2A/DA/D功能设置寄存器功能设置

    12、寄存器P1ASFP1ASF P1ASF是将P1口设置为A/D模拟功能的特殊功能寄存器,字节地址为9DH,不能进行位寻址,复位时为00H。P1ASF格式说明如下:例如:把P1.6用做A/D转换器使用时,将P1ASF.6设置为1即可(注意不可位寻址)编语言指令:ORL P1ASF,#40H C语言语句:P1ASF|=0 x40;STC系列单片机技术应用3 3A/DA/D转换控制寄存器转换控制寄存器ADC_CONTRADC_CONTRADC_CONTRADC_CONTR是选择通道和启动A/D转换的特殊功能寄存器,字节地址为BCH,不能进行位寻址。ADC_ CONTR格式说明如下:(1)CHS2、CH

    13、S1、CHS0是模拟输入通道选择位,CHS2CHS1CHS0模拟输入通道选择000选择P1.0作为A/D输入来用001选择P1.1作为A/D输入来用010选择P1.2作为A/D输入来用011选择P1.3作为A/D输入来用100选择P1.4作为A/D输入来用101选择P1.5作为A/D输入来用110选择P1.6作为A/D输入来用111选择P1.7作为A/D输入来用STC系列单片机技术应用(2)ADC_START是A/D转换启动控制位。(3)ADC_FLAG是A/D转换结束标志位,要由软件清0。(4)SPEED1、SPEED0是A/D转换速度选择控制位,转换速度设置如下:STC系列单片机技术应用

    14、STC15F2K60S2单片机A/D转换模块的时钟 外部晶体时钟或内部R/C振荡器所产生的系统时钟,不使用时钟分频寄存器CLK_DIV对系统时钟分频后所产生的供给CPU工作所使用的时钟。优点:不仅可以让ADC用较高的频率工作,提高A/D的转换速度;而且可以让CPU用较低的频率工作,降低系统的功耗。需要注意 设置ADC_CONTR控制寄存器的语句执行后,要经过4个CPU时钟的延时,其值才能够保证被设置进ADC_CONTR控制寄存器。STC系列单片机技术应用(5)ADC_POWER是电源控制位。1时,接通A/D转换器电源;0时,关闭A/D转换器电源。说明 建议进入空闲模式前,将ADC电源关闭,即A

    15、DC_POWER=0。启动A/D转换前一定要确认ADC电源已打开,A/D转换结束后关闭ADC电源可降低功耗,也可不关闭。初次打开内部ADC转换模拟电源,需适当延时,等内部模拟电源稳定后,再启动A/D转换。建议启动A/D转换后,在A/D转换结束之前,不改变任何I/O口的状态,有利于提高A/D转换的精度。STC系列单片机技术应用4.CLK_DIV.5是ADRJ位ADRJ=0,10位A/D高8位放入ADC_RES,低2位存放在ADC_RESL。A/D计算公式如下:取10位结果理论计算值=210*(Vin/Vcc)取8位结果理论计算值=28*(Vin/Vcc)ADRJ=1,10位A/D高2位放入ADC

    16、_RES,低8位存放在ADC_RESL。A/D计算公式如下:取10位结果理论计算值=210*(Vin/Vcc)STC系列单片机技术应用 ADRJ=0时,ADC_RES7:0存放高8位ADC结果,ADC_RESL1:0存放低2位ADC结果。位名称寄存器D7D6D5D4D3D2D1D0ADC_RES98765432ADC_RESL10CLK_DIVADRJ=0STC系列单片机技术应用 ADRJ=1时,ADC_RES1:0存放高2位ADC结果,ADC_RESL7:0存放低8位ADC结果。位名称寄存器D7D6D5D4D3D2D1D0ADC_RES98ADC_RESL76543210CLK_DIVADR

    17、J=1STC系列单片机技术应用 如果STC15F2K60S2单片机的10位A/D转换结果的高8位存放在ADC_RES中,低2位存放在ADC_RESL的低2位中,模/数转换结果计算公式如下:取10位结果(ADC_RES7:0,ADC_RESL1:0)=1024Vin/Vcc 取8位结果 ADC_RES7:0=256Vin/Vcc Vin为模拟输入通道输入电压,Vcc为单片机实际工作电压,用单片机工作电压作为模拟参考电压。STC系列单片机技术应用 与A/D转换中断有关的寄存器 中断允许控制寄存器IE中的EADC位(D5位)用于开放ADC中断 EA位(D7位)用于开放CPU中断 中断优先级寄存器IP

    18、中的PADC位(D5位)用于设置A/D中断的优先级 在中断服务程序中,要使用软件将A/D中断标志位ADC_FLAG(也是A/D转换结束标志位)清0。STC系列单片机技术应用2、STC15F2K60S2单片机ADC模块的使用编程要点打开ADC电源,第一次使用时要打开内部模拟电源(设置ADC_CONTR)。适当延时,等内部模拟电源稳定。一般延时1ms以内即可。设置P1口中的相应口线作为A/D转换通道(设置P1ASF寄存器)。STC系列单片机技术应用选择ADC通道(设置ADC_CONTR中的CHS2CHS0)。根据需要设置转换结果存储格式(设置CLK_DIV中的ADRJ位)。查询A/D转换结束标志A

    19、DC_FLAG,判断A/D转换是否完成,若完成,则读出结果(结果保存在ADC_RES和ADC_RESL寄存器中),并进行数据处理。STC系列单片机技术应用 读取转换结果注意:如果是多通道模拟量进行转换,则更换A/D转换通道后要适当延时,使输入电压稳定,延时量取20s200s即可,与输入电压源的内阻有关。如果输入电压信号源的内阻在10K以下,可不加延时。如果是单通道模拟量转换,则不需要更换A/D转换通道,也就不需要加延时。STC系列单片机技术应用 若采用中断方式,还需进行中断设置(EADC置1,EA置1)。在中断服务程序中读取ADC转换结果,并将ADC中断请求标志ADC_FLAG清零。STC系列

    20、单片机技术应用8.4.2 8.4.2 片上片上A/DA/D转换器的使用转换器的使用例例1 1 用STC15F2K60S2单片机P1.2口作为模拟输入端,实现A/D转换。程序设计方法:1、设置ADRJ=0 ANL CLK_DIV,#1101 1111B2、打开A/D转换电源 ORL ADC_CONTR,#80H3、选择P1.2口为模拟输入端4、设置转换周期,选择通道5、延时1ms,启动A/D转换6、检测A/D转换是否结束7、如果转换结束,清除标志,停止A/D转换8、读取A/D转换结果STC系列单片机技术应用ADC_CONTR EQU 0BCHADC_RES EQU 0BDHP1ASF EQU 9

    21、DHCLK_DIV EQU 97HGET_ADG:ANL CLK_DIV,#0DFH ORL ADC_CONTR,#80H MOV A,#0000 0100B ORL P1ASF,A MOV ADC_CONTR,#1110 0010B ACALL DELL1MS MOV ADC_RES,#0 ORL ADC_CONTR,#0000 1000BNOPWAIT_AD:MOV A,#0001 0000BANL A,ADC_CONTRJZ WAIT_ADANL ADC_CONTR,#1110 0111BMOV A,ADC_RESRET1、设置ADRJ=0 2、打开A/D转换电源 3、选择P1.2口为模

    22、拟输入端4、设置转换周期,选择通道5、延时1ms,启动A/D转换,6、检测A/D转换是否结束7、如果转换结束,清除标志,停止A/D转换8、读取A/D转换结果STC系列单片机技术应用例例2 用STC15F2K60S2单片机的A/D转换通道(P1.2)扩展4个按键,要求编程实现按键扫描。程序段如下:程序段如下:KEY_IN:ACALLGet_ADC;读A/D转换值(键值)CJNEA,#00,JK1;键值比较判断识别 AJMPPK1;跳转到处理K1键JK1:CJNEA,#80H,JK2 AJMPPK2;跳转到处理K2键JK2:CJNEA,#0AAH,JK3 AJMPPK3;跳转到处理K3键JK3:CJNEA,#0C0H,EXT AJMPPK4;跳转到处理K4键EXT:RET

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:STC系列单片机技术应用课件.ppt
    链接地址:https://www.163wenku.com/p-3604784.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库