下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文档-下载后可编辑AVR单片机外部中断实例-技术方案本范例使用WinAVR/G20220224版本开发按下按键0,0亮。直到松手,其他按键才能起作用按下按键1,LED1亮。其他按键随时都能起作用按下按键2,LED0/1都熄灭。直到松手,其他按键才能起作用
3.电路图设计:为简化线路设计,使用了本网站的ATmega16功能小板。.
4.代码设计与说明:/*****************************************************AVR外部中断使用范例**************策划、整理与测试:阿莫(armok)*******代码设计:HJJourAVR*******编译器:WINAVR20220224*******www.OurAVR.com2022.8.31****************************************************//*本程序简单的示范了如何使用ATMEGA16的外部中断中断的设置按键的简单延时防抖动中断的嵌套变量在中断中的应用如果变量会在中断服务程序中被修改,须加volatile限定本范例可直接使出厂状态的新M16芯片,无需对芯片的熔丝位进行配置。出于简化程序考虑,各种数据没有对外输出,学习时建议使用E硬件仿真器关于外部中断作唤醒源的条件:(将会在后面的管理和睡眠模式范例中应用)而INT0和INT1的边沿触发中断只能在空闲模式起作用,即CLKI/O不停止INT0和INT1的低中断,INT2在各种睡眠模式下都可以,因为这几种中断工作于异步模式,不需要时钟驱动的M16中文手册对外部中断的描叙存在多处错误,请参考英文原版。*/#include#include#include#includeSIGNAL执行时全局中断触发位被清除、其他中断被禁止INTERRUPT执行时全局中断触发位被置位、其他中断可嵌套执行另外avr-libc提供两个API函数用于置位和清零全局中断触发位,它们是经常用到的。分别是:voidsei(void)和voidcli(void)由interrupt.h定义*///注:内部函数_delay_ms()延时262.144mS@1MHz/*该函数可以实现较的定时,但用JTAG仿真时较麻烦会进入机器码窗口(DISAssembeler).注意跳开该语段。一旦JTAG仿真进入该内部函数语句,会变得像"死机"一样(其实在运行中),可以先[break],然后在后面的C语句设[breakpoint],[RUN]跳过*///?for()/while()语句计算延时时间较麻烦。//为了使_delay_ms()函数的延时正确,须在makefile中设定F_CPU为实际的系统时钟频//本范例为1MHz内部RC振荡器即F_CPU=1000000/*C:\WinAVR\avr\include\avr\目录包括所有芯片的定义和其他头文件其中iom16.h定义ATMEGA16芯片的特性(中断向量,寄存器,位定义...)包括下面中断服务程序的常量SIG_INTERRUPTx,PORTx,GICR*/#defineEXT_INT02#defineEXT_INT13#defineEXT_INT22#defineLED00#defineLED11#defineLED23#defineLED0_ON()PORTB|=(1#defineLED0_OFF()PORTB=~(1#defineLED1_ON()PORTB|=(1#defineLED1_OFF()PORTB=~(1#defineLED2_ON()PORTB|=(1#defineLED2_OFF()PORTB=~(1//AVR芯片的高低驱动能力都很强,甚至能推动8字数码管的公共极,怎么接都没问题。//全局变量#definehas_volatile1//可以修改has_volatile=1或0来看程序运行的效果#ifhas_volatilevolatileunsignedcharFLAG;unsignedcharFLAG;#endif//仿真时在watch窗口,监控这些变量。(SIG_INTERRUPT0)_delay_ms(10);if((PIND(1(SIG_INTERRUPT1)_delay_ms(10);if((PIND(1(SIG_INTERRUPT2)_delay_ms(10);if((PINB(1int(void)PORTA=0xFF;PORTC=0xFF;PORTD=0xFF;DDRB=(1FLAG=0;sei();while(1)while(FLAG==0);LED2_ON();while(FLAG!=0);LED2_OFF();/*程序运行效果按下按键0,LED0亮。直到松
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 数学对称理论在剪纸文化传播中的实践探索课题报告教学研究课题报告
- 2026中国人民保险内蒙古分公司统筹校园招聘备考题库新版
- 工业废气脱硫脱硝一体化技术在汽车尾气处理中的技术创新与效果评估教学研究课题报告
- 2026年设备监理师考试题库及答案参考
- 《以学生需求为导向:高中生视角下学校社团品牌建设的路径分析》教学研究课题报告
- 江苏省扬州市邗江区黄珏中学2013年八年级数学暑假作业(5)及答案
- 2026年试验检测师之交通工程考试题库300道及完整答案(全优)
- 2026年法律职业资格之法律职业客观题考试题库附参考答案(满分必刷)
- 2026年二级注册建筑师之建筑结构与设备考试题库500道及完整答案(有一套)
- 2026年LTE知识题库及答案参考
- 《李时珍》课件内容
- 2026高考化学复习难题速递之化学反应速率与化学平衡(解答题)(2025年11月)
- 2025年山东省枣庄市辅警(协警)招聘考试题库及答案
- 重庆试管婴儿合同协议
- 2025广西投资集团有限公司招聘4人笔试历年参考题库附带答案详解
- 2025年Walmart FCCA质量技术验厂标准要求及评分标准
- 显微镜下的微观世界科普
- 2026届广东深圳市高一生物第一学期期末监测试题含解析
- 广西普法考试试题及答案2025年
- 《安全标志及其使用导则规范》
- 2025年《五级应急救援员》考试练习题(附答案)
评论
0/150
提交评论