1、程序实现功能:让8个排列的LED来回流动着亮1—》...——》8 1《——...《——8 箭头代表LED流动方向,先从1-8然后从8到1依次循环。程序已经测试过,运行正常//大家如果用此代码测试的话注意你的LED接在单片机的那
以串口中断为例:如:voidserial()interrupt 4{}和voidserial_uart()interrupt 4{}两个函数的功能都是定义串口中断函数。函数名字不一样不重要,重要的是函数名字后面的interrupt 4(中断向量表地址)要正确。
C51 新手编程(第五课) 串行口 今天介绍单片机怎样通过串行口与计算机通信。 1. 概述 通信实质就是以计算机为中心,通过某些通信线路与设备,对二进制编码的字母、数字、符号化及数字化声音、图像信息进行的传输
一定要包含这句:#include 定义这样的设备参数结构:typedef struct { uchar Soft_Edition[20]; //软件版本号 uchar Prequency_Nnm; //频组数 uchar channel; //信道数0-2 uint Time; //网卡复位时间 uchar state; /
3.3 STRING.H:串函数串函数通常将指针串作输入值。一个串就包括2个或多个字符。串结以空字符表示。在函数memcmp,memcpy,memchr,memccpy,memmove和memset中,串长度由调用者明确规定,使这些函数可工作在任何模式
#includeunsigned char counter=0;void delay()interrupt 1 using 1{TL0|=0x00;TH0=0x4C;counter++;}main(){unsigned char i=1;TMOD=1;TR0=1;EA=1;ET0=1;TH0=0x4C;TL0=0x00;while(1){if(counter==10){ counter=0; P1
#include #include "INC\\LCD1604.H" sfr LCD_INTER = 0x80;//数据总线接口 sbit LCDBUSY=LCD_INTER^7;//标志位sfr LCD_CONTROL = 0xA0;//数据总线接口 sbit LCDRS=LCD_CONTROL^0;//数据、指令选择 sbit LCDRW=LC
CRC校验又称为循环冗余校验,是数据通讯中常用的一种校验算法。它可以有效的判别出数据在传输过程中是否发生了错误,从而保障了传输的数据可靠性。CRC校验有多种方式,如:CRC8、CRC16、CRC32等等。在实际使用中,我
本文档包括单片机系统中常用到的时钟中断、通讯及键盘扫描等模块(见所附源程序)的说明。这些模块使用前后台系统模型。为达到最大的灵活性,需要在用户工程中定义config.h文件,在其中定义各模块可选参数的设置 , 而不
在程序设计中,变量具体可以分为四种类型:全局变量、静态全局变量、局部变量、静态局部变量。这几种变量类型对函数的可重入产生的重大的影响,因为不同的编译器采用不同的策略。 针对51的存储区有限,keil c
引言 8051内核单片机是一种通用单片机,在国内占有较大的市场份额。在将C语言用于51内核单片机的研究方面,Keil公司做得最为成功。由于51内核单片机的存储结构的特殊性,Keil C51中变量的使用与标准C有所不同。正确
********************************************************************************************************** DETERMINE IF WE HAVE A LEAP YEAR** Description : This function determines whether the 'ye
typedef struct { uchar DC0_ALA:1; //电源0告警 uchar DC1_ALA:1; //电源1告警 uchar AC_ALA:1; //停电告警 uchar UN_H_ALA:1; //同频信道机失锁告警 uchar UN_L_ALA:1; //异频信道机失锁告警 uchar FAR_ALA:1; //远
1、变量绝对地址定位1) 在定义变量时使用 _at_ 关键字加上地址就可。unsigned char idata myvar _at_ 0x40;把变量 myvar 定义在 idata 的 0x40 处, 在 M51 文件中可以找到这麽一行 IDATA 0040H 0001H ABSOLUTE
因为Silabs IDE内部自带编译器,不过是有2K限制Keil for C51的版本,如果程序稍大的话,会无法进行下去,除非注册了。现在对在Silabs IDE下怎么配置Keil的编译器做一下说明: 当你进行编译的时间出现上面的对话框,就
1.特殊功能寄存器的操作注意事项在操作特殊功能寄存器时,要注意其他各位的影响。例如,TMOD定时器的操作。它控制定时器0和定时器1,高四位控制定时器1,低四位控制定时器0。当我们用字节操作其内容时,一次赋值就是
I2C串行总线标准驱动程序(C51)-万能程序/*------------------------------------------------------------------------------------------[文件名] I2C.c[版本] 1.1b==============================================
//-------------------------------------------------------------------------------------------------------------------//程序名称:串口通信程序//功能:实现单片机与PC之间的串口通信,PC向单片机发送,单片机
#include //-----------------------------------------------------------------void UART_init(); //串口初始化函数void COM_send(void); //串口发送函数char code str[100]= "计算机你好\\r\\n";char code str1[20]
从数据存储类型来说,8051系列有片内、片外程序存储器,片内、片外数据存储器,片内程序存储器还分直接寻址区和间接寻址类型,分别对应code、data、xdata、idata以及根据51系列特点而设定的pdata类型,使用不同的存储