interrupt m修饰符
C51中断函数必须通过该修饰符进行修饰。在C51程序设计中,当函数定义时用了interrupt m修饰符,系统编译时把对应函数转化为中断函数,自动加上程序头段和尾段,并按51系统中断的处理方式自动把它安排在程序存储器中的相应位置。
在该修饰符中,m的取值为0~31,对应的中断情况如下:
0——外部中断0
1——定时/计数器T0
2——外部中断1
3——定时/计数器T1
4——串行口中断
5——定时/计数器T2
其它值预留。
C51编译器从绝对地址8m+3处产生一个中断向量,其中m为中断号,也即interrupt后面的数字。该向量包含一个到中断函数入口地址的绝对跳转。
【例】编写一个用于统计外中断0的中断次数的中断服务程序
1 int x=0;2 void int0() interrupt 0 using 13 {4 x++;5 }
using n修饰符
修饰符using n用于指定本函数内部使用的工作寄存器组,其中n的取值为0~3,表示寄存器组号。该修饰符可以省略,省略后系统自动选择
中断函数注意如下:
(1)中断函数不能进行参数传递,如果中断函数中包含任何参数声明都将导致编译出错。
(2)中断函数没有返回值,如果企图定义一个返回值将得不到正确的结果,建议在定义中断函数时将其定义为void类型,以明确说明没有返回值。
关键字:单片机 中断函数
引用地址:
单片机中断函数的编写
推荐阅读最新更新时间:2024-03-16 15:29
嵌入式TCP/IP协议单片机技术在网络通信中的应用
在因特网上,TCP/IP协议每时每刻保证了数据的准确传输。在数据采集领域,如何利用TCP/IP协议在网络中进行数据传输成为一个炙手可热的话题。在本系统中,笔者利用TCP/IP协议中的UDP(用户数据报协议)、IP(网络报文协议)、ARP(地址解析协议)及简单的应用层协议成功地实现了单片机的网络互连,既提高了数据传输的速度,又保证了数据传输的正确性,同时也扩展了数据传输的有效半径。
1 TCP/IP协议简介 TCP/IP协议是一套把因特网上的各种系统互连起来的协议组,保证因特网上数据的准确快速传输。参考开放系统互连(OSI)模型,TCP/IP通常采用一种简化的四层模型,分别为:应用层、传输层、网络层、链路层。 (1)应用
[单片机]
8位、32位MCU整体研发成本比较
前言:在多数的微控器(MCU)应用中「成本」向来被视为第一设计要则,因此许多工程师倾向(或被要求)使用初阶MCU来精省成本,然这仅是精省了量产时的硬件料件成本,若从整体成本的角度来审视,结果往往会适得其反。 过去,微控器(MCU)的应用设计相当讲究硬件料件成本的精省,如果能在一个产品上多省个0.1美元,则产品的量产数愈多,则成本精省效应就愈高,所以过往都偏好使用简易、低廉的MCU,能用4位MCU完成设计就用4位MCU,能用8位MCU完成设计就用8位MCU,很少在意后续硬件设计上的后续发展、扩充弹性。 不过,硬件料件精省法只适合于过去的「少样、多量、少变」生产,然今日市场已是「多样、少量、快变」的走向,如此若再坚持「以料件精省
[单片机]
单片机学习之十六:定时器应用3(模式3)
一、实验现象: 在P0.0和p0.1分别输出一个周期是200us和400us的方波信号。 二、实验目的 掌握内部定时/计数器作定时功能(模式3)的应用 三、实验任务分析: 在这个试验里面,要同时产生两个方波信号。我们可以采用和上面一个试验类似的方法,让T0、T1都工作于模式2,分别产生两个方波信号,但是这样要同时占用两个定时器的资源,比较浪费。 由于T0还有一种工作方式,就是可以分为两个8位的计数器tl0和th0,所以我们就采用这个模式3来产生两个方波信号。(注:这种工作模式只适用于T0,如果把定时器T1定义为模式3的时候,T1是停止计数的。) T0工作于模式3的逻辑图如下图所示: 从图上我们可以看到,
[单片机]
基于51单片机的人体红外模块的自动门设计
摘 要 本系统以单片机AT89C51为核心,使用人体红外线传感器作为感应器,检测到人体辐射的红外线能量变化,将其转化为电信号,触发单片机中断。再由单片机通过ULN2003驱动步进电机动作,电机的正反转分别表示自动门的开启和闭合,通过15个LED灯的逐次亮灭来模拟开关门状态。 一. 方案的选择与论证 根据设计要求目的,本系统可以划分为若干个基本模块。为了搭建性能稳定的外部电路及实现较高的性价比,使自动门达到真正的智能控制,针对各个模块的功能要求,分别有以下一些不同的设计方案: 1.驱动电机 方案A:选择步进电机作为自动门的引擎。步进电机最大的优点就是在距离上能够得到较精确控制,在没有行程开关作为电机停止的信号时,步进电机是最有选择
[单片机]
单片机在电机转速测量仪应用
单片机是整个测量系统的主要部分,担负对前端脉冲信号的处理、计算、以及信号的同步,计时等任务,其次,将测量的数据经计算后,将得到的转速值传送到显示接口中,用数码管显示数值。在本系统中考虑到计数的范围、使用的定时,计数器的个数及I/O口线。 电机转速测量需要经过的4个基本步骤:1是控制方式;2是确定计数方式;3是信号输入方式;4是计数值的读取;单片机完成对电机转速脉冲计数的控制,读取寄存器完成转速频率的确定。 其测量过程是测量转速的霍尔传感器和电机机轴同轴连接,机轴每转一周,产生一定量的脉冲个数,由霍尔器件电路输出。成为转数计数器的计数脉冲。同时霍尔传感器电路输出幅度为12V的脉冲经光电耦合后降为5V,保持同单片机AT89C51逻
[单片机]
Microchip推全新PIC18F单片机系列 融合多种纳瓦技术
适用于低成本、低功耗及高性能运行 全球领先的单片机和模拟半导体供应商——Microchip Technology Inc.(美国微芯科技公司)宣布推出其PIC18F高性能8位单片机系列中首批充分利用Microchip最新工艺技术的8款器件。这一新系列单片机确立了低功耗、低成本及高性能运行的新基准。 新系列单片机备有28、40和44引脚封装,融合多种先进的纳瓦技术特性,包括电源管理模式、1.8V至3.6V工作电压范围及高效的片上外设,可实现极佳的功耗控制性能。此外,它们可通过内置振荡器在3V的工作电压下实现16 MIPS(64 MHz)的速度,既可体现高性能又能保持低功耗。上述特点使PIC18F4XK20/2XK20系列成为通用
[新品]
单片机读写U盘、cf卡开发心得
刚做完一个项目,要求将人体心电信号采集下来,存储到海量存储设备中,可以用U盘也可以用CF卡。这个项目的难点不在采集,只要做好信号放大、滤波防干扰,就可以保证信号采集的正确性。而难点在于数据的存储,要求患者将24小时甚至更长时间的所有心电信号都存储下来,按照10ms采集一次数据那么一个小时就要400K,一天的数据存储量需要9.6M。因此一般的静态E2满足不了使用的要求,有些情况下,设备要求能够连续使用一个礼拜,而数据不能丢失,因此必须选用一个大存储量器件。我们在这个项目中选择的是U盘,当然我的一个师弟采用的CF卡也完成了数据的存储。所谓U盘就是一个带有USB接口的硬盘,如果去掉USB接口芯片,U盘内部和CF卡和普通的PC硬盘结构一样。
[单片机]
“2009瑞萨超级MCU模型车大赛”在京举行
由株式会社瑞萨科技(以下简称瑞萨)冠名赞助的“2009瑞萨超级MCU模型车大赛”将于11月22日在北京举行。此项赛事是教育部旨在培养IT技术人才而举办的“全国大学生ITAT大赛”的其中一项重要赛事,已成功举办两届。本届大赛共有包括上海交大、西安交大、北师大、电子科大等在内的49所高校组成的90支队伍,参赛队将参加两个项目的角逐。各参赛队使用自行设计制作搭载有瑞萨芯片的模型车,车辆须在规定赛道上前行,按照进行所用时间长短决定名次。成绩优秀者将获得教育部颁发的IT技能证书。 根据“2009瑞萨超级MCU模型车大赛”规则,参赛队需以瑞萨MCU为核心进行电路和软件设计,以及整合零部件进行赛车的结构设计,设计出的赛车,可以在白
[单片机]