void call_user_sent()
{
static bit data_flag=0;
static unsigned char a=0,b=0,c=0;
TRISB5=1;
TRISB2=0;
if(!data_flag) //起始头
{
c++;
if(c==1) RB2=0;
if(c==41) RB2=1;
if(c>=51)
{
c=0;
data_flag=1;
}
}
if(data_flag) //数据开始
{
c++;
if(c==1) RB2=0;
if(c==4)
{
if(a==0)
{
if((send_user[a]&0x80)!=0) RB2=1;
}
else if(a!=0)
{
if((send_user[a]&0x08)!=0) RB2=1;
}
}
if(c==7)
{
if(a==0)
{
if((send_user[a]&0x80)==0) RB2=1;
}
else if(a!=0)
{
if((send_user[a]&0x08)==0) RB2=1;
}
}
if(c>=10)
{
c=0;
b++;
send_user[a]<<=1;
if((a==0)&&(b>=8))
{
b=0;
a++;
}
if((a!=0)&&(b>=4))
{
b=0;
a++;
if(a>=CODELEN)
{
a=0;
data_flag=0;
sent_user_flag=0;
}
}
}
}
}
void call_user_rece()
{
static bit hl;
static bit hl_flag;
static unsigned char low=0,high=0,count=0;
static unsigned char temp=0,rece_flag=0;
static unsigned char p,q;
TRISB5=1;
TRISB2=1;
hl=RB5;
if(hl)
{
if(!hl_flag)
{
hl_flag=1;
low=count;
count=0;
}
else count++;
}
else
{
if(hl_flag)
{
hl_flag=0;
high=count;
count=0;
if(rece_flag)
{
temp<<=1;
if((4<9))
{
temp=temp|0x00;
}
else if((0<4))
{
temp=temp|0x01;
}
q++;
if((p==0)&&(q>=8))
{
q=0;
rece_user[p]=temp;
p++;
}
if((p!=0)&&(q>=4))
{
q=0;
rece_user[p]=temp&0x0f;
p++;
if(p>=CODELEN)
{
p=0;
rece_flag=0;
if((0xee==rece_user[0])||(0xfa==rece_user[0]))
{
Alarm(); //报警
}
rece_user_proc=1; //执行接收处理函数
}
}
}
else
{
if(high>30)
{
p=0;
q=0;
temp=0;
rece_flag=1;
}
}
}
else count++;
}
}
上一篇:喜欢单片机的同学快来看啊,过来人的经验告白
下一篇:按键检测非阻塞代码(2种模式)
推荐阅读
史海拾趣
在电子产品市场竞争日益激烈的背景下,Comax Industrial Co Ltd公司始终坚持品质至上的原则。公司建立了严格的质量管理体系,从原材料的采购到生产制造的每一个环节都进行严格把控。通过持续改进和优化生产流程,公司不断提升产品的品质与性能。这种对品质的执着追求,使得Comax的产品在市场上赢得了广泛的认可与信赖。
然而,好景不长。奥斯汀公司在全力投入研发的WW1车系上遭遇了挫折,销售不佳导致公司濒临破产。在这个关键时刻,奥斯汀汽车公司通过研发新的车型来寻求突破。1922年,Seven车系成功上市,凭借其卓越的性能和合理的价格,使得奥斯汀汽车转危为安,重新获得了市场的认可。
AUSTIN公司的创始人是赫伯特·奥斯汀(Herbert Austin)。在1905年,他制造了第一辆奥斯汀汽车,这标志着奥斯汀品牌的诞生。随着产品的推出,奥斯汀汽车很快获得了市场的认可,销量逐年攀升。直到1914年左右,奥斯汀始终是英国汽车工业的领导者,其汽车产品以高质量和可靠性而闻名。
在2009年,Accuride公司面临了严重的财务困境,其美国公司申请了破产保护。然而,这一困境并未击垮Accuride,反而成为其重生的契机。通过与债权人达成协议,Accuride成功地将公司的大部分所有权转让给债券持有人,并进行了重组。这一举措不仅缓解了公司的财务压力,还为其未来的发展奠定了坚实的基础。
Digi International在无人机技术方面也取得了重要进展。公司与Draganfly公司合作,为新型Draganflyer X4-P无人机配备了无线XBee®模块,实现了更远距离的控制和实时数据传输。这一技术突破不仅提高了无人机的性能和应用范围,也为Digi International在无人机领域的发展开辟了新的道路。通过与Draganfly的合作,Digi International进一步巩固了其在物联网和M2M领域的技术领先地位。
Digi International在无人机技术方面也取得了重要进展。公司与Draganfly公司合作,为新型Draganflyer X4-P无人机配备了无线XBee®模块,实现了更远距离的控制和实时数据传输。这一技术突破不仅提高了无人机的性能和应用范围,也为Digi International在无人机领域的发展开辟了新的道路。通过与Draganfly的合作,Digi International进一步巩固了其在物联网和M2M领域的技术领先地位。
有调通过marvell wifi 8686 sdio接口驱动来讨论下??? 正在调sdio接口的wifi 8686驱动,sdio确认好的,读写寄存器,加载固件都没问题。有以下问题: 1. 我是直接把驱动放在bsp中编的,wince启动后自动加载wifi驱动, 并且这个wifi驱动会自行搜索热点。我的理解是wifi驱动加载固件启动完wifi芯片注册网络 ...… 查看全部问答∨ |
|
SESSION_POS_S *pTestpos1, *pTestpos2, *pTestpos3, *pPos; LIST *pMyList = NULL; int NodeIndex = 0; DPRINT("-------- lstAdd测试 -------\\n ...… 查看全部问答∨ |
|
用电位器输出一个电压值,从我watch窗口看到的ADCresult值都在变化,变化比较大。如0xabc0,b为都会能差4,帮忙分析一下可能那里设置不对。谢谢!… 查看全部问答∨ |
|
想请问你一下 那个ez430-rf2500为什么ed连上电池两个灯还是不闪。。ap的红灯在闪烁。。并且PC上温度只有一个ap温度显示。。就是说ed的没有反应。。好像是没有连接到网络。。后来又折腾了一下。。现在ap的红绿灯都在闪。。但是ed还是没反应。 ...… 查看全部问答∨ |
|
#include<reg51.h> // 包含51单片机寄存器定义的头文件unsigned char code Tab[ ]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; //数字0~9的段码unsigned char int_time ; //中断次数计数变量unsigned ...… 查看全部问答∨ |
module main ( ....); wire clk1MHz; // 产生1MHz的时钟波形 // 输入为20MHz的时钟 clock_divider instT1MHz &nb ...… 查看全部问答∨ |