找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1753|回复: 0
打印 上一主题 下一主题
收起左侧

简易电子琴制作

[复制链接]
跳转到指定楼层
楼主
ID:268918 发表于 2017-12-29 16:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
#include <reg52.h>  
#define uchar unsigned char  /uchar 无符号字符型 unsigned 无符号的
#define uint  unsigned int
#define ulong unsigned long
unsigned char i=100;
unsigned char j,k,temp,key;
sbit row1=P2^5;                //行端口定义
sbit row2=P2^4;
sbit row3=P2^3;
sbit row4=P2^2;
sbit col1=P1^7;                 //列端口定义
sbit col2=P1^6;
sbit col3=P2^0;
sbit col4=P2^1;
sbit speak=P3^2;  
sbit datacs=P2^6;
sbit chipcs=P2^7;
unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,
               0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//共阴数码管显示段码0~9
/*数码管显示函数*/
uchar th0_f; //在中断中装载的 T0 的值高 8
uchar tl0_f; //在中断中装载的 T0 的值低 8
//T0 的值,及输出频率对照表
uchar code freq[36*2]={
                    0xA9,0xEF,//00220HZ ,1  //0
                    0x93,0xF0,//00233HZ ,1#
                    0x73,0xF1,//00247HZ ,2
                    0x49,0xF2,//00262HZ ,2#
                    0x07,0xF3,//00277HZ ,3
                    0xC8,0xF3,//00294HZ ,4
                    0x73,0xF4,//00311HZ ,4#
                    0x1E,0xF5,//00330HZ ,5
                    0xB6,0xF5,//00349HZ ,5#
                    0x4C,0xF6,//00370HZ ,6
                    0xD7,0xF6,//00392HZ ,6#
                    0x5A,0xF7,//00415HZ ,7
                    0xD8,0xF7,//00440HZ 1     //12
                    0x4D,0xF8,//00466HZ 1#    //13
                    0xBD,0xF8,//00494HZ 2     //14
                    0x24,0xF9,//00523HZ 2#    //15
                    0x87,0xF9,//00554HZ 3     //16
                    0xE4,0xF9,//00587HZ 4     //17
                    0x3D,0xFA,//00622HZ 4#    //18
                    0x90,0xFA,//00659HZ 5     //19
                    0xDE,0xFA,//00698HZ 5#    //20
                    0x29,0xFB,//00740HZ 6     //21
                    0x6F,0xFB,//00784HZ 6#    //22
                    0xB1,0xFB,//00831HZ 7     //23
                    0xEF,0xFB,//00880HZ `1
                    0x2A,0xFC,//00932HZ `1#
                    0x62,0xFC,//00988HZ `2
                    0x95,0xFC,//01046HZ `2#
                    0xC7,0xFC,//01109HZ `3
                    0xF6,0xFC,//01175HZ `4
                    0x22,0xFD,//01244HZ  `4#
                    0x4B,0xFD,//01318HZ `5
                    0x73,0xFD,//01397HZ `5#
                   0x98,0xFD,//01480HZ `6
                   0xBB,0xFD,//01568HZ `6#
                   0xDC,0xFD,//01661HZ `7     //35
                   };
unsigned char v,b,n,m;
void delay100ms()                     //延时函数
{

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表