新聞中心

        EEPW首頁 > 手機與無線通信 > 設計應用 > 自動光學檢測儀通信系統設計

        自動光學檢測儀通信系統設計

        作者: 時間:2010-12-03 來源:網絡 收藏

        2.2 總線硬件電路設計
        為了保證控制系統的技術指標,完成實時處理和電路保護功能,并考慮到系統的擴展性,采用16位微系列中的XCl64CS。該芯片尺寸小、運算速度高,并集成有Twin模塊,該模塊用于控制幀的自動發送和接收。該模塊有2個全功能的節點共享模塊的資源,提供32個報文對象,它們可獨立分配給2個CAN節點中的任意一個,還可以組合構成FIFO結構。每個報文對象分別對應有利于濾波的驗收屏蔽寄存器。
        全CAN功能和FIFO結構的靈活組合可滿足復雜嵌入式控制應用的實時要求。CAN總線監控功能的增強以及報文對象個數的增加使得CAN的總線通信處理更加精確和方便。網關功能允許在2個獨立的CAN總線系統之間進行自動交換,減輕了CPU負載,提高了整個系統的實時性。2
        個CAN節點的位定時都從主時鐘得到,可通過編程使速率達到1 Mb/s,
        CAN總線收發器采用英飛凌公司的TLE6250G,支持傳送速率高達1 Mb/s,具有抗瞬變、抗射頻和抗電磁干擾的特性,并具有寬泛的工作范圍(-40~150℃),以及短路保護和過溫保護功能。具體的CAN總線節點原理圖設計如圖3所示。
        c.JPG

        另外,總線連接時兩端各加一只120 Ω的電阻,它們對于匹配總線阻抗起著相當重要的作用,可減少信號反射干擾。
        2.3 CAN總線節點軟件設計
        CAN總線節點軟件設計與整個系統的實時性和可靠性密切聯系。本系統中各部分間的數據交換比較頻繁,CAN總線上的數據幀包括有:1)主機發送的控制指令幀,主機控制著整個系統的工作模式,通過板為好板或壞板的信號來控制分揀1和分揀2的運作;2)各控制部分傳給主機的狀態,將正在上板中、正在出板中或者系統故障等消息傳給主機,方便操作人員實時了角整個系統;3)各控制部分之間的交換,如上板部分檢測到一批板檢測完成,通知分揀部分出板的信號,任何部分檢測到故障通知報警信號等。
        根據系統的實際情況未編寫相應的軟件程序。這里使用的XCl64CS的CAN遵循CAN V2.0B規范。報文緩存單元最多保存32個報文對象,每個對象的最大數據長度為8字節。每個報文對象有一個標識符和自己的控制和狀態位集。通過控制相應寄存器來存放通信時發出或者接收到的數據以及報文寄存器組的設置。對報文寄存器進行初始化之后,報文緩存單元無需CPU監控就能夠處理數據的接收和發送,簡化了軟件代碼的編寫。而CPU通過訪問CAN狀態寄存器或者由CAN控制器以中斷的方式通知CPU,即可得到當前通信狀態,從而節省了CPU的占用時間。
        2.3.1 CAN控制器的初始化
        要實現CAN通信,首先要對CAN控制器進行正確初始化設置。初始化主要完成下面的工作:節點控制寄存器ACP/BCR的設定;CCE和 INIT置位;錯誤計數器最大值的設定;節點輸出管腳的設定;節點速率的設定;給節點配置發送、接收消息體。對于XCl64CS,CAN控制器的初始化可以使用DAVE進行配置,來自動生成代碼,也可以用戶自行編寫。初始化流程如圖4所示。
        d.JPG

        以下為相應的程序代碼:

        本文引用地址:http://www.104case.com/article/156906.htm

        f.jpg



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 科尔| 宁阳县| 昭通市| 龙井市| 唐海县| 桦川县| 黄浦区| 油尖旺区| 孝义市| 泾阳县| 德钦县| 临澧县| 吉林省| 耿马| 师宗县| 辽宁省| 丰都县| 赤城县| 镇远县| 邯郸市| 内黄县| 谢通门县| 大洼县| 镇康县| 大同县| 新兴县| 织金县| 怀来县| 社会| 乌拉特中旗| 沅陵县| 南丹县| 资溪县| 南城县| 铁岭市| 张家川| 浦县| 滕州市| 顺平县| 大姚县| 炎陵县|