AVR单片机系统开发经典实例部分源程序

源代码在线查看: main._c

软件大小: 1054 K
上传用户: dongjunxi126
关键词: AVR 单片机 系统开发
下载地址: 免注册下载 普通下载 VIP

相关代码

				/***************************************
				*2008,浙江工业大学信息与控制研究所
				*All rights reserved
				*
				*文件名称:main.c
				*摘    要:无线接收发送测试程序(发送端)
				*
				*当前版本:1.0
				*作    者:董齐芬
				*完成日期:2008.8.20
				****************************************/
				
				#include "cc2420.h"
				#include "spi.h"
				
				unsigned char Data_TXFIFO[TX_length];    //要写入TXFIFO中的数据,包括帧长度,MAC头,MAC有效负载等部分
				unsigned char serial_num=0;         //数据序号
				
				
				void main(void)
				{
				  unsigned char i;
				  unsigned int j;
				  
				  initled();
				  init_spi();
				  
				  LED_YELLOW;
				  PORTB |=(1				  PORTB |=1				  PORTE |=1				  
				  Data_TXFIFO[0]=TX_length+1;    //第一字节为帧长度,不包括长度域本身的字节,但包含帧校验序列2字节
				  
				  //帧控制域,无安全,确认要求,数据帧,包含16位的目标地址,源地址,目标PAN标识符,源PAN标识符
				  Data_TXFIFO[1]=0x88;     //高字节
				  Data_TXFIFO[2]=0x01;     //低字节
				  
				  //目的PAN标识符
				  Data_TXFIFO[4]=0x23;
				  Data_TXFIFO[5]=0x45;
				  
				  //目的地址
				  Data_TXFIFO[6]=0x15;
				  Data_TXFIFO[7]=0x73; 
				  
				  //源PAN标识符
				  Data_TXFIFO[8]=0x86;
				  Data_TXFIFO[9]=0x49;
				  
				  //源地址
				  Data_TXFIFO[10]=0x59;
				  Data_TXFIFO[11]=0x04;
				  
				  //有效负载
				  for (i=12;i				  {
				    Data_TXFIFO[i]=i-12;
				  }
				  
				  Set_Configure();     //初始化设置配置字
				  PwDown_Idle();       //从掉电模式转换到空闲模式
				  
				  j=0;
				  while(1)
				  {
				    j++;
					if (j==2048)
					{
					  break;
					}
					AllStates_Idle();
					//序列号
					Data_TXFIFO[3]=serial_num;
					serial_num++;
					if(serial_num==250)
					{
					  serial_num=0;
					}
					
					Write_TXFIFO(TX_length,Data_TXFIFO);  //将数据写入到TXFIFO中
					Idle_Tx();    //启动发送
					
					Delay10ms();
					Delay10ms();
				  }
				  LED_RED;
				  while(1){;}
				}
					
					
					
					
				  
				  
				  			

相关资源