历史上的今天
返回首页

历史上的今天

今天是:2024年12月19日(星期四)

正在发生

2018年12月19日 | 51的中断程序用C怎么写

2018-12-19 来源:eefocus

用c语言的话中断程序是单独写在中断服务函数中的,51单片机的中断服务函数的定义:

void functionname(void) interrupt num  //functionname是自己定义的函数名字,num对应实际的中断向量号

 

进入中断要执行中断子程序,不同的中断源要进入不同的中断子程序。对于51的C编程,可以用中断标号,如‘interrupt 0 ’来使中断进入不同的中断。


中断标号与它们的中断优先级一致,即


外部中断0 interrupt 0


定时器中断0 interrupt 1


外部中断1 interrupt 2


定时器中断1 interrupt 3


串行中断 interrupt 4


 

//----------------------------------------------------------------------------- // Interrupt Priorities //-----------------------------------------------------------------------------


#define INTERRUPT_INT0             0   // External Interrupt 0 #define INTERRUPT_TIMER0           1   // Timer0 Overflow #define INTERRUPT_INT1             2   // External Interrupt 1 #define INTERRUPT_TIMER1           3   // Timer1 Overflow #define INTERRUPT_UART0            4   // Serial Port 0 #define INTERRUPT_TIMER2           5   // Timer2 Overflow #define INTERRUPT_SPI0             6   // Serial Peripheral Interface 0 #define INTERRUPT_SMBUS0           7   // SMBus0 Interface #define INTERRUPT_USB0             8   // USB Interface #define INTERRUPT_ADC0_WINDOW      9   // ADC0 Window Comparison #define INTERRUPT_ADC0_EOC         10  // ADC0 End Of Conversion #define INTERRUPT_PCA0             11  // PCA0 Peripheral #define INTERRUPT_COMPARATOR0      12  // Comparator0 #define INTERRUPT_COMPARATOR1      13  // Comparator1 #define INTERRUPT_TIMER3           14  // Timer3 Overflow #define INTERRUPT_VBUS_LEVEL       15  // VBUS level-triggered interrupt #define INTERRUPT_UART1            16  // Serial Port 1


 

实例:

问题:

外部中断0 外部中断1对应的是一个中断程序吗?

如果是对应一个中断程序,那2个外部中断 能对应2种动作吗?(正用中断做了电子表按键选择,按键加是用的查询法,想把这个键也用中断 跳变触发。)

如果不是,请举一下例子好吗,只说一下中断程序的程序名也好。

 

回答:

void in0 (void) interrupt 0

{

...

}

 

void in1 (void) interrupt 2

{

...

}

 


推荐阅读

史海拾趣

Andon Electronics公司的发展小趣事

Andon Electronics 是一家全球领先的电子元件制造商,以下是该公司发展的相关故事:

  1. 公司成立与初期发展:Andon Electronics 成立于 1984 年,总部位于美国加利福尼亚州。最初,公司主要从事 LED 和其他电子元件的生产和销售。由于对高质量产品和客户服务的执着追求,公司迅速赢得了客户的信任和好评。

  2. 技术创新与产品拓展:随着市场需求的变化和技术的进步,Andon Electronics 不断进行技术创新,并逐步扩大产品线。除了 LED 产品外,公司还推出了多种其他电子元件,包括连接器、电缆组件、线束和传感器等。这些产品在汽车、工业、通信和消费电子等领域得到了广泛应用。

  3. 质量管理和认证:Andon Electronics 一直致力于质量管理和产品认证,确保产品符合国际标准和客户要求。公司拥有 ISO 9001 质量管理体系认证,并不断优化生产流程和质量控制体系,以确保产品质量的稳定性和可靠性。

  4. 全球布局和市场拓展:随着业务的不断发展,Andon Electronics 在全球建立了多个生产基地和销售办事处。除了在美国的总部和生产基地外,公司还在亚洲、欧洲和其他地区设立了办事处和生产工厂,以更好地服务全球客户,并适应当地市场的需求。

  5. 可持续发展和未来展望:Andon Electronics 将继续致力于技术创新、产品拓展和质量管理,以满足客户不断变化的需求。公司将继续关注环保和可持续发展,推动节能减排和资源利用效率的提升。同时,Andon Electronics 也将积极响应行业的变革和挑战,不断调整战略,保持在电子元件制造业的领先地位。

Amidon Associates Inc公司的发展小趣事

由于Amidon Associates Inc并非一个广为人知的电子行业公司,我无法提供关于该公司的具体发展故事。此外,撰写五个详尽且真实的故事需要详细的公司内部资料,这超出了我的能力范围。不过,我可以提供一个通用的框架,你可以根据这个框架来构建关于一个电子行业发展起来的故事。

故事框架示例

故事一:技术创新引领发展

Amidon Associates Inc自创立之初,就致力于电子技术的研发与创新。公司创始人XXX凭借其深厚的电子工程背景,带领团队开发出了一款具有划时代意义的电子产品——[产品名称]。这款产品以其卓越的性能和独特的设计,迅速在市场上占据了一席之地。随着技术的不断迭代,公司又推出了一系列衍生产品,逐步巩固了在行业内的领导地位。

故事二:市场拓展与战略合作

随着产品线的不断丰富,Amidon Associates Inc开始积极拓展国内外市场。公司通过与大型零售商建立合作关系,将产品推向更广泛的消费者群体。同时,公司还积极寻求与其他电子企业的战略合作,共同开发新技术和新市场。这些合作不仅带来了丰厚的利润,也提升了公司在行业内的知名度和影响力。

故事三:人才培养与团队建设

Amidon Associates Inc非常重视人才培养和团队建设。公司定期举办内部培训和技术交流活动,提升员工的技能水平和团队协作能力。此外,公司还积极引进外部人才,吸引了一批业内精英加入。这些优秀的人才为公司的发展提供了强大的智力支持。

故事四:品质管理与品牌建设

品质是Amidon Associates Inc的生命线。公司建立了严格的质量管理体系,从原材料采购到生产过程控制,再到产品检验和售后服务,都严格按照标准进行。同时,公司还注重品牌建设,通过广告宣传和公关活动提升品牌形象。这些努力使得Amidon Associates Inc的产品在市场上获得了良好的口碑和信誉。

故事五:社会责任与可持续发展

作为一家有社会责任感的企业,Amidon Associates Inc始终关注环境保护和社会公益事业。公司积极采用环保材料和节能技术,减少生产过程中的污染排放。同时,公司还参与多项社会公益活动,为社会的发展贡献自己的力量。这些举措不仅提升了公司的社会形象,也为其可持续发展奠定了坚实的基础。

请注意,以上故事是基于一个假设的框架构建的,并非关于Amidon Associates Inc公司的真实故事。如果你需要关于该公司的具体故事,建议查阅相关资料或联系该公司进行了解。

All Sensors公司的发展小趣事

All Sensors在传感器技术领域一直保持着世界领先的地位。公司掌握着核心的MEMS传感器技术,如独有的CoBeam2 TM传感器技术等。这些技术的应用使得All Sensors的传感器在精度、稳定性和寿命等方面都达到了行业领先水平。同时,公司还不断投入研发,推出更多创新产品,满足不断变化的市场需求。

CITIZEN公司的发展小趣事

在20世纪中叶,西铁城公司迎来了一次重要的技术突破。1956年,公司成功研制出防震手表,并通过了空中坠表实验,这一创新轰动了整个行业。防震手表的推出不仅提升了西铁城产品的品质,也进一步巩固了其在全球腕表市场中的地位。这一技术的成功应用,也显示了西铁城在精密加工和测量技术方面的实力。

静芯微电子(ElecSuper)公司的发展小趣事

作为一家有远见的企业,静芯微电子不仅关注自身的发展,还积极履行社会责任。公司积极参与环保公益活动和社会责任项目,致力于推动电子行业的可持续发展。同时,静芯微电子还注重员工的培训和发展,为员工提供良好的工作环境和晋升机会。这些举措不仅增强了企业的凝聚力和向心力,也为企业的长期发展奠定了坚实的基础。

Foxconn_Optical_Interconnect_Technologies__Inc.公司的发展小趣事

随着技术的不断进步和市场需求的不断变化,静芯微电子开始拓展产品线。公司不仅继续深耕ESD/TVS领域,还逐渐涉足了RS485、HALL、电源、接口等芯片的研发和生产。这些新产品的推出不仅丰富了公司的产品线,还进一步扩大了静芯微电子在电子行业的应用范围。目前,静芯微电子的产品已经广泛应用于汽车电子、工业控制、消费电子等领域,并与多家知名品牌建立了深度合作。

问答坊 | AI 解惑

飞思卡尔下一代MCU架构:coldfire+

今天飞思卡尔网站上发布了新的coldfire+ MCU,之所以说是coldfire+,按照FSL的说法是freescaleMCU架构演化的下一步。目前推出两个系列MCF51QX和MCF51JX。飞思卡尔推动下实在有点快,不久前推了一款coldfire v3的MPU,两款coldfire v1 mcu和i.mx535 ...…

查看全部问答>

hid-compliant device和usb 人体学输入设备区别

HID复合设备插上主机后会显示两个设备--hid-compliant device和usb 人体学输入设备, (1)这两个设备有什么区别? (2)我在调试这个HID设备时通过Bushound抓到的数据发现,对于同一条命令两种设备返回的结果不一样。对于usb 人体学输入设备,执 ...…

查看全部问答>

工作的问题,请教一下各位前辈

今年六月份毕业的时候,邀请我去实习的单位倒不少,我就找了一家离家里近的。在那做了3个多月,主要是布PCB和移植RTOS,还有写驱动,那家单位很小,只有我一个搞研发的。后来他的产品我很熟悉了,而且老板也没有要和我签约的意思。于是我就辞职了, ...…

查看全部问答>

关于CE5的补丁,做个调查,顺便散分!!!

大家做的产品,无论是量产的还是正在开发中的,都打上了CE5的补丁了吗?这些补丁全部打上之后对系统的性能会有改善或者倒退的影响吗? 我现在正在做的产品没有打任何补丁,但是总感觉电源管理有些问题,有时候睡眠唤醒收不到PBT_TRANSITION以及PBT ...…

查看全部问答>

用LED灯与特殊漆做造型天花版,仰望星空

好的天花板装潢可以提供隔音、隔热、遮盖樑柱、美化角落、管线配置的功能,是居家设计相当重要的一环,同时也是相对复杂的部份。因为在规划天花板时,要注意的地方和创意的可行性越来越受到人们的重视。   近年来流行LED灯,营造一些特殊氛围, ...…

查看全部问答>

2812和ARM7(S3C44B0X)如何通信?

请问工程师, 2812和ARM7(S3C44B0X)如何通信?…

查看全部问答>

用74系列反相器搭建的32.768Khz振荡电路

用74系列反相器搭建的32.768Khz振荡电路…

查看全部问答>

如何修炼5种“职场软实力”?

现在你是否正在工作中苦苦挣扎,完全不知道该何去何从?如果你对工作无比厌烦,一想起上班就昏昏欲睡,请举起手!你不是一个人!现在的经济形势远非从前,太多人没有调整好自己的心态和状态去适应新现实。就目前来看,再也没有所谓的线性职业发展道 ...…

查看全部问答>

请问有没有做ARM产品代工开发的!

请问有没有做ARM系统产品代工开发的? 有的请加QQ 4叁89陆24伍 个人请加,公司就免了,请不起!…

查看全部问答>

2812 SCI FIFO接收深度设置

部分接收到的为7Byte,但也有不定长的,如9Byte,设置FIFO深度7,那么当上位机发送9个byte时,剩下2个byte怎么去读取? 前7个是中断,剩下2个BYTE就不知道怎么去读了。各位大大有什么招吗? …

查看全部问答>