松翰单片机_SN8F570310——TIM

SN8F570310——TIM


 

 

 


 

 

 

 

 


 

 

 

 


 

 

 

 


 

 

 

 

 


 

 

 

 

 


 

 

 

 

 

 

 

 

 

 

 


 

            TIM2

 


 

 

 

 

 


 

 

 

 

 


 

 

 

 


 

 

 

 

 


 

 

 

 

 


 

 

 


 

复制代码
#include "Equ.h"

/*
        硬件:
                    P2.4

*/

void InitT0(void)
{

    P2M |= 0X10;   //输出模式
    P2  |= 0X10;   //输出高平    
    
    TCON0 = 0x40;            //F EXT0 / 8       T0外部8分频
    TMOD  = 0x06 ;            //8位重装        F Timer0 = Fosc / T0RATE;        
// T0 inital value = 256 - (50us*32MHz/8) = 0X38  ====    256 - (定时 / 每位时间(1/(32MHZ/8))) = 装载位数
    TH0 = 0x38;
    TL0 = 0x38;

    TR0 = 1 ;                    //Enable T0
    ET0 = 1 ;                    //Enable T0 INT
    
}

void T0Interrupt(void) interrupt ISRTimer0
{
        if(tim0 == 0){
            P2  &= ~0X10;   //输出低平
            tim0 = 1;
        }else{
            P2  |= 0X10;   //输出高平
            tim0 = 0;
        }                
}
复制代码

 

 

测试:


 

 

50ms

 

 

 

笔记:


 

1.频率与时间:

  Hz —— s

  KHz —— ms

  MHz —— us

2.八位自动装载时间计算:

装载位数 = 256 - (定时 / 每位时间(1/(32MHZ/8))) 

 

 

 

 

 

 

 

 

 

 

 

 

posted @   panda_w  阅读(333)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示