智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 3100|回复: 6
打印 上一主题 下一主题

做出了一个定时程序(解释很全,供初级交流),大家一起交流下

[复制链接]

19

主题

160

帖子

0

精华

高级会员

Rank: 4

积分
919
QQ
威望
487
贡献
284
兑换币
0
注册时间
2009-11-4
在线时间
74 小时
跳转到指定楼层
1#
发表于 2009-11-7 12:42:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <hidef.h>      /* common defines and macros */
#include "derivative.h"      /* derivative-specific definitions */

#define uchar unsigned char
#define uint unsigned int
uchar Pulsecnt;
uchar  m=0;   

#pragma CODE_SEG NON_BANKED

void interrupt 16 Time_Over(void)     //中断号16,是时间溢出的中断的号,可以在derivative.h里找到的
{  
  DisableInterrupts;  //关中断
  m++;                               //进入一次中断,m加一
  if(m==20)                          //进入5次,则
  {
    DDRB=0XFF;                 //应该可以不用重新再赋值了
    Pulsecnt=~Pulsecnt;   //进入后,B口取反
   PORTB=Pulsecnt;
//  PORTB=~Pulsecnt;    注意:这条语句不行,B口永远赋值不进去,不要以为可以代替上面两条语句,不行的
    m=0;                 //我们一直弄不出来的原因就是使用了这条语句
  }
  TCNT=65535-50000;     //设置初始值
// TFLG2_TOF=1;         //每次都将标志位清零,如果是TSCR1=0X90的话,那么这句就不用了。我这个程序就不用了
// EnableInterrupts;
}
  
#pragma CODE_SEG DEFAULT


void main(void) {
  /* put your own code here */  

   TIOS=0x00;             //设置输入的通道工作为输入捕捉,其实默认的就全是0
   TSCR2=0x83;           //设置定时器溢出中断,并且分频系数为8,开始不知道总线的频率是多少,后来测出来是8M
   TIE=0x02;            //允许中断(这里TIE可以随便,你也可以是TIE=0X00)
  TFLG2_TOF=1;        //定时器溢出中断标志位清零
  TCNT=65535-50000;   //设置初始值(你也可以分别设高低位)
  Pulsecnt=0xF0;     //设置变量为0xf0,最终输出给B口
  DDRB=0XFF;         //设置B口为输出方式
  PORTB=Pulsecnt;   //设置初始值B
// TSCR1_TEN=1;     //开定时器
   TSCR1=0X90;     //TSCR1第4位TFFCA=1,则TFLG2_TOF位每次中断后=1(自动清零),也可以是
                     //TSCR1=0X80,或者TSCR1_TEN=1,但是每次到中断程序中都得重新置位
  EnableInterrupts;     


  for(;;) {
   _FEED_COP(); /* feeds the dog */
  } /* loop forever */
  /* please make sure that you never leave main */


}

0

主题

165

帖子

0

精华

高级会员

Rank: 4

积分
597
QQ
威望
438
贡献
23
兑换币
0
注册时间
2008-5-11
在线时间
68 小时
2#
发表于 2009-11-8 11:00:49 | 只看该作者
"m=0;                 //我们一直弄不出来的原因就是使用了这条语句"
呵呵,细节很重要。
回复 支持 反对

使用道具 举报

1

主题

70

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
418
QQ
威望
296
贡献
92
兑换币
0
注册时间
2011-2-20
在线时间
15 小时
3#
发表于 2011-2-22 16:37:35 | 只看该作者
有收获~
回复 支持 反对

使用道具 举报

4

主题

22

帖子

0

精华

高级会员

Rank: 4

积分
647
威望
386
贡献
119
兑换币
90
注册时间
2010-9-24
在线时间
71 小时
4#
发表于 2011-2-27 19:22:07 | 只看该作者
我找到你了
回复 支持 反对

使用道具 举报

7

主题

72

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
403
QQ
威望
304
贡献
37
兑换币
0
注册时间
2011-3-5
在线时间
31 小时
5#
发表于 2011-3-8 16:24:20 | 只看该作者
多谢了,及时雨呀!!!!!!
回复 支持 反对

使用道具 举报

1

主题

71

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
313
QQ
威望
212
贡献
67
兑换币
0
注册时间
2011-11-7
在线时间
17 小时
6#
发表于 2011-11-26 15:09:28 | 只看该作者
很有用
回复 支持 反对

使用道具 举报

1

主题

206

帖子

0

精华

高级会员

Rank: 4

积分
610
QQ
威望
348
贡献
196
兑换币
0
注册时间
2011-10-5
在线时间
33 小时
7#
发表于 2011-11-26 18:53:30 | 只看该作者
谢谢。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2025-1-8 22:39 , Processed in 0.105233 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表