激情综合丁香-激情综合六月-激情综合婷婷亚洲图片-激情综合图区-激情综合网五月


主題:請幫忙分析一下

  共有45875人關注過本帖    
帥哥喲,離線,有人找我嗎?
lqk
1樓 信息 | 搜索 | 郵箱


加好友 發短信
  發帖心情 Post By:2009-9-3 16:04:00   [顯示全部帖子]

當以5ms為周期或更快速度發送數據時,CAN接收線程將以5ms或更快的速度刷新你的buffer,而你的數據解析線程以5ms為周期工作,這樣有數據就會丟失或出錯
建議在CAN接收線程中用一環形buffer緩存收到的數據。

  單帖管理 | 引用 | 回復 回到頂部
帥哥喲,離線,有人找我嗎?
lqk
2樓 信息 | 搜索 | 郵箱


加好友 發短信
  發帖心情 Post By:2009-9-3 17:10:00   [顯示全部帖子]

在接收線程中,只要收到一幀數據就放入環形buffer中
在解析線程中解析環形buffer中的數據,一直將buffer中的數據讀空為止,對環buf操作時要注意線程同步.

  單帖管理 | 引用 | 回復 回到頂部
帥哥喲,離線,有人找我嗎?
lqk
3樓 信息 | 搜索 | 郵箱


加好友 發短信
  發帖心情 Post By:2009-9-4 9:22:00   [顯示全部帖子]

你的同步是不是在解析線程解析數據時,接收線程就不能向ArrayList添加數據了.我覺得這是根你兩個線程的配合有關系。

  單帖管理 | 引用 | 回復 回到頂部
帥哥喲,離線,有人找我嗎?
lqk
4樓 信息 | 搜索 | 郵箱


加好友 發短信
  發帖心情 Post By:2009-9-4 10:49:00   [顯示全部帖子]


數據接收線程:
bResult = CAN_GetNextReceivedFrame( ceCAN->m_hCAN, &ceCAN->RxMFrame );
if( bResult )
{
    memcpy( ceCAN->ReceiveBuf[ceCAN->m_bufPutIdx], &ceCAN->RxMFrame, 13 );
    ceCAN->m_bufPutIdx = ( ceCAN->m_bufPutIdx+1 )% BUF_MAX;
}

數據解析線程:
    while( m_bufGetIdx != m_bufPutIdx )
    {
        memcpy( buf, ReceiveBuf[m_bufGetIdx], i );
        //數據解析
        m_bufGetIdx = (m_bufGetIdx+1) % BUF_MAX;
    }

兩線程不需要同步

  單帖管理 | 引用 | 回復 回到頂部

返回首頁

請幫忙分析一下

用戶名:
            驗證碼: 驗證碼,看不清楚?請點擊刷新驗證碼
內容:
主站蜘蛛池模板: 在线观看 一区二区 麻豆| 精品国产自在现线看久久| 最新亚洲人成网站在线影院 | 国产日韩免费视频| 黄色男女视频| 草草国产| 国产亚洲一区二区精品| 不卡一区二区在线观看| 欧美一级黄色片视频| 国产成人精品免费视| 91久久国产综合精品女同国语| 青草视频在线免费| 亚洲精品影院| 人妖另类亚洲xxxx| 日韩一级免费毛片| 永久在线观看视频| 免费国产一区二区三区四区| 国产精品天天看天天爽| 黄色工厂在线播放| 国产精选在线| 久久国产视频在线观看| 欧美日韩国产亚洲一区二区三区| 亚州中文字幕| 777精品成人影院| www国产永久免费视频看看| 久久视频精品a线视频在线观看| 亚洲精品美女国产一区| 欧美黄色tv| 国产一区二区三区高清视频| 国产成人系列| 国产成人深夜福利在线观看| 国产性生大片免费观看性| 国产精品亚洲欧美| 国产精品天仙tv在线观看| 国产精品一区二区三区久久 | 免费人成视网站在线不卡| 亚洲一区二区综合| 一级毛片ab片高清毛片| 日本精品久久久中文字幕| 中文字幕一区二区在线观看| 伊人天天|