用keil软件编写控制51单片机程序

定义一个二维数组:调试时数组里的值都是0xff,数组里的值是定时器的初值(音乐音调)
unsigned char idata f_TAB[][2]={{Dol,Doh},{Rel,Reh},{Mil,Mih},{Dol,Doh},/**/{Dol,Doh},{Rel,Reh},{Mil,Mih},{Dol,Doh},
/**/{Mil,Mih},{Fal,Fah},{Sol,Soh},/**/{Mil,Mih},{Fal,Fah},{Sol,Soh},
/**/{Sol,Soh},{Lal,Lah},{Sol,Soh},{Fal,Fah},{Mil,Mih},{Dol,Doh}, //音调
/**/{Sol,Soh},{Lal,Lah},{Sol,Soh},{Fal,Fah},{Mil,Mih},{Dol,Doh},/**/{Dol,Doh},{sol,soh},{Dol,Doh},
/**/{Dol,Doh},{sol,soh},{Dol,Doh},/**/{0xff,0xff}};

第1个回答  2012-11-30
你再把程序发具体点...把数组定义成unsigned char code试试,其中code还可以放在前面..来自:求助得到的回答
第1个回答  2012-11-30
看看你的宏定义有没有问题,单单这个数组看不出问题的。
第2个回答  2012-11-29
我的百度空间里面,有单片机发音的程序。
第3个回答  2012-11-29
你是要蜂鸣器发声吗?

如何用KeilC编写单片机程序?
1、首先在电脑桌面中,双击“Keil4”图标打开软件。2、点击上部菜单栏中的“工程”,在下拉菜单中选择“新建工程文件”。3、把工程文件保存到目标文件夹里去,工程文件命名可以随意写入一些数字。4、选择单片机类型,根据实际情况进行选择,例如“Atmel”中的“89C52”。5、点击“文件”,在“文件”的下拉...

求大神在keil上帮写51单片机C语言程序
\/\/第一个实验:\/\/假设8个LED阴极指向单片机,D11连接P0.1,D12连接P0.2 ... D18连接P0.7\/\/假设K1按键在P2.3引脚#include<reg51.h>#include<intrins.h>sbit k1=P2^3;\/\/假设K1按键在P2.3引脚void main(){P0=0xfe;while(1){if(k1==0){while(k1==0);P0=_crol_(P0,1);}}}...

如何使用keil 5 编写 51单片机 工程
将Keil处的内容改成与MDK5下TOOLS.INI文件中如下行代码:RTEPATH="D:\\Keil_v5\\ARM\\PACK"Keil_v5处的内容一样。目的是让软件在MDK5安装目录内找到C51文件。5.完成以上操作,就可以将安装的Keil C51软件卸载,在MDK5软件上就可以编译C51单片机程序了。亲自测试可行。来自:网页链接 ...

51单片机如何编译成程序?
1、首先在电脑上用proteus软件打开目标文件。然后用鼠标左键双击51单片机图标,如图所示。然后在出现的窗口中,点击下图中的文件夹图标。然后在电脑文件夹中找到编译好的HEX文件导入。2、keil里编译时,设置输出文件为.HEX文件格式。然后在proteus中打开CPU属性,在程序设定栏填入HEX文件路径及名称(也可以通...

用keil如何给51单片机烧写程序?
先在KEIL中编译生成HEX文件 (如果编译完了目录内没有找到HEX文件,在项目设置里,C51项中,勾上生成HEX文件选择)再用COM51来烧。(这个参照软件说,较简单。一般先载入HEX文件再点个AUTO就可以了)

用keil编的51单片机C程序,不能实现其功能
include<reg51.h> \/\/sbit D=P0; \/\/sbit 是位定义。P0不必定义。void main(){while(1) \/\/ while(1); 这里加了分号,程序就在while(1)这里循环了,不会到括号里 { P0=0xfc; \/\/D=0xfc;} }

如何用Keilμvision4写51单片机的lcd驱动?
1、首先我们打开Keil μVision编译器,新建一个工程,然后保存在硬盘上的位置,然后选择Atmel-AT89C51单片机为模型,并启动器添加STARTUP.A51文件,然后在当前目录下新建一个C文件,并将其添加入工作路径。2、导入51单片机的头文件以及LCD1602的头文件。3、创建一个延时函数,可以传入想要具体延时的时长,...

51单片机,使用keil软件,4字节加法或减法子程序
程序如下:RESULT equ 30H ;和数的地址 ORG 0000H ;实验数据如下:MOV 20H, #22H ;加数1 MOV 21H, #33H MOV 22H, #44H MOV 23H, #0F3H MOV 24H, #12H ;加数2 MOV 25H, #34H MOV 26H, #56H MOV 27H, #78H MOV R0, #20H ;...

关于keil 51单片机编程
假如是无源蜂鸣器,单片机控制引脚输出的方波频率高,即延时短,而LED闪烁延时长。其实,不必写两次,分别输出D1=0; D1=1;这么写就行:D1=!D1;delay(500);再说蜂鸣器与LED同时控制,用一个变量计数,假设用n,主循环程序的写法,while(1){ for(n=100;n>0;n--)\/\/调节n的初值大小,来调节...

怎么用keil写汇编程序并且下载到51单片机中去,我试了但硬件没反应,求详...
写一个汇编程序步骤如下。一,运行keil,建一个工程。二,新建一个文件,另存为后缀为asm的汇编文件。三,将这个文件载入刚建的工程。四,现在可以录入代码了。五,录入完成后编译调试直到没有错误和警告,生成HEX文件。六,将HEX文件下载到单片机,运行看效果。七,修改软件直到达到预期效果。

相似回答