Uso de temporizadores de interrupção

interromper

No processo de execução de tarefas, o microcontrolador precisa lidar com outros assuntos urgentes e precisa interromper as tarefas atualmente em execução, portanto, precisa usar o serviço de interrupção.
As interrupções são divididas em interrupções de temporizador/contador, interrupções externas e interrupções de porta serial de acordo com seus tipos. Este artigo explica principalmente a interrupção do timer.

cronômetro

Abaixo, apresentamos diretamente o código para explicação.
#include<STC15F2K60S2.H>//Operação geral, importar arquivo de cabeçalho

tabulação de caracteres não assinados[]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90,0XBF,0XFF,0XC6};//tubo digital

unsigned char tt;//definição de variável
unsigned char num;
void Timer0Init(void);

void main(void)
{

P2=0XA0;P0=0X00;P2=0X80;P0=0XFF;  
P2=0XC0;P0=0X04;P2=0XFF;P0=0XFF;   //数码管初始化程序

Timer0Init();//定时器初始化
EA=1;ET0=1;//打开总中断,打开定时器0,在这里,EA、ET0相当于一个开关,EA相当于一个总开关,ET0相当于一个小开关,这两个开关不打开,定时器就不会响应。

while(1)//这里该写什么写什么
{	
}

}

void Timer0Init(void) //5 [email protected], aqui é gerado no programa de programação, defina o tempo necessário no programa de programação e o dispositivo de programação irá gerá-lo automaticamente. O intervalo é de cerca de 0-6,5535ms
{ AUXR |= 0x80; //Modo 1T do relógio do temporizador // AUXR = AUXR|0x80; 0010 1010 | 1000 0000 =1010 1010 TMOD &= 0xF0; //Definir o modo do temporizador TL0 = 0x00; //Definir o valor inicial do tempo TH0 = 0x28; // Definir valor inicial de temporização TF0 = 0; //limpar sinalizador TF0 TR0 = 1; //timer 0 inicia a contagem }






void tm0_isr() interrupção 1//Função de serviço de interrupção, o nome da função é definido por você, seguido do número da interrupção, o número da interrupção deve corresponder à interrupção a ser usada.
{ tt++; if(tt = = 200) { tt=0; P0=tab[num]; num++;if(num = = 12)num=0; } } A figura acima mostra o número e a ordem de prioridade do serviço de interrupção, você mesmo pode consultá-la. Se você precisa entender o princípio, pode acessar https://editor.csdn.net/md/?articleId=112068955, revisão do MCU. Se tiver alguma dúvida, por favor envie uma mensagem privada.








insira a descrição da imagem aqui

—————————————————————————————————————————
Este artigo é puramente original, se houver alguma infração, favor entrar em contato para excluir, se houver algum erro, por favor, critique e corrija, obrigado a todos.

Acho que você gosta

Origin blog.csdn.net/G_Shengn/article/details/116068291
Recomendado
Clasificación