⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 timer2.c

📁 NorFlash bootloader(SPANSION_S71WS256ND0) for I.MX27(freescale).
💻 C
字号:
#include <stdio.h>
#include "common.h"

#define TCTL2		0x10004000
#define TPRER2		0x10004004
#define TCMP2		0x10004008
#define TCR2		0x1000400C
#define TCN2		0x10004010
#define TSTAT2		0x10004014

void GPT2Init (void)
{
	*(volatile P_U32) TCTL2	= 0x00000000;		// disable timer1
	*(volatile P_U32) TSTAT2 = 0x00000000;		// clear any previous compare event
	*(volatile P_U32) TPRER2 = 0x00000000;		// Set timer prescaler

	*(volatile P_U32) TCTL2	= 0x1;
	*(volatile P_U32) TCTL2	|= 0x00008000;			// set SWR
	*(volatile P_U32) TCTL2	= 0x00000002;		// disable timer1

	*(volatile P_U32) TCMP2	= 	9-1;	// 1/8.3125M * 9 = 1.08us

	*(volatile P_U32) TCTL2	= 	0x00000003;		// bit 4 : enable timer interrupt
														// bit 3..1 : 100 Clock source = 32KHz
														// bit 0 : enable timer
}

void Delay1us (void)
{
	U32 i=1;
	while (i)
		if (*(volatile P_U32) TSTAT2 & 0x1)
		{
			*(volatile P_U32) TSTAT2 &= ~0x1;
			i--;
		}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -