transmit-programe.zip

  • redsun
    了解作者
  • C/C++
    开发工具
  • 23KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • 1 积分
    下载积分
  • 2
    下载次数
  • 2013-12-06 17:09
    上传日期
基于51单片机的2401RF 无线点菜系统的发射程序,好用的
transmit-programe.zip
  • transmit programe
  • RFmove
    4.2KB
  • RFmove.OBJ
    6.2KB
  • RFmove.C
    13.6KB
  • RFmove.Opt
    957B
  • RFmove.Uv2
    1.6KB
  • RFmove.hex
    2.4KB
  • RFmove.M51
    16.5KB
  • RFmove.LST
    23.2KB
  • RFmove.plg
    342B
  • RFmove_Uv2.Bak
    1.6KB
  • RFmove.CON
    2B
  • RFmove.lnp
    44B
  • RFmove_Opt.Bak
    961B
内容介绍
#include<reg52.h> //#include<INTRINS.H> typedef unsigned char uchar; typedef unsigned char uint; typedef unsigned char BYTE; ///温度引脚////////////////////////////////////////// sbit ds=P0^7; sbit Bill=P2^3; sbit power=P0^5; sbit workstart=P0^4; sbit workover=P0^3; ///RF24l01引脚/////////////////////////// sbit CE =P3^7; sbit CSN =P3^6; sbit MISO =P3^5; sbit MOSI =P3^4; sbit SCK =P3^3; sbit IRQ =P3^2; /////////////////////////////////////////////////////// //////////////////////////////////////////////////////////// ///////////////按键定义//////////////////////////////////// sbit Hor1 = P1^7; // 水平第一行 sbit Hor2 = P1^6; sbit Hor3 = P1^5; sbit Hor4 = P1^4; sbit Ver1 = P1^3; // 垂直第一列 sbit Ver2 = P1^2; sbit Ver3 = P1^1; sbit Ver4 = P1^0; #define ValKey1 1 // 定义键值 #define ValKey2 2 #define ValKey3 3 #define ValKey4 4 #define ValKey5 5 #define ValKey6 6 #define ValKey7 7 #define ValKey8 8 #define ValKey9 9 #define ValKey10 10 #define ValKey11 11 #define ValKey12 12 #define ValKey13 13 #define ValKey14 14 #define ValKey15 15 #define ValKey16 16 #define ValNull 0 //////////////////////////////////////////////// //////////////////////////////////////////////// //变量定义 uchar Date[7]; uchar buff[24] ; uchar flag ,temp1; uint temp; //参数temp一定要声明为 int 型 ; uchar wenducount1=0x35; //预设的温度报警值 uchar TxBuf[20]={0}; // uchar RxBuf[20]={0}; /////////////////////////////////////////////////////////////// //////////////////RF24L01定义/////////////////////////////// #define TX_ADR_WIDTH 5 // 5 bytes TX address width #define RX_ADR_WIDTH 5 // 5 bytes RX address width uchar const TX_ADDRESS[TX_ADR_WIDTH] = {0x34,0x43,0x10,0x10,0x01}; // Define a static TX address uchar const RX_ADDRESS[RX_ADR_WIDTH] = {0x34,0x43,0x10,0x10,0x01}; // Define a static RX address uchar bdata sta; sbit RX_DR =sta^6; sbit TX_DS =sta^5; sbit MAX_RT =sta^4; #define TX_PLOAD_WIDTH 20 // 20 bytes TX payload #define RX_PLOAD_WIDTH 20 // 20 bytes TX payload //****************************************************************// // SPI(nRF24L01) commands #define READ_REG 0x00 // Define read command to register #define WRITE_REG 0x20 // Define write command to register #define RD_RX_PLOAD 0x61 // Define RX payload register address #define WR_TX_PLOAD 0xA0 // Define TX payload register address #define FLUSH_TX 0xE1 // Define flush TX register command #define FLUSH_RX 0xE2 // Define flush RX register command #define REUSE_TX_PL 0xE3 // Define reuse TX payload register command #define NOP 0xFF // Define No Operation, might be used to read status register //***************************************************// // SPI(nRF24L01) registers(addresses) #define CONFIG 0x00 // 'Config' register address #define EN_AA 0x01 // 'Enable Auto Acknowledgment' register address #define EN_RXADDR 0x02 // 'Enabled RX addresses' register address #define SETUP_AW 0x03 // 'Setup address width' register address #define SETUP_RETR 0x04 // 'Setup Auto. Retrans' register address #define RF_CH 0x05 // 'RF channel' register address #define RF_SETUP 0x06 // 'RF setup' register address #define STATUS 0x07 // 'Status' register address #define OBSERVE_TX 0x08 // 'Observe TX' register address #define CD 0x09 // 'Carrier Detect' register address #define RX_ADDR_P0 0x0A // 'RX address pipe0' register address #define RX_ADDR_P1 0x0B // 'RX address pipe1' register address #define RX_ADDR_P2 0x0C // 'RX address pipe2' register address #define RX_ADDR_P3 0x0D // 'RX address pipe3' register address #define RX_ADDR_P4 0x0E // 'RX address pipe4' register address #define RX_ADDR_P5 0x0F // 'RX address pipe5' register address #define TX_ADDR 0x10 // 'TX address' register address #define RX_PW_P0 0x11 // 'RX payload width, pipe0' register address #define RX_PW_P1 0x12 // 'RX payload width, pipe1' register address #define RX_PW_P2 0x13 // 'RX payload width, pipe2' register address #define RX_PW_P3 0x14 // 'RX payload width, pipe3' register address #define RX_PW_P4 0x15 // 'RX payload width, pipe4' register address #define RX_PW_P5 0x16 // 'RX payload width, pipe5' register address #define FIFO_STATUS 0x17 // 'FIFO Status Register' register address //***************************************************************// // FUNCTION's PROTOTYPES // /****************************************************************/ // void SPI_Init(BYTE Mode); // Init HW or SW SPI BYTE SPI_RW(BYTE byte); // Single SPI read/write BYTE SPI_Read(BYTE reg); // Read one byte from nRF24L01 BYTE SPI_RW_Reg(BYTE reg, BYTE byte); // Write one byte to register 'reg' BYTE SPI_Write_Buf(BYTE reg, BYTE *pBuf, BYTE bytes); // Writes multiply bytes to one register BYTE SPI_Read_Buf(BYTE reg, BYTE *pBuf, BYTE bytes); // Read multiply bytes from one register //*****************************************************************/ /////////////////////////////////////////////////////////////////// //////////////////////////////////////////////////////////// //void inerDelay_us(unsigned char n); void init_io(void) ; void SetRX_Mode(void); unsigned char nRF24L01_RxPacket(unsigned char* rx_buf); void nRF24L01_TxPacket(unsigned char * tx_buf); void Delay1(unsigned int s); void inerDelay_us(unsigned char n); void init_NRF24L01(void); uint SPI_RW(uint uchar); uchar SPI_Read(uchar reg); void SetRX_Mode(void); void SetTX_Mode(void); uint SPI_RW_Reg(uchar reg, uchar value); uint SPI_Read_Buf(uchar reg, uchar *pBuf, uchar uchars); uint SPI_Write_Buf(uchar reg, uchar *pBuf, uchar uchars); unsigned char nRF24L01_RxPacket(unsigned char* rx_buf); void nRF24L01_TxPacket(unsigned char * tx_buf); ////////////////////RF24L01定义//////////////////////////// //////////////////////////////////////////////////////////////// //////////////////////////////////////////////// /******************************* delay ************************************/ void delay1ms(int k) //延时kMs { uint i,d; for (i=k;i>0;i--) { d=100; while(--d){;} } } ///////////////////////////////////////// /////////////以下为RF24L01程序////////////////////// //////////****************************************************** //***************************************************** void delay1us() {; ;} void inerDelay_us(unsigned char n) { for(;n>0;n--) // _nop_(); delay1us(); } void init_io(void) { inerDelay_us(100); CE=0; // chip enable CSN=1; // Spi disable SCK=0; // Spi clock line init high } /************************************************** Function: SPI_RW(); Description: Writes one byte to nRF24L01, and return the byte read from nRF24L01 during write, according to SPI protocol /**************************************************/ uchar SPI_RW(uchar byte) { uchar bit_ctr; for(bit_ctr=0;bit_ctr<8;bit_ctr++) // output 8-bit { MOSI = (byte & 0x80); // output 'byte', MSB to MOSI byte = (byte << 1); // shift next bit into MSB.. SCK = 1; // Set SCK high.. byte |= MISO; // capture current MISO bit SCK = 0; // ..then set SCK low again } return(byte); // return read byte } /**************************************************/ /************************************************** Function: SPI_RW_Reg(); Description: Writes value 'value' to regis
评论
    相关推荐
    • 无线点菜系统源码.zip
      Android无线点餐系统,包含开台、换台、合桌、点餐、wifi传输等功能.顾客在酒店中点菜时,一改传统的方式,采用掌上电脑,通过无线局域网进行点菜。电脑屏幕上可显示各种菜的菜名、菜样、特色、每道菜的特殊要求、...
    • linux 下的无线点菜系统
      在Linux下用Qt写的无线点菜系统。用Qt程序做出图形界面,再用SOcket和Client实现点菜系统的接收和发送。
    • 易得二维码无线点菜系统 点菜宝
      易得二维码无线点菜系统是基于HTML5的点菜系统,适用于任何平台。 服务器采用PHP+sqlite3,安装方便,安装后即可获得点菜系统功能。 请下载该文件,帮助、功能等请到官网查看。 官网:dc.zjhn.com
    • 无线点菜系统源码
      无线点菜系统源码 程序介绍: 主要功能 系统管理 前台管理 后台管理 系统管理 用户登录及修改 前台管理 餐桌状态 更换餐桌 结账 合并结账等 后台管理 配菜系统 厨房做菜 库存管理 添加菜单 菜信息 技术 数据库 ...
    • Android无线点菜系统
      Android 无线点菜基于Android2.3开发的无线点菜系统。系统充分利用Android的特点,界面设计漂亮美观,超炫。利用SQLite保存本地数据,采用Servlet与服务器进行交互。系统涉及到Android中大部分常用技术,方便开发...
    • Java开发的酒店无线点菜系统
      Java开发的酒店无线点菜系统,可以用于配合pda和无线网卡系统!!!
    • Android无线点菜系统
      资源包里面分为server端和client端,client端检查过了,资源符合。希望对有兴趣的朋友有帮助。由于本人也是穷人。。所以收点分。。好下载文件。
    • 无线点菜系统
      基于JAVA的无线点菜系统,是在Eclipse环境下的程序设计,代码比较齐全
    • 无线点菜系统 android server端
      此server端就是假设在计算机上的,用极短句作为服务器,手机端的android的程序作为客户端,数据库同样架设在计算机服务器上
    • 基于51单片机的无线点菜系统
      这是工程教育高做的点菜系统,基于51单片机,上位机采用qt,由于时间比较紧还有很多东西等待完善,基本实现点菜管理功能