本文主要是介绍opnet之自行设计csma/ca,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
自行设计的csma/ca
init
初始化:
- 初始化TV
- 读入仿真属性和对象属性到SV
SRC_RX
if(pcs_state == 0)&&(busy == 0)
{
next_event_data = op_intrpt_schedule_self(op_sim_time()+difs,ROB_INIT);
busy == 1; //这个busy应该只属于这个节点所有
rob=-1
}
//这个if语句不执行的话包会在队列中堆积
SENSE
pcs_state = (int)op_stat_local_read(op_intrpt_stat());
if(pcs_state == 1)
{
删除在SRC_RX预设的ROB_INIT自中断
}
//如果sense到信道空闲,也会查看队列中是否有包,有发送
if(pcs_state == 0)&&(busy == 0)&&(队列有包)
{
next_event_data = op_intrpt_schedule_self(op_sim_time()+difs,ROB_INIT);
busy == 1; //这个busy应该只属于这个节点所有
rob=-1
}
ROB
if(rob == -1)
{
rob = aSlotTime*(int)op_dist_uniform
这篇关于opnet之自行设计csma/ca的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!