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

📄 tic832.c

📁 Example codes for ADuC8xx CPU family
💻 C
字号:
//********************************************************************
//
// Author        : ADI 
//
// Date          : December 2001
//
// File          : tic832.c
//
// Hardware      : ADuC832
//
// Description   : This program demonstrates the TIC functions TicCfg(), TicGo(), TicVal(), TicHr(),
//				 TicMin(), TicSec() and TicHth().
//		
//********************************************************************


#include<ADuC832.h>			//SFR definition file.
#include"../../lib832.h"  	//Function and variable declaration file.
#include<stdio.h>

char	cTFlag;		//Flag set by TIC interupt.

void ticint(void) interrupt 10 using 0
	{
	cTFlag = 1;
	T0 = !T0;
//	TIMECON &= 0x0fb;	//Clear interupt flag.
	}

void main(void)
	{
	UrtCfg(0x03,0x8508);	//UrtCfg configures UART (2400 baud).
	PllWcd(0);		//PllWcd writes CD bits (2).

	printf("\n\nADuC831 TIC Demonstration Program\n");
	printf("=======================================\n");
	TicCfg(0);
 	printf("255 hour mode selected and ");
 	TicGo(23, 59, 55, 00);
	printf("time set to 23h59m55,00\n");
	printf("\tTime now: %02bdh%02bdm",TicHr(),TicMin());
	printf("%02bd,%02bd.\n",TicSec(),TicHth());
	printf("Wait for 10.5s\n");
	PllDly(10500);
	printf("\tTime now: %02bdh%02bdm",TicHr(),TicMin());
	printf("%02bd,%02bd.\n",TicSec(),TicHth());
 	TicVal(10,1);
	printf("Interupt enabled at 10 counts of SEC counter. ");
 	cTFlag = 0;
	printf("Interupt flag set to 0. Wait 7s.\n");
	PllDly(7000);
	printf("\tInterupt flag is now %bd.",cTFlag); 
	printf("\tTime now: %02bdh%02bdm",TicHr(),TicMin());
	printf("%02bd,%02bd.\n",TicSec(),TicHth());
	printf("Wait 4s for interupt.\n"); 
	PllDly(4000);
	printf("\tInterupt flag is now %bd.",cTFlag); 
	printf("\tTime now: %02bdh%02bdm",TicHr(),TicMin());
	printf("%02bd,%02bd.\n",TicSec(),TicHth());
	TicCfg(1);
	printf("Timer stop.\n");
	printf("\tTime now: %02bdh%02bdm",TicHr(),TicMin());
	printf("%02bd,%02bd.\n",TicSec(),TicHth());
	printf("After further 4s delay time stays 0.\n");
	PllDly(4000);
	printf("\tTime now: %02bdh%02bdm",TicHr(),TicMin());
	printf("%02bd,%02bd.\n",TicSec(),TicHth());
	printf("\n\n\tThe End.\n\n\n");
	while(1)
		{
 	}	}

⌨️ 快捷键说明

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