搜索
bottom↓
回复: 1

发一个我刚写的中断程序

[复制链接]

出0入0汤圆

发表于 2006-4-4 20:50:19 | 显示全部楼层 |阅读模式
以下是刚写的,仿真通过,由于接触bascom才三天,不对的地方望指教!

'/////////////////////////////////////////////////////////

'///  以下是timer0的输出比较中断程序                   ///

'///  每过1ms中断一次,pina.1控制led闪烁               ///

'/////////////////////////////////////////////////////////

$Device= m16                        ' 定义器件

$Stack = 120                        ' 定义堆栈大小

$Clock = 8                          ' 定义时钟频率

$Def led=PORTA.0        ' 端口定义

$Timer0=Timer,Prescale=64,Compare= Reset,Clear  '定义timer0

Declare Interrupt Oc0() ' 定义oc0中断            

DDRA.0=1                ' 定义io口

DDRA.1=0         

PORTA.0=1

PORTA.1=1

Dim count0 As Byte      ' 定义变量

count0=0                ' 清零count0

Stop  Timer0            ' timer0停止

ocr0=&h7d               ' 置ocr0初值

tcnt0=0                 ' tcnt0清零

Enable Oc0              ' 打开oc0中断

Enable Interrupts       ' 打开全局中断

Do                                                ' 进入主程序

If PINA.1=1 Then        ' pina.1状态控制oc0中断

Start Timer0

Else

Set led                 ' led和计数器还原为初始状态               

Stop Timer0

count0=0

tcnt0=0

End If

Loop

End

Interrupt Oc0(),Save 1  ' oc0中断程序

   Incr count0          ' count0加1

   If count0>=250 Then

   Toggle led:count0=0  ' led每过250ms变化一次         

   End If

End Interrupt           ' oc0中断结束

出0入0汤圆

发表于 2006-4-6 08:23:32 | 显示全部楼层
mr.luo

呵呵呵你那个好像是fastavr的吧?那个不是bascom的啊。。。。我可以测试看看有没有问题。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-10 06:21

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

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