找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2622|回复: 2
收起左侧

单片机定时/计数器T0,工作方式2 io输出0.4ms的方波程序怎么写?

[复制链接]
ID:467957 发表于 2019-1-14 15:19 | 显示全部楼层 |阅读模式
请教大神,利用定时/计数器T0,采用工作方式2,使P1.0引脚输出0.4ms的方波。设系统时钟频率为12Mhz?
回复

使用道具 举报

ID:149389 发表于 2019-1-14 17:02 | 显示全部楼层
本帖最后由 weidoit 于 2019-1-14 20:48 编辑
  1. <blockquote>#include <reg51.h>
复制代码
Keil里仿真,在“LED=!LED;”行下断点,观察跑表807,1207,1607,2007,2407,2807,,每400uS反转一次,

回复

使用道具 举报

ID:213173 发表于 2019-1-14 21:18 | 显示全部楼层
无标题.jpg

#include<reg52.h>

sbit OUT=P1^0;
unsigned char num=0;

void Timer0Init()        //200微秒@12.000MHz
{

        TMOD= 0x02;                //设置定时器工作模式
        TL0 = 0x38;                //设置定时初值
        TH0 = 0x38;                //设置定时重载值
        TR0 = 1;                     //定时器0开始计时
        EA=1;                        //开总中断
        ET0=1;                        //开定时器0中断       
}

void main()
{
        Timer0Init();//初始化定时器
        while(1);
}

void timer0() interrupt 1//定时器0中断
{
        num++;
        if(num>=2)
        {
                num=0;
                OUT=~OUT;
        }
}


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表