- 1、本文档共122页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* * 9.2.2 使用外部晶振的T1计数方式 ---参照教材43页、247页 可以使用RC0/T1OSO、RC1/TIOSI引脚上外接晶体(32.768KHz)作为计数脉冲输入--------TMR1所特有的特点; 这一特点非常适合当系统处于休眠(SLEEP)状态,主振荡器停振时,T1可以依靠RC0/T1OSO、RC1/TIOSI引脚上外接晶体而独立工作(如RTC系统)。 如果使用32.768KHz的晶体,非常适合T1做RTC(实时时钟)系统。因为32.768KHz的频率将计数器分频后可以方便的产生“秒脉冲”。 当启用“自带振荡器”模式时,RC0、RC1将自动的设定为“输入模式”,此时的TRISC的值被忽略! * * 使用RC0/T1OSO、RC1/TIOSI引脚上外接晶体(32.768KHz)作为计数脉冲输入; T1设定为外计数方式; 有关T1做RTC系统的介绍将在后续的章节中介绍。 G3 T1OSCEN RC0 / T1OSO RC1 / T1OSI C1 C2 G2 32.768KHz晶体 * * 采用32.768KHz外接晶体时TMR1的特定初值与溢出时间的关系参照表 TMR1的16位初值 溢出(定时)时间(S) 8000H 1 C000H 0.5 E000H 0.25 F000H 0.125 * * 验证: T =(10000H-8000H)×T计数 =8000H ×1/32768 =32768/32768 =1 * * 关于RC0、RC1第二功能的“非易失性”问题 ----参照教材45页 一旦TMR1使能了“低功耗可编程振荡器”模式后,端口RC0、RC1就不能再做I/O端口了(即时是RA、RE单片机停电,这种功能也是一直保留)。 我们将端口的这一特点称之为“端口第二功能的非易失性”问题。注意:并不是所有的第二功能都是“非易失性”的,对于PIC18而言是有T1的“低功耗可编程振荡器” 时的RC0、RC1和使能ADC模块 “模拟通道”的RA、RE端口。 一旦发现RC0、RC1端口做I/O操作不正常时,就要在程序的初始化部分中增加“不使能”该第二功能的指令以恢复端口的I/O功能。方法如下: MOVLW 0X00 MOVWF T1CON * * 9.3 定时器0和定时器1的C编程 尽管C编译器不能直接访问通用寄存器,但是C编译器却可以直接访问SFR。 在C语言格式编程中,实际上就是完成对相关SFR的设定。 * * 9.3.1 用C访问定时器 在C18中,由于使用了头文件P18Fxxx.h,所以可以直接访问与定时器相关的SFR,它们是: T0COM; TMR0H、TMR0L; TMR0ON、TMR0IF(位地址)等; 在PIC18中,所有的SFR都可以按位寻址。 * * 9.3.2 TMRx 用作定时器的编程 使用定时器来产生一个延时操作,其影响延时的因数有下列4种因素: 系统晶体的震荡频率fosc,因为计数器的 f计数=fosc/4; 预分频器的使用和分频比; 计数器中的预装初值; C编译器。 由于C语言的使用,会对延时产生很大的“不确定性”,因此,一个有经验的编程者往往利用示波器来“监视”实际的延时时间。 * * 编制一个C18程序,带延时的不断翻转PORTB口的所有位,要求使用T0的16位模式,不用预分频器。 #include p18f458.h void T0Delay(void); void main (void) { TRISB=0; while(1) { PORTB=0x55; T0Delay(); PORTB=0xaa; T0Delay(void); } } * * void T0Delay(void) { T0CON=0x08; TMR0H=0x35; TMR0L=0x00; TMR0bits.TMR0ON=1; while(INTCONbits.TMR0IF==0); INTCONbits.TMR0IF=0; T0CONbits.TMR0ON=0; } * * 编制一个C18程序,每个50ms翻转一次PORTB.4位,使用T0的16位模式、预分频器的分频比为1:4。 设fosc=10MHz。 解: 系统频率的周期T=1/F=0.1μs; 计算使用预分频器后的T计值: T计=0.1μs×4×4=1.6μs 16位定时器初值的计算: TC=65536 -(50ms/1.6μs) =65536-31250=3428
您可能关注的文档
- PHP+MySQL网站开发技术项目式教程3-1 数据库访问层框架设计-函数.ppt
- PHP+MySQL网站开发技术项目式教程3-1 数据库访问层框架设计-流程控制语句.ppt
- PHP+MySQL网站开发技术项目式教程3-1 数据库访问层框架设计-数组.ppt
- PHP+MySQL网站开发技术项目式教程3-2 数据库访问层的设计与实现.ppt
- PHP+MySQL网站开发技术项目式教程4-1 用户注册功能的设计与实现.ppt
- PHP+MySQL网站开发技术项目式教程4-2用户登录和编辑功能的设计和实现.ppt
- PHP+MySQL网站开发技术项目式教程4-3 用户头像上传功能的设计与实现.ppt
- PHP+MySQL网站开发技术项目式教程5-2 发帖与回帖功能的设计与实现.ppt
- PHP+MySQL网站开发技术项目式教程6-1 免登录功能的设计与实现.ppt
- PHP+MySQL网站开发技术项目式教程6-2 密码功能的设计与实现.ppt
- DB44_T 2611-2025 城市排水管网有毒有害气体监测与风险分级管理技术标准.pdf
- DB44_T 2612-2025 竞赛类科普活动策划与实施服务规范.pdf
- DB43_T 2947-2024 烟草种子质量控制规程.pdf
- DB37_T 4836-2025 煤矿风量实时监测技术要求.pdf
- 叉车防撞系统,全球前22强生产商排名及市场份额(by QYResearch).docx
- 超滤膜,全球前18强生产商排名及市场份额(by QYResearch).docx
- DB62T 4172-2020 玉米品种 酒623规范.pdf
- DB62T 4160-2020 在用真空绝热深冷压力容器综合性能在线检测方法.pdf
- DB62T 4164-2020 辣椒品种 酒椒1号.pdf
- DB62T 4133-2020 公路隧道地质超前预报机械能无损探测技术规程.pdf
文档评论(0)