main.c

来自「单片机C语言程序设计实训100例--基于AVR+PROTEUS仿真」· C语言 代码 · 共 53 行

C
53
字号
//-----------------------------------------------------------------
//  名称: 电子琴仿真
//-----------------------------------------------------------------
//  说明: 本例在键盘矩阵上模拟演奏电子琴,数码管显示键号.
//        按下不同按键时将输出不同频率音符,按键长按时发出长音,
//        短按时发出短音.
//
//-----------------------------------------------------------------
#define  F_CPU   1000000UL //1M晶振
#include <avr/io.h>
#include <avr/interrupt.h>
#define INT8U   unsigned char
#define INT16U  unsigned int

//蜂鸣器定义
#define SPK() (PORTD ^= _BV(PD7))
//定时器比较中断启停定义




//C调音符频率表(部分)



//共阳数码管段码表(0~F)
const INT8U SEG_CODE[]=
{ 
  0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8, //0 1 2 3 4 5 6 7
  0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E  //8 9 A B C D E F
};
//键盘矩阵相关变量与程序



//-----------------------------------------------------------------
// 主程序
//-----------------------------------------------------------------
int main()
{


}

//-----------------------------------------------------------------
// T1定时器比较匹配中断程序,控制音符频率输出
//-----------------------------------------------------------------
ISR (TIMER1_COMPA_vect)
{


}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?