|
请问有谁懂MC9S08QE128这个芯片的使用,及程序的编写。
能给我一个简单的程序例子吗?带像51那样的引脚定义那种。
例如:51程序如下:定时器每1分钟控制继电器
希望能用MC9S08QE128编个类似以下的程序,十分感谢!!!
#include
#define uchar unsigned char
#define uint unsigned int
uint qfbz,bz=1; //定义秒标志、区分1分钟和1小时标志位
uint time[] = {0,0,0}; //100毫秒,秒,分
sbit p17=P3^5; //定时器T1,控制继电器口
sbit CT_LED=P0^1; //CPU工作灯
sbit WTDCS=P1^1; //外部看门狗CS
void first(void);
//-----初始化-----
//-----INT_T1中断服务子程序-----
void Int_T1(void) interrupt 3
{
TR1=0;
TH1=0xc4; //100毫秒定时常数,高位
TL1=0x08; //100毫秒定时常数,低位
TR1=1;
time[0]=time[0]+1; //10毫秒数加 1
if(time[0]==100) //判断10毫秒=100
{
time[0]=0;
}
if(time[0]==0)
{
time[1]=time[1]+1; //秒加1
if(time[1]==60&&qfbz==0)//判断秒=60
{
time[1]=0;
time[2]=time[2]+1;//分加1
if(time[2]==1) //判断分=1
{
time[2]=0;
qfbz=1; //置区分标志
bz=0;
}
}
if(time[1]==30&&qfbz==1)
{
qfbz=0;
bz=1;
time[1]=0;
}
}
}
void first(void)
{
qfbz=0; //区分标志
TMOD=0x10; //工作方式为1
TH1=0x0ff; //100毫秒的时间常数高位
TL1=0x66; //100毫秒的时间常数低位
TR1=1;
ET1=1; //允许定时中断
EA=1; //允许中断
p17=0;
}
void main()
{
first(); //初始化
while(1)
{
WTDCS=0;
if(qfbz==0)
{
p17=1;
CT_LED=1;
}
if(qfbz==1)
{
p17=0;
CT_LED=0;
}
WTDCS=1;
}
}
希望包括MC9S08QE128资料,希望是中文资料,英文的我有,看不懂。所以请求各位大侠。
|
|