智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 3470|回复: 3
打印 上一主题 下一主题

中断定时的困扰,望高手指点

[复制链接]

0

主题

16

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
432
威望
310
贡献
98
兑换币
76
注册时间
2008-3-23
在线时间
12 小时
跳转到指定楼层
1#
发表于 2008-4-20 17:12:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
<><FONT color=#2b6fd5 size=3>#include &lt;hidef.h&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /* common defines and macros */<BR>#include &lt;mc9s12dg128.h&gt;&nbsp;&nbsp;&nbsp;&nbsp; /* derivative information */<BR>#pragma LINK_INFO DERIVATIVE "mc9s12dg128b"</FONT></P><P><FONT color=#2b6fd5 size=3></FONT>&nbsp;</P><P><FONT color=#2b6fd5 size=3>void main(void) {<BR>&nbsp; <BR>&nbsp; <BR>&nbsp;DDRB=0XFF;//PORTB设定为输出<BR>&nbsp;PORTB=0XFF;//PORTB初始化为全高<BR>&nbsp; </FONT></P><P><FONT color=#2b6fd5 size=3>&nbsp;TSCR1=0x90;//定时器使能且TFLG1能被自动清除</FONT></P><P><FONT color=#2b6fd5 size=3>&nbsp;</FONT><FONT color=#2b6fd5 size=3>TSCR2=0x07;//定时器预分频系数设定&nbsp; Prescale Factor=128<BR>&nbsp;TIE=0x01;//定时器通道0使能<BR>&nbsp;TIOS_IOS0=1;//定时器通道0设定为输出比较</FONT></P><P><FONT color=#2b6fd5 size=3>&nbsp; EnableInterrupts;//开中断</FONT></P><P><FONT color=#2b6fd5 size=3>&nbsp; for(;;) {} /* wait forever */<BR>&nbsp; /* please make sure that you never leave this function */<BR>}</FONT></P><P><FONT color=#2b6fd5 size=3></FONT>&nbsp;</P><P><BR><FONT color=#2b6fd5 size=3>/*<BR>*************************************************************************** <BR>*语法格式:interrupt void Timer(void)<BR>*实现功能ORTB小灯的闪烁<BR>*程序描述:<BR>**************************************************************************/<BR>void interrupt 8 Timer(void) //8为定时器通道0的中断标号<BR>{<BR>&nbsp;DisableInterrupts;&nbsp;&nbsp;//关中断 <BR>&nbsp;TC0=TCNT+19360;//F = Fosc / (TC*128) 中断频率设定<BR>&nbsp;PORTB++;//PORTB自增<BR>}&nbsp;&nbsp;<BR>&nbsp;&nbsp;</FONT></P><P><FONT color=#2b6fd5 size=3>这个程序不能通过我的程序里直接加这个编译不通过,为什么?在哪里还要设置什么吗?</FONT></P><P><FONT color=#2b6fd5 size=3>需要以下的做法吗,还有就是我在网上下载的中断定时工程可以正常运行,但是我复制其中的代码,再自己新建工程,就不能运行了,望高手指点!!!!</FONT></P><P><FONT color=#2b6fd5 size=3></FONT>&nbsp;</P><P><FONT color=#2b6fd5 size=3><FONT color=#000000>你如果用的是BDM调试的话,在中断程序的开始别忘了加&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </FONT></P><P>#pragma&nbsp; CODE_SEG&nbsp; NON_BANKED</P><P>语句</P><P>还得在</P><P>prm文件夹下的TBDML-linker.prm文件中写入中断的入口地址</P></FONT>

0

主题

294

帖子

1

精华

功勋会员

Rank: 10Rank: 10Rank: 10

积分
4137

特殊贡献奖章

QQ
威望
2664
贡献
1409
兑换币
35
注册时间
2007-11-22
在线时间
32 小时
2#
发表于 2008-4-21 20:13:59 | 只看该作者

Re:中断定时的困扰,望高手指点

你不是已经知道解决方法了吗?
回复 支持 反对

使用道具 举报

0

主题

3

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
216
威望
176
贡献
24
兑换币
2
注册时间
2008-5-26
在线时间
8 小时
3#
发表于 2008-5-26 07:21:56 | 只看该作者

Re:中断定时的困扰,望高手指点

<>请问这个问题具体怎么解决呢</P>
回复 支持 反对

使用道具 举报

0

主题

14

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
237
威望
201
贡献
32
兑换币
10
注册时间
2008-5-27
在线时间
2 小时
4#
发表于 2008-5-28 00:06:59 | 只看该作者

Re:中断定时的困扰,望高手指点

<>新建工程,</P><P>bdm调试。 </P><P>复制代码</P><P>加上#pragma&nbsp; CODE_SEG&nbsp; NON_BANKED</P><P>没改PRM 不会,, 运行通过。</P><P>PRM到底是什么东西? 我怎么没有TBDML-linker.prm 而是 Full_Chip_Simulation_linker.prm&nbsp; ?&nbsp; 有改好的范例看看么? </P>
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-28 13:18 , Processed in 0.446406 second(s), 37 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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