为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

AVR单片机进入睡眠状态及唤醒

2017-09-05 10页 doc 27KB 61阅读

用户头像

is_477730

暂无简介

举报
AVR单片机进入睡眠状态及唤醒AVR单片机进入睡眠状态及唤醒的C语言程序 M16掉电模式的耗电情况(看门狗关闭),时钟为内部RC 1MHz 0.9uA@Vcc=5.0V [手册的图表约为1.1uA] 0.3uA@Vcc=3.3V [手册的图表约为0.4uA] //测量的数字万用表是FLUKE 15B,分辨率0.1uA 这个程序需要MCU进入休眠状态,为实现最低功耗,JTAG接口会被关闭,只能通过LED的变化来观察程序的运行。 这个实验里面,用STK500(AVRISP) ISP下载线来烧录更方便。 熔丝位设置 1 关断BOD功能 BODE...
AVR单片机进入睡眠状态及唤醒
AVR单片机进入睡眠状态及唤醒的C语言程序 M16掉电模式的耗电情况(看门狗关闭),时钟为内部RC 1MHz 0.9uA@Vcc=5.0V [手册的图约为1.1uA] 0.3uA@Vcc=3.3V [手册的图表约为0.4uA] //测量的数字万用表是FLUKE 15B,分辨率0.1uA 这个程序需要MCU进入休眠状态,为实现最低功耗,JTAG接口会被关闭,只能通过LED的变化来观察程序的运行。 这个实验里面,用STK500(AVRISP) ISP下载线来烧录更方便。 熔丝位设置 1 关断BOD功能 BODEN=1 2 如果用ISP方式烧录,就可以完全关闭JTAG口了 OCEEN=1,JTAGEN=1 */ #include #include #include #include //时钟定为内部RC 1MHz,F_CPU=1000000 也可以采用其他时钟 #include /* sleep.h里面定义的常数,对应各种睡眠模式 #define SLEEP_MODE_IDLE 0 空闲模式 #define SLEEP_MODE_ADC _BV(SM0) ADC 噪声抑制模式 #define SLEEP_MODE_PWR_DOWN _BV(SM1) 掉电模式 #define SLEEP_MODE_PWR_SAVE (_BV(SM0) | _BV(SM1)) 省电模式 #define SLEEP_MODE_STANDBY (_BV(SM1) | _BV(SM2)) Standby 模式 #define SLEEP_MODE_EXT_STANDBY (_BV(SM0) | _BV(SM1) | _BV(SM2)) 扩展Standby模式 函数 void set_sleep_mode (uint8_t mode); 设定睡眠模式 void sleep_mode (void); 进入睡眠状态 */ //管脚定义 #define LED 0 //PB0 驱动LED,低电平有效 #define KEY_INT2 0 //PB3 按键, 低电平有效 void delay_10ms(unsigned int t) { /* 由于内部函数_delay_ms() 最高延时较短 262.144mS@1MHz / 32.768ms@8MHz / 16.384ms@16MHz 故编写了这条函数,实现更长的延时,并能令程序能适应各种时钟频率 */ while(t--) _delay_ms(10); } int main(void) { unsigned char i; //上电默认DDRx=0x00,PORTx=0x00 输入,无上拉电阻 PORTA=0xFF; //不用的管脚使能内部上拉电阻。 PORTC=0xFF; PORTD=0xFF; PORTB=0xFF; DDRB =(1<
/
本文档为【AVR单片机进入睡眠状态及唤醒】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索