用AVR实现《祝你生日快乐》

上传人:飞*** 文档编号:31200765 上传时间:2018-02-05 格式:DOCX 页数:3 大小:13.71KB
返回 下载 相关 举报
用AVR实现《祝你生日快乐》_第1页
第1页 / 共3页
用AVR实现《祝你生日快乐》_第2页
第2页 / 共3页
用AVR实现《祝你生日快乐》_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
资源描述

《用AVR实现《祝你生日快乐》》由会员分享,可在线阅读,更多相关《用AVR实现《祝你生日快乐》(3页珍藏版)》请在金锄头文库上搜索。

1、/*=程序说明=项目名称:祝你生日快乐作 者: 小混混要学习创建日期:修改说明:程序说明:(1)CPU 型号:mega16l(2)时钟频率:(3)实现功能:(4)程序概述:=*/=头文件加载=#include #include #define Fosc 7372800 /Hz#define uint8 unsigned char#define uint16 unsigned int#define uint32 unsigned long int#define sint8 char#define sint16 int/=端口声明=#define BeepIO PORTC.5 /#define B

2、eepDDR DDRC.5 /=全局常量声明=uint16 flash FreTable = 1000,262,293,330,349,392,440,494,523;uint8 flash music =0x05,0x08, 0x05,0x08,0x06,0x04, 0x05,0x04, 0x11,0x04,0x07,0x02, 0x05,0x08, 0x05,0x08,0x06,0x04, 0x05,0x04, 0x12,0x04,0x11,0x02,0,0;/=全局变量声明=uint8 YQ = 0;/YQ = musici 4;uint8 YD = 0;/YD = musici uin

3、t8 YF = 0;/YC = musici+1;uint32 OneYS = 2400; /ms 一个全音符的时间长度uint32 PlayTimeMax = 2;uint32 PlayTimeCount = 0;uint32 YYi=0;/=函数声明=void init(void);/函数初始化/=主函数=void main()/主函数 uint16 YYi = 0;/-系统初始化-init(); while(1)/=功能子函数=/*-函数名称:功 能:输 入:输 出:说 明:-*/void init(void)BeepIO = 1; /BeepDDR = 1; /1、配置为 CTC 模式。TCCR1B |= (0 4;YD = musicYYi YF = musicYYi+1;OCR1A =( Fosc / FreTableYD ) YQ;PlayTimeMax = (OneYS * FreTableYD YQ)/ YF /1000; if(YD=0)BeepIO = 1; PlayTimeCount = 0;/5、开全局中断。#asm(sei) YYi = YYi + 2; elseYYi=0; PlayTimeMax = 2;PlayTimeCount = 0;OCR1A = 3; /=程序结束=

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号