- 1、本文档共41页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5ATmega串行通信及AVR其他资源资料.ppt
实例解析1——单片机看门狗演示 #include iom16v.h #include macros.h #define uint unsigned int #define uchar unsigned char /********延时函数********/ void Delay_ms(uint xms) { int i,j; for(i=0;ixms;i++) { for(j=0;j1140;j++) ; } } /********端口初始化函数********/ void port_init (void) { DDRA=0xFF; PORTA=0xFF; } /********看门狗启动函数********/ void watch_init(void) { WDTCR|=(1WDTOE)|(1WDE);//启动看门狗 WDTCR=(0WDE);//再次启动看门狗时,要先禁止看门狗,否则,看门狗无法启动 WDTCR|=(1WDTOE)|(1WDE)|(1WDP2)|(1WDP1);//启动看门狗,设置看门狗定时时间为1s } /********主函数********/ void main (void) { uchar temp; uchar i; port_init(); while(1) { watch_init();//第一次喂狗,并将看门狗定时时间设置为1s PORTA=0xfe; //PA0脚灯亮 Delay_ms (200); // 将实际参数500传递给形式参数xms,延时0.5s PORTA=0xfd; //PA1脚灯亮 Delay_ms (200); PORTA=0xfb; //PA2脚灯亮 Delay_ms (200); PORTA=0xf7; //PA3脚灯亮 Delay_ms (200); watch_init(); //第二次喂狗,并将看门狗定时时间设置为1s PORTA=0xef; //PA4脚灯亮 Delay_ms (200); PORTA=0xdf; //PA5脚灯亮 Delay_ms (200); PORTA=0xbf; //PA6脚灯亮 Delay_ms (200); PORTA=0x7f; //PA7脚灯亮 Delay_ms (200); } } * 机械工业出版社 Page * 9.1 模拟比较器简介 在ATmega16中,模拟比较器对正极AIN0 (PB2)的值与负极AIN1 (PB3)的值进行比较,当AIN0 上的电压比负极AIN1上的电压要高时,模拟比较器的输出ACO置位。比较器的输出可用来触发定时器/ 计数器1 的输入捕捉功能。此外,比较器还可触发自己专有的、独立的中断。用户可以选择比较器是以上升沿、下降沿还是交替变化的边沿来触发中断。比较器的方框图和周围电路如图9-1所示。 模拟比较器的结构 模拟比较器的内部结构如图9-1所示,模拟比较器实际上就是一个带输出单元的运算放大器,外部引脚通过接到运算放大器的两个输入端实现模拟比较功能(PB2接同相端,PB3接反相端)。 * 机械工业出版社 Page * 9.1.1 与模拟比较器相关的寄存器和标志位 用户可通过对SFIOR、ACSR这两个寄存器相关位的的设置来实现对模拟比较器控制。 1.特殊功能IO寄存器—SFIOR 2.模拟比较器控制和状态寄存器—ACSR ADTS2 ADTS1 ADTS0 ACME PUD PSR2 PSR10 0 0 0 0 0 0 0 0 ACD ADBG ACO ACI ACIE ACIC ACIS1 ACIS0 0 0 不定 0 0 0 0 0 * 机械工业出版社 Page * 3. ACSR是模拟比较器主要的控制寄存器,其中各个位的作用如下: 位7—ACD:模拟比较器禁止 位6—ACBG:模拟比较器的能隙参考源选择 位5—ACO:模拟比较器输出 位4—ACI:模拟比较器中断标志位 位3—ACIE:模拟比较器中断允许 位1、0—ACIS1、ACIS0:模拟比较器中断模式选择 位2—ACIC:模拟比较器输入捕获允许 * 机械工业出版社 Page * 这2个位决定哪种模拟比较器的输出事件可以触发模拟比较器的中断。不同的设置参见表9-1。 表9-1
文档评论(0)