外部中断与定时器中断——T2定时器
来源:互联网 发布:杭州 大数据公司 编辑:程序博客网 时间:2024/06/06 00:33
问题描述:
若系统时钟频率为12MHz,编写软件实现:按一下K键,产生一次外部中断1中断信号,启动T2定时,使P1.1输出周期为2秒的方波。
解决方案:
假设方波信号的占空比为50%,时钟频率为12MHZ,则机器周期为1us,那么选用T2定时,采用工作方式1,2^16=65536us<1s,
采取定时10ms,中断100次,形成1s时间。T2计算初值X=65536-10000=55536=D8F0。
采用T2定时器,应留意与T0和T1定时器的差别,再设置相应寄存器的位数和状态,即可解决。
C语言:
#include <reg52.h>#define uchar unsigned charuchar COUNT=0X64; //软件记数sbit P11=P1^1;sfr T2MOD=0XC9;sfr IPH=0XB7;void main(){ //设置相应寄存器的状态 SP=0X60; T2MOD=0X00; T2CON=0X00; TH2=0XD8; TR2=0; TL2=0X0F0; TH2=0XD8; RCAP2H=0XD8; RCAP2L=0X0F0; IE=0XA4; IP=0X04; while(1) { }}void timer1int() interrupt 5{ TF2=0; switch(COUNT) { case 0: { P11=!P11; COUNT=0X64; break; } default: COUNT--; break; }}void int1_int() interrupt 2{ TR2=1;}
阅读全文
0 0
- 外部中断与定时器中断——T2定时器
- 外部中断与定时器中断实验
- 新唐Cortex—M0学习之外部中断与定时器中断
- 嵌入式学习--step12 外部中断与定时器中断学习
- 实验二:外部中断与定时器/计数器中断实验
- 外部中断与定时器中断实验(修改)
- 定时器与中断概念
- 中断与内核定时器
- 中断与定时器
- 中断与内核定时器
- 中断与内核定时器
- linux中断与定时器
- 中断与定时器
- 定时器中断
- 定时器中断
- 定时器中断
- 中断定时器
- 定时器中断
- Spark2.2 宽窄依赖剖析图解
- block 的一些理解
- 如何克隆一个json对象
- Android Studio FATAL EXCEPTION: GLThread 229,createContext failed: EGL_SUCCESS
- 如何成为一个技术全面的架构师
- 外部中断与定时器中断——T2定时器
- Linux修改主机名
- Angular1.x安装与配置
- Centos7 安装dubbo-admin2.8.4
- 如何判断一个对象是不是为空
- JPA @Id 和 @GeneratedValue 注解详解
- 代码覆盖率工具 Istanbul 入门教程
- CSS中flex布局 弹性盒模型
- 一维Otsu算法的原理与实现