版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第8章 PWM定时器、 实时时钟 及看门狗定时器本章重点本章重点:v S3C2410A PWM(脉宽调制)定时器概述;PWM定时器操作;PWM定时器特殊功能寄存器;PWM定时器应用举例。在PWM定时器操作中,详细讲述了自动重装与双缓冲、手动更新、脉宽调制、输出电平控制、死区发生器、DMA请求模式等内容。v S3C2410A RTC(实时时钟)概述;RTC组成与操作;RTC特殊功能寄存器;RTC程序举例。在RTC组成与操作中,详细讲述了闰年产生器、读/写寄存器、后备电池、报警功能、节拍时间中断等内容。v S3C2410A看门狗定时器(WDT)概述;看门狗定时器操作;看门狗定时器特殊功能寄存器;看
2、门狗定时器程序举例。2022-4-2438.1 PWM定时器v8.1.1 PWM定时器概述v 定时器模块参见图8.1,S3C2410A有5个16位的定时器。定时器03带有脉宽调制(Pulse Width Modulation,PWM)功能,这4个定时器的输出信号连接到S3C2410A的TOUT0TOUT3引脚,输出波形的频率和占空比可编程控制。定时器4是一个内部定时器,没有PWM功能,输出信号不连接到S3C2410A引脚。定时器0有一个死区发生器(dead zone generator),能够用于对大电流设备进行控制。2022-4-244定时器0和1共用一个8位预分频器(prescaler),
3、定时器24共用另一个8位预分频器。定时器计数时钟信号来源于时钟分频器(clock divider),通过编程能够选择时钟分频器的1/2、1/4、1/8、1/16分频信号或选择使用TCLK0、TCLK1。8位预分频器是可编程的,根据保存在定时器配置寄存器TCFG0中的预分频值,对PCLK分频。定时器配置寄存器TCFG1为每个定时器选择时钟分频信号(1/2、1/4、1/8、1/16)或选择TCLK0、TCLK1。2022-4-245vS3C2410A片内定时器,支持自动重装模式v(一次定时结束,以重装值开始下一次定时)一次脉冲模式v(一次定时结束,停止定时器)。v定时器模块图见图8.1。2022-
4、4-2462022-4-247v 定时器寄存器组成和定时器主要操作过程v 除了定时器4,定时器03中每个定时器内部,都有下述寄存器。 定时器计数缓冲器寄存器TCNTBn,程序可读写,用于保存定时器计数初值。在手动更新(manual update)允许时,将这个初值送到定时器计数寄存器TCNTn,在TCNTn中进行递减计数操作。当自动重装(auto reload)允许时,一次计数结束(TCNTn递减计数达到0时),自动将TCNTBn的值装到TCNTn。 TCNTBn值的不同,决定了输出信号TOUTn频率的不同。2022-4-248 定时器比较缓冲器寄存器TCMPBn,程序可读写,用于保存定时器比
5、较初值。在手动更新允许时,将这个初值送到定时器比较寄存器TCMPn。当执行计数的TCNTn的值与TCMPn的值相等时,计数器输出信号TOUTn电平由低变高。当自动重装允许时,一次计数结束(TCNTn递减计数达到0时),自动将TCMPBn的值装到TCMPn。 TCMPBn的值,被用作脉宽调制,即在输出信号TOUTn频率不变时,对每个输出脉冲低电平、高电平占用时间的调制,也称为输出信号占空比的调制。2022-4-249 定时器计数寄存器TCNTn,是内部寄存器,程序不可读写。TCNTn也称为减法计数器、倒计数器或递减计数器。定时器的计数操作在TCNTn中执行。TCNTn计数时钟信号来源于时钟分频器
6、。当TCNTn一次计数结束,或产生DMA请求,或产生中断请求,由编程决定。当一次计数结束,如果自动重装允许时,TCNTBn值送TCNTn、TCMPBn值送TCMPn,开始下一次计数;如果自动重装禁止,则计数器停止。2022-4-2410 定时器比较寄存器TCMPn,是内部寄存器,程序不可读写。在计数过程中,一旦TCNTn的值与TCMPn的值相等,计数器输出TOUTn电平由低变高。 定时器计数观察寄存器TCNTOn,程序可读写。在计数过程中,如果希望读出TCNTn的值,只能通过读出TCNTOn实现,不能直接读TCNTn的值。2022-4-2411v要使定时器03运行,主要操作包括:通过编程先送出
7、计数值到TCNTBn,送出比较值(脉宽调制值)到TCMPBn。当设置为手动更新允许时,定时器自动将TCNTBn、TCMPBn的内容送TCNTn、TCMPn。然后设置启动定时器(TCON寄存器对应的start/stop位为1),则TCNTn开始递减计数。计数过程中当TCNTn的值与TCMPn的值相等时,输出信号TOUTn的电平由低变高。如果允许自动重装,当TCNTn计数达到0时,进行重装,同时产生中断请求或DMA请求,再开始下一次定时。如果不允许自动重装,则定时器停止。2022-4-2412v 在计数过程中,可以给TCNTBn和TCMPBn装入一个新的值,在自动重装方式,新的值只能用于下一次定时
8、,对当前正在进行的定时操作,不产生影响。v 定时器4除了没有TCMPB4和TCMP4寄存器外,其他寄存器与定时器03相同。定时器4不能进行脉宽调制,只能通过对TCNTB4设置不同的值,改变输出信号的频率。2022-4-2413v PWM定时器用到的S3C2410A引脚信号PWM定时器输出信号,作为S3C2410A的TOUT0TOUT3引脚信号。可以将S3C2410A引脚引入的时钟源TCLK1、TCLK0,作为定时器的时钟信号。2022-4-24148.1.2 PWM定时器操作v 基本定时操作 基本定时操作见图8.2(P268)。v 自动重装与双缓冲S3C2410A PWM定时器有双缓冲功能,也
9、就是说有两个缓冲器,定时器计数缓冲器寄存器TCNTBn和定时器比较缓冲器寄存器TCMPBn。 图8.3(P269)是双缓冲功能的一个举例,图中省略了TCMPBn寄存器的值。2022-4-2415v 定时器初始使用手动更新位和反相器位 当TCNTn在递减计数过程中,一旦达到0时,如果定时器控制寄存器TCON允许该定时器自动重装,会出现自动重装操作。 v 定时器操作举例 定时器操作举例见图8.4(P270)。v 脉宽调制脉宽调制(Pulse Width Modulation,PWM)功能通过使用TCMPBn寄存器来实现,而PWM的频率由TCNTBn寄存器的值确定。 图8.5(P271)通过举例,表
10、明了TCMPBn的值越小,TOUTn输出高电平的时间越短,输出低电平的时间越长;而TCMPBn的值越大,TOUTn输出高电平的时间越长,输出低电平的时间越短。 2022-4-2416v 输出电平控制如图8.6(P271)所示,反相器设定为off或on,其输出信号TOUTn的波形高低电平正好相反。v 死区发生器(dead zone generator)使用PWM对大电流设备进行控制时,常常用到死区(dead zone)功能。死区功能在切断一个开关设备和接通另一个开关设备之间,允许插入一个时间间隙。在这个时间间隙,禁止两个开关设备同时被接通,即使接通非常短的时间也不允许。当定时器死区功能被允许时,
11、输出波形见图8.7(P272)。2022-4-2417v DMA请求模式定时器在每段指定时间后(一次定时结束)能够产生DMA请求信号。 DMA模式配置和DMA/中断操作见表8-1。图8.8(P272)表明,定时器3一旦设置为DMA模式,将不产生中断请求。定时器3的DMA请求和响应时间关系,也在图8.8中给出。2022-4-24188.1.3 PWM定时器特殊功能寄存器v 定时器配置寄存器0定时器配置寄存器0,即TCFG0,用于对两个8位预分频器配置,并且设置死区长度。其地址为0 x51000000,可读写,Reset值为0 x00000000,具体含义见表8-2。 定时器输入时钟频率 = PC
12、LK/prescaler值+1/divider值v prescaler值 = 0255v divider值 = 2、4、8、162022-4-2419v 定时器配置寄存器1 定时器配置寄存器1,即TCFG1,用于选择DMA请求通道和选择各定时器MUX(多路开关)的输入。其地址为0 x51000004,可读写,Reset值为0 x00000000,具体含义见表8-3。2022-4-2420v 定时器控制寄存器 定时器控制寄存器,即TCON,用于对各定时器的自动重装on/off、手动更新与否、启动/停止和输出反相器on/off进行设置,其地址为0 x51000008,可读写,Reset值为0 x0
13、0000000,具体含义见表8-4。2022-4-2421v 定时器计数缓冲器寄存器、比较缓冲器寄存器和计数观察寄存器 定时器04都有计数缓冲器寄存器TCNTBn和计数观察寄存器TCNTOn,定时器4没有比较缓冲器寄存器,定时器03有比较缓冲器寄存器TCMPBn。除了地址不同以外,各定时器对应的寄存器含义相同,如表8-5和表8-6所示。2022-4-24228.1.4 PWM定时器应用举例v【例8.1】当PCLK=66.5MHz时,选择不同的时钟分频(1/2、1/4、1/8、1/16)输入,分别计算定时器最小分辨率、最大分辨率及最大定时区间。v 参见8.1.3节中定时器配置寄存器TCFG0的内
14、容,根据定时器输入时钟频率计算式,计算结果见表8-7。2022-4-2423v 最小分辨率:定时器输入时钟的频率 =PCLK/prescaler值+1/divider值 =66.5(MHz)/0+1/2 =33.2500(MHz)一个计数脉冲的时间 =1/33.2500(MHz)=0.0300(s)2022-4-2424v 最大分辨率: 定时器输入时钟的频率=PCLK/255+1/2 =66.5(MHz)/256/2 =129.8828(KHz)一个计数脉冲的时间=1/129.8828(KHz) =7.6992(s)2022-4-2425v 最大定时区间: 由于TCNTBn=65535,计数到
15、0共65536个计数脉冲,所以 655367.6992(s)=0.5045(sec)。2022-4-2426v【例8.2】下面给出了使用C语言编写的,对定时器0/1/2/3测试的程序片段,假定程序中用到的寄存器地址在别的程序中已定义过,定时器产生中断后的处理程序这里没有列出。v (见参考书)2022-4-24278.2 实时时钟v8.2.1 RTC概述S3C2410A芯片内部有一个实时时钟(Real Time Clock,RTC)模块,当系统电源闭合时,使用系统提供的电源,当系统电源切断时,由后备电池为RTC模块供电。无论系统加电或切断电源,RTC都在运行;可以对RTC设定报警时间。使用STR
16、BLDRB指令,可以在RTC和CPU之间传送8位BCD码的数据,包括秒、分、时、日、星期、月、年。RTC模块使用32.768KHz的外部晶振工作。 2022-4-2428RTC作为系统时钟使用,也能够执行报警功能、产生节拍时间中断。主要特点有: 使用BCD码表示秒、分、时、日、星期、月、年; 有闰年产生器; 报警功能:有报警中断或从Power_OFF模式中唤醒功能; 解决了2000年问题; 独立的电源引脚(RTCVDD); 支持毫秒级节拍时间中断,可用于RTOS内核; 支持秒进位复位功能。2022-4-2429v RTC用到的S3C2410A引脚信号有: 外接晶振引脚信号XTIrtc、XTOr
17、tc和外接电源引脚RTCVDD(1.8V)。2022-4-24308.2.2 RTC组成与操作vRTC组成框图见图8.9。2022-4-2431 v 闰年产生器 闰年产生器基于从BCDDATE、BCDMON、BCDYEAR来的数据,确定每个月的最后一天是28、29、30或31日。一个8位的计数器只能表示2位BCD数字,因此它不能确定00(年的最低2位数字)年是闰年或不是闰年。为了解决这一问题,在S3C2410A的RTC模块中有一个硬件逻辑支持2000年作为闰年。要注意1900年不是闰年而2000年是闰年。因此在S3C2410A中,2位BCD码的00代表2000年,而不是1900年。 2022-
18、4-2432v 读/写寄存器 RTCCON控制寄存器位0必须被设置为1,然后才可以写RTC模块中的寄存器。如果这一位被设置为0,不能写入RTC模块中的寄存器。 2022-4-2433v 后备电池 当系统电源切断时,通过RTC引脚提供电源到RTC模块,RTC逻辑由后备电池驱动。这时CPU接口与RTC的逻辑被阻塞,后备电池仅仅驱动晶振电路和BCD计数器,使得BCD计数器功耗为最小。 2022-4-2434v 报警功能 在Power_OFF模式或Normal操作模式,RTC在规定的时间产生一个报警信号。在Normal操作模式,报警中断ALMINT被激活;在Power_OFF模式,像ALMINT一样,
19、电源管理唤醒信号PMWKUP也能够被激活。RTC报警控制寄存器RTCALM,确定报警允许/禁止和报警时间设定条件。2022-4-2435v 节拍时间(tick time)中断 RTC节拍时间被用作中断请求。节拍时间计数寄存器TICNT有1位中断允许位和7位节拍时间计数值位。计数值达到0时,节拍时间中断出现。中断周期计算如下: Period=(n+1)/128(second) 式中:n为节拍时间计数值,范围为1127。2022-4-2436v 进位复位功能(round reset function) 进位复位功能由RTC进位复位寄存器RTCRST来实现。产生秒进位的边界(30、40或50秒)可以
20、选择,在进位复位后,秒的值被设置为0。例如,如果当前时间是 23:37:47,并且设置进位边界为40秒,则进位复位功能改变当前时间为23:38:00。2022-4-2437v 32.768KHz外接晶振连接举例 图8.10是使用32.768KHz晶振作为RTC单元晶振电路的一个实例。2022-4-24388.2.3 RTC特殊功能寄存器v RTC控制寄存器RTC控制寄存器RTCCON由4位组成,位0即RTCEN用作控制禁止/允许对RTC寄存器的写入,而其他3位CLKSEL、CNTSEL、CLKRST用于测试。RTCCON寄存器地址、Reset值及各位含义见表8-9和表8-9 2022-4-24
21、39v RTC 报警控制和报警数据寄存器RTC报警控制寄存器RTCALM,确定允许/禁止报警和报警时间。在Power_OFF模式,通过ALMINT和PMWKUP,RTCALM寄存器产生报警信号,参见图8.9。在Normal操作模式,仅仅通过ALMINT产生报警信号。RTC报警控制和报警数据寄存器地址及Reset值见表8-10,寄存器各位的含义见表8-11。2022-4-2440v RTC进位复位寄存器 RTC进位复位寄存器RTCRST,Reset值为0 x0,地址及各位含义见表8-12。 节拍时间计数寄存器 节拍时间计数寄存器TICNT,Reset值为0 x00,地址及各位含义见表8-13。
22、秒、分、时、日、星期、月、年数据寄存器 可以对这些寄存器设置当前时间和日期,读取当前时间和日期。 这些寄存器使用BCD值,Reset值未定义,地址及各位含义见表8-14。2022-4-24418.2.4 RTC程序举例v【例8.3】下面给出了使用C语言编写的读RTC日期和时间的程序片段。v (见参考书P283-284)2022-4-24428.3 看门狗定时器v8.3.1 看门狗定时器概述 看门狗定时器(Watch Dog Timer,WDT)简称看门狗,属于定时器中的一种。v 一般看门狗定时器概述一般看门狗定时器,通常可以由程序控制允许/禁止看门狗定时器,允许即启动定时器,禁止即停止定时器。
23、看门狗定时器内部最少有一个计数寄存器,执行计数操作。使用时应该由程序给这个计数寄存器设定一个计数初值,然后允许看门狗定时器(启动),来一个计数脉冲,计数寄存器计一次数。对于减法计数器,当减到0时,产生一个定时输出信号,通常把这个定时输出信号作为内部Reset信号使用,重新启动控制器(指CPU中的控制器)。2022-4-2443v简单地说,使用看门狗定时器,目的是当运行的程序受到了干扰,发生了死循环,或者由于运行的程序内部事先未发现的错误,导致程序不是按照程序员预定的运行路线运行时,看门狗定时器能够重新启动控制器。2022-4-2444v S3C2410A看门狗定时器概述S3C2410A片内有一
24、个看门狗定时器模块,当控制器的操作受到像噪音或系统错误的干扰时,看门狗定时器能够重新启动控制器操作;这个定时器也能被用作一个通常的16位间隔时间定时器,产生中断请求。看门狗定时器用于重启控制器时,在看门狗定时器计数寄存器WTCNT中执行计数操作,当允许看门狗定时器时(WTCON5=1),每来一个计数脉冲,减1。当计数值减到0时,能够产生一个长度为128个PCLK时间长度的复位(Reset)信号。2022-4-24458.3.2 看门狗定时器操作v 看门狗定时器功能框图如图8.11所示。2022-4-2446看门狗定时器用PCLK作为它唯一的源时钟。为了产生相应的看门狗定时器时钟,PCLK先被预分频,之后再次被分频(称为时钟分频)。预分频值和时钟分频值的选择,在看门狗定时器的控制寄存器WTCON中被指定。合法的预分频值的范围从0到255。时钟分频值可以选
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 儿科病房小儿肾病综合征护理细则
- 2025版哮喘症状剖析及护理措施
- 音乐教学设计核心框架
- 产科破水后产程监测流程
- 房地产新员工培训
- 大学生用药科普
- 2025版疟疾常见症状及护理建议培训
- 2025年高考考务人员培训监考员学习项目试题及答案
- 2025年项部管理人员安全教育培训试题及参考答案
- 2025年材料员考试题库及参考答案
- 输变电工程建设现行主要质量管理制度、施工与验收质量标准目录-2026年2月版-
- 培训机构续费沟通
- 《往事依依》课堂实录
- 2025年中国大唐集团校园招聘面试指南及模拟题解析
- 软笔书法课件横的写法
- 其他心血管疾病
- 新能源车间安全操作规程与培训方案
- SYH公司爬坡生产:产能学习曲线构建与应用探索
- 企业微信使用培训课件
- 微型消防站培训知识课件
- 水质采样监测培训课件
评论
0/150
提交评论