嗨,我试着用计时器。
我在柏树看到了1个例子。我已经使用了代码,但是我不能得到输出。LED持续发光。
请帮帮我。
这是密码
/----------------------------------------
//包含文件
/----------------------------------------
包括:
M8C.H>/部分特定常数和宏
包括:
/----------------------------------------
/c中断处理程序
/----------------------------------------
所有用户模块的“PSoAPI API”//PSoC API定义
中断处理程序
//函数名称:主
/ /
/描述:
//主要功能。执行系统初始化并无限循环。
/ /
/------------------------------------------
/ /
//参数:无
//返回:无。
/副作用:无。
/ /
/操作理论或程序:
// 1)启动用户模块
/ / 2无限循环
/ /
/------------------------------------------
/ /
无效
{
主/()/ /允许全局中断M8cEnababcIt;
//启用定时器中断并启动UM
time8Y11EnabeLeTin();
Time8Y11StIX();
//无限循环。仅在TimeR.ISR上进行处理。
}
而(1);//----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
//函数名称:Time8Y11IISRYC
/ /
/描述:
/C编写的Time8Y1用户模块中断服务程序。
//Time8Y1It.ASM文件中的yTime8Y11ISR子程序;
//将流程重定向到这个子例程。
/------------------------------------------
/ /
//参数:无
//返回:无。
/副作用:无。
/ /
/操作理论或程序:
//终端计数中断发生在0.5秒的间隔。
/PIN P2(0)的状态被确定并颠倒。
/ /
/ /
无效
{
Time8Y11IsRyC.()//读取PoT2和XOR,用0x01将状态从ON更改为OFF,反之亦然。PRT2DR ^=0x01;
}
以上来自于百度翻译
以下为原文
hi i am trying to use timers .
i have seen 1 example project in cypress. i've used that code, but i am unable to get the output. LED is continuously glowing.
please help me.
here is the code
//-------------------------------------------------------------------
// Include Files
//-------------------------------------------------------------------
#include
// part specific constants and macros
#include
//-------------------------------------------------------------------
// C Interrupt Handlers
//-------------------------------------------------------------------
"PSoCAPI.h" // PSoC API definitions for all User Modules #pragma
interrupt_handler Timer8_1_ISR_C //-----------------------------------------------------------------------------
// FUNCTION NAME: Main
//
// DESCRIPTION:
// Main function. Performs system initialization and loops infinitely.
//
//-----------------------------------------------------------------------------
//
// ARGUMENTS: None
// RETURNS: None.
// SIDE EFFECTS: None.
//
// THEORY of OPERATION or PROCEDURE:
// 1) Start the user modules
// 2) Loop Infinitely
//
//-----------------------------------------------------------------------------
//
void
{
mainc() //Enable the Global Interrupt M8C_EnableGInt;
//Enable the Timer interrupt and Start the UM Timer8_1_EnableInt();
Timer8_1_Start();
//infinte loop. Processing done only at Timer_ISR.
}
while (1); //-----------------------------------------------------------------------------
// FUNCTION NAME: Timer8_1_ISR_C
//
// DESCRIPTION:
// Interrupt Service routine of Timer8_1 usermodule written in C.
// The _Timer8_1_ISR subroutine In the Timer8_1INT.asm file,
// redirects the flow to this subroutine.
//-----------------------------------------------------------------------------
//
// ARGUMENTS: None
// RETURNS: None.
// SIDE EFFECTS: None.
//
// THEORY of OPERATION or PROCEDURE:
// A Terminal Count interrupt occurs at an interval of 0.5 secs.
// The state of pin P2[0] is determined and reversed.
//
//
void
{
Timer8_1_ISR_C() //Read Port2 and XOR it with 0x01 to change the status from On to Off and vice-versa. PRT2DR ^= 0x01;
}