利用单片机(或单板机)奏乐大概是无线电爱好者感兴趣的问题之一。本文从单片机的基本发间实验出发,谈谈音乐程序的设计原理,并给出具体实例,以供参考。 单片机的基本发音实验 我们知道,声音的
学习了一段时间,有了一定经验的朋友,肯定会觉得不过瘾,老是纸上谈兵,点个LED有什么用?能不能来点实际点的。好的,我们就安排一点实际一点的,这次是点亮真的电灯了,不过要注意安全,莫要发生触电
许多单片机的应用中都会使用到串行口与电脑的串行口相连接,进行数据的传输或控制命令的发送与接收。单片机的串口有很大一部分是使用TTL电平标准的(PIC的可以直接连接在电脑串口),它的逻辑1电平是5V
先从ASCII说起。ASCII是用来表示英文字符的一种编码规范,每个ASCII字符占用1个字节(8bits) 因此,ASCII编码可以表示的最大字符数是256,其实英文字符并没有那么多,一般只用前128个(最高位为0),其
现在单片机的程序设计,C51已经得到广泛的推广和应用,算是单片机的主流设计程序,甚至可以说作为单片机开发人员必须要掌握的一门语言了。作为一门工具,最终的目的就是实现功能。在满足这个前提条件
支持ISP的51单片机AT89S系列 ATMEL公司新推出的可在编程的MCS51兼容单片机AT89S51/52将全面替代AT89C51/52单片机。 AT89S系列单片机有以下特点: 兼容MCS51微控制器 4/8K字节FLASH存贮器支持在系统
在ATMEL的89S51系列的89S51与89C51功能相同。指令兼容。HEX程序无需任何转换可以直接使用。89S51只比89C51增加了一个看门狗功能。89S51的其它功能可以参见89C51的资料。 看门狗具体使用方法如下:
单片机的时钟信号用来提供单片机片内各种微操作的时间基准,复位操作则使单片机的片内电路初始化,使单片机从一种确定的初态开始运行。时钟电路:8031单片机的时钟信号通常用两种电路形式得到:内部振荡
如果在中断服务函数ISR中使用寄存器,那么必须处理好using的使用问题:1、中断服务函数使用using指定与主函数不同的寄存器组(主函数一般使用Register bank 0)。2、中断优先级相同的ISR可用using指定相
C51中变量的空间分配几个方法1、 data区空间小,所以只有频繁用到或对运算速度要求很高的变量才放到data区内,比如for循环中的计数值。2、 data区内最好放局部变量。因为局部变量的空间是可以覆盖的(某个
任何一款MCU,其基本原理和功能都是大同小异,所不同的只是其外围功能模块的配置及数量、指令系统等。对于指令系统,虽然形式上看似千差万别,但实际上只是符号的不同,其所代表的含义、所要完成的功能
我们在用c语言编程是往往第一行就是reg51.h或者其他的自定义头文件,我们怎么样来理解呢?1)“文件包含”处理。程序的第一行是一个“文件包含”处理。所谓“文件包含”是指一个文件将另外一个文件的内
C语言中的指针和数组几乎可以互换,数组名可认为是一个常量指针,指针可用来完成涉及数组下标的操作。e.g.int * nPtr;int Array[size];(1)数组与指针等价nPtr = Array;或者nPtr = &Array[0];(2)引
1. Warning 280:’i’:unreferencedLOCal variable说明局部变量i 在函数中未作任何的存取操作,解决方法消除函数中i 变量的宣告2 Warning 206:’MusIC3’:missing function-prototype说明Music3( )函数未
8051系列MCU的基本结构包括:32个I/O口(4组8bit端口);两个16位定时计数器;全双工串行通信;5个中断源(2个外部中断、2个定时/计数器中断、1个串口输入/输出中断),两级中断优先级;128字节内置RAM