315M单片机无线解码--HS2262

发布者:花开堂前最新更新时间:2016-09-12 来源: eefocus关键字:315M  单片机  无线解码  HS2262 手机看文章 扫描二维码
随时随地手机看文章
发上程序前记一个C语言小知识,免得下次犯同样错误!
  unsigned char i=0x01;
  i=i<<1+1;
其结果i的值为4,而不是3。
C语言除法运算中,余数的符合要求和被除数的符号一致,比如:2/(-2); 结果为FF(-1), 2%(-2)=0
/********************************************************/
#include
 
unsigned char counter=0;
unsigned char Receive[3];
sbit RemPin=P0^0;
static bit flag=0;
sbit LED=P2^0;
sbit LED1=P2^5;
void delay( )
{
  unsigned char i;
  for(i=0;i<50;i++);
}
void delay_nms(unsigned int n)       
{
    unsigned int i=0,j=0;
    for (i=n;i>0;i--)
     for (j=0;j<1140;j++);  
}
 void  scan()
  unsigned char i=0;
  unsigned char j=0;
  unsigned char Time=10;
  unsigned int count=0;
  Receive[0]=Receive[1]=Receive[2]=0;
  while(--Time)
  {
  count=0;
    while(RemPin)
 {
   count++;
   delay();
   if(count>30)
   {
     break;
   }
 }
 if((count>25)||(count<10))
 {
   continue;
 }
 count=0;
    while(!RemPin)
    {
   count++;
      delay( ); 
   if(count>660)
   {
     break;
   }
    }
 if((count>655)||(count<600))
  {
    continue;
  }
 count=0;
 for(j=0;j<3;j++)
  {
     for(i=0;i<8;i++)
  { 
    while(RemPin);
    count=0;
    while(!RemPin)
    {
      count++;
   delay( );
   if(count>=85)
   {
     return;
   }
    }
       if((count>15)&&(count<42))
     {
    //counter=count;
      Receive[j]=Receive[j]<<1;
       Receive[j]=Receive[j]+0x01;
   }
    else if((count>45)&&(count<75))
      {
         Receive[j]=Receive[j]<<1;
     //counter=count;
   }
    else
      {
     //LED1=~LED1;
     Receive[0]=Receive[1]=Receive[2]=0;
     counter=count;
     return;
      }
    while(RemPin);
    }   
  }
  flag=1;
  //LED=~LED;
   }
}
 void main()
{
 while(1)
 {
   scan();
   //P1=counter;
   if(flag)
   { 
     flag=0;
  P1=Receive[2];
  P1=~P1;
  delay_nms(100);  
   }
   }  
}
关键字:315M  单片机  无线解码  HS2262 引用地址:315M单片机无线解码--HS2262

上一篇:怎么用C8051FF330D单片机设计恒流源控制器
下一篇:ADC0809引脚图与接口电路

推荐阅读最新更新时间:2024-03-16 15:09

单片机变频pwm实验程序设计与原理
利用stc的一款 单片机 提供的 PWM 实现变频输出。程序将变频pwm输出到 LED 上作测试。 #include reg52.h sfr CC ON = 0xD8; sfr CMOD = 0xD9; sfr CL = 0xE9; sfr CH = 0xF9; sfr CCAP0L = 0xEA; sfr CCAP0H = 0xFA; sfr CCAPM0 = 0xDA; sfr CCAPM1 = 0xDB; sbit CR = 0xDE; sbit led = P2^0; unsigned char duty = 0x80; unsigned int fre = 0xffff; void ti
[单片机]
ucosII在51内核单片机上的移植
自嵌入式系统开发以来,很长时间都采用前后台系统软件设计模式:主程序为一个无限循环,单任务顺序执行。通过设置一个或多个中断来处理异步事件。   这种系统对于简单的应用是可以的,但对于实时性要求比较高的、处理任务较多的应用,就会暴露出实时性差、系统可靠性低、稳定性差等缺点。   μC/OS-II 是一种基于优先级的抢占式多 任务实时操作系统,包含了实时内核、任务管理、时间管理、任务间通信同步(信号量,邮箱,消息队列)和内存管理等功能。它可以使各个任务独立工作,互不干涉,很容易实现准时而且无误执行,使实时应用程序的设计和扩展变得容易,使应用程序的设计过程大为减化。而且它内核源代码公开,可移植性强,为编程人员提供了很好的一个软件平台。
[单片机]
51单片机与NRF24L01无线模块连接图
5V的51单片机与NRF24L01无线模块之间连接问题,从他们那得知连接不当会出现以下问题: 1、为NRF24L01无线模块电源电压是3.3V,但是插上无线模块,用万表测量模块的电源电压达到4.几伏,这个很费解,为其供电的1117-3.3V明明输出是3.3V,插上模块电源电压就升高了呢,这是因为:51单片机I/O口的5V电压从NRF24L01的SPI口倒灌而导致的!所以连接不当就会给你带来不必要的损失。 2、还有一种可能是导致无法通讯,NRF24L01的程序比较简单,如果程序没问题,那么问题一定是出现在硬件上。很多朋友都说为什么我是无线模块无法通讯呢?调了一个星期,甚至一个月,都没有结果。人已经弄得很疲惫,都不想看到NRF24
[单片机]
51<font color='red'>单片机</font>与NRF24L01<font color='red'>无线</font>模块连接图
一种基于KEELOQ的改进加密算法及其在单片机中的实现技术
摘要:讨论了Microchip公司的KEELOQ加解密算法的实现机制,通过引入随随机数,提出了一种新的改进算法,并给出了其在单片机中的实现方案。该算法具有简单实用、所需硬件资源少、传输效率和安全性相对较高等优点,适用于需要数据加密的小型无线数据传输系统,具有广阔的应用前景。 关键词:加密算法 KEELOQ 单片机 跳码技术 当今的编解码电路已经朝着高度集成化和微电脑化发展。像普通的固定编解码芯片和MC145026/145027、PT2262/2272等已被广泛应用于公用系统中,给生活带来了方便。然而这些芯片不能保证系统的安全性。由于这些系统每次发送的数据流一模一样,只是高低电平的组合,第三方面通过捕捉设备,一旦用户信号出现,
[单片机]
如何用单片机代替专用I/O接口芯片方法简介
  采用单片机设计液位监控仪是很通用的做法。如果要测量的液位有很多路(16路以上),每路要求能滚动显示1年内每班、每日、每月的输入输出总量(1日3班),正常或意外停电数据不丢失,人机交互能力要强(要设置适当数量的按键及采用LCD显示),并且每路液位要求对应2路控制输出信号(液罐液体输入控制和输出控制),配置微型打印机端口,设置声音报警,所有这些无疑需要很多的I/O端口来支持,单凭一个单片机是办不到的,需要扩展I/O端口。在此设计中,笔者认为采用专用I/O扩展芯片有较多的弊端,权衡利弊,选择了用单片机来代替专用I/O接口芯片的方法。   1 专用 I/O芯片与单片机用作I/O芯片的对比   ①专用I/O接口芯片的I/O口数量不
[单片机]
单片机执行程序的过程
为了加深初学者对51单片机指令的理解,现在把指令执行的过程在此详细说明,希望对你有启发! 单片机执行程序的过程,实际上就是执行我们所编制程序的过程。即逐条指令的过程。计算机每执行一条指令都可分为三个阶段进行。即取指令-----分析指令-----执行指令。 取指令的任务是:根据程序计数器PC中的值从程序存储器读出现行指令,送到指令寄存器。 分析指令阶段的任务是:将指令寄存器中的指令操作码取出后进行译码,分析其指令性质。如指令要求操作数,则寻找操作数地址。 计算机执行程序的过程实际上就是逐条指令地重复上述操作过程,直至遇到停机指令可循环等待指令。 一般计算机进行工作时,首先要通过外部设备把程序和数据通过输入接口电路和数据总线
[单片机]
瑞萨电子与台积电联手打造微控制器的生态系统
全球领先的高级半导体和解决方案的供应商瑞萨电子株式会社(TSE:6723,董事长:赤尾泰,以下简称“瑞萨电子”) 与台湾积体电路制造(TSMC)(总公司:台湾新竹、日本法人:TSMC日本株式会社、横浜市西区、董事长:小野寺诚、以下简称TSMC)——今天(28日)共同宣布,双方已经签署协议,将在微控制器(MCU)技术方面的合作扩大至40纳米嵌入闪存(eFlash)的制造,以生产应用于下一代汽车及家电等消费类产品的微控制器。瑞萨电子先前已委托TSMC生产90纳米工艺的微控制器,本次合作方案中,瑞萨电子将委托TSMC生产40纳米工艺及更先进生产工艺的微控制器。 结合瑞萨电子支持高可靠性及高速的金属氧化氮氧化硅(Metal-Oxide-
[半导体设计/制造]
基于PIC单片机开发的高精度数据采集器
1 ADS1210引脚及功能   ADS1210是一种高精度、宽动态范围,采用单5V电源供电,具有24位分辨率的新型A/D转换器。封装形式有18脚双列直插式和18线贴片式,引脚功能描述如表1。   ●指令寄存器(INSR)   指令寄存器是一个8位寄存器,它指明了系统是进行读操作还是写操作,并确定读/写操作的字节长度以及读/写操作寄存器的起始地址。     ●命令寄存器(CMR)   命令寄存器是ADS1210的关键,它控制着ADS1210的所有特性功能。一旦串口时钟的下降沿将数据字节的最后一位写入命令寄存器,新的模式就开始生效。命令寄存器控制ADS1210所选用的选项和操作模式,包括可编程增益放大器的增
[单片机]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved