美女网站一区二区_在线观看日韩毛片_成人在线视频首页_欧美精品一区二区三区久久久_国产精品亚洲一区二区三区在线_日本免费新一区视频_日本美女一区二区三区_精品亚洲成a人_久久不见久久见免费视频1_91首页免费视频_欧美一区二区在线看_91精品91久久久中77777_天堂蜜桃一区二区三区_av在线一区二区_欧美不卡一区二区_欧美影视一区二区三区

產品分類

當前位置: 首頁 > 傳感測量產品 > 數據采集產品 > 工控機

類型分類:
科普知識
數據分類:
工控機

基于PIC單片機的嵌入式CAN智能節點及其與PC的通信

發布日期:2022-04-18 點擊率:70

                   摘 要:本文介紹了基于PIC16F874單片機的嵌入式CAN智能節點的軟硬件設計,同時應用PCL-841 CAN接口卡使嵌入式CAN智能節點與PC之間實現了通信,完成了電壓,電流,溫度等信號的實時采集,可靠傳輸和實時顯示,實現了PC端對嵌入式CAN智能節點PWM波輸出的脈沖寬度的控制。

關鍵詞:PIC單片機 嵌入式 PIC16F874 CAN智能節點 通信 PWM波 脈沖寬度


引言

  CAN總線是一種串行數據通信協議,其通信接口中集成了CAN協議的物理層和數據鏈路層功能,可完成對數據的成幀處理。CAN協議的一個最大特點是廢除了傳統的站地址編碼,而代之以對通信數據塊編碼,采用這種方法可使網絡內節點個數在理論上不受限制,還可使不同的節點同時收到相同的數據。

  本文介紹了嵌入式CAN智能節點,并且應用PC和嵌入式CAN智能節點組成了CAN通信系統,完成了電壓。電流。溫度等信號的實時采集。可靠傳輸和實時顯示,實現了PC端對嵌入式CAN智能節點PWM波輸出的脈沖寬度的控制。

基于PIC單片機的嵌入式CAN智能節點的設計

  嵌入式CAN智能節點以PIC16F874單片機作為嵌入式微控制器,以MCP2510作為CAN控制器,以PCA82C250作為CAN收發器,具有現場/遠程控制功能。根據用戶的需求,嵌入式CAN智能節點通過連接相應的傳感器可以完成多種信號的實時采集。可靠傳輸和實時顯示,PWM波輸出可以用于控制相應的負載。嵌入式CAN智能節點通過外接電路可以實現電路保護。現場組態。自動調節。故障診斷報警。狀態檢測等功能,完成對電機。閥門。泵等電器的驅動和智能控制。

硬件設計

  Microchip公司的單片機PIC16F874采用RISC指令系統,哈佛總線結構,低功耗,高速度。內部集成了ADC.串行外圍接口(SPI)和Flash程序存儲器等,具有PWM輸出。LCD驅動等功能。PIC16F874通過SPI接口可以實現與CAN控制器MCP2510的無縫連接。 PIC16F874的I/O資源豐富,共有A.B.C.D.E五個I/O口,每個I/O口除了基本用途外還有一些特殊功能。

  基于PIC16F874的嵌入式CAN智能節點的硬件原理圖主要包括以下四個模塊:

  CAN通信模塊

  嵌入式CAN智能節點的CAN通信模塊由CAN控制器MCP2510和CAN收發器PCA82C250組成。MCP2510可以完成CAN總線的物理層和數據鏈路層的所有功能,支持高速SPI接口(最高數據傳輸速率可以達到5Mb/s),支持CAN2.0A/CAN2.0B協議。CAN收發器 PCA82C250是CAN控制器與物理總線之間的接口,對物理總線提供差動發送能力,對CAN控制器提供差動接收能力,同時它可以增大通信距離,提高嵌入式CAN智能節點的抗干擾能力。

  PIC16F874通過SPI與CAN控制器MCP2510連接,其串行數據輸入(SDI)腳與MCP2510的SO腳相連,其串行數據輸出(SDO)腳與MCP2510的SI腳相連,其串行時鐘(SCK)腳與MCP2510的SCK腳相連。MCP2510的復位信號。片選信號由單片機A口的 RA5.RA2提供,MCP2510的中斷信號。接收緩沖區滿中斷信號輸出到單片機B口的RB0.RB5。

  通過設置PIC16F874的SPI接口狀態寄存器和控制寄存器使SPI接口工作于主動方式。PIC16F874與MCP2510進行通信時的時序是非常重要的。發送數據時,先發送寫指令,再發送寄存器地址,最后發送數據。當MCP2510接收到由總線傳來的數據時會產生中斷,單片機響應中斷,讀取數據時先發送讀指令,再發送寄存器地址,數據會自動寫入單片機SPI接口的緩沖器中。

  顯示模塊

  嵌入式CAN智能節點采用OCMJ4Χ8顯示模塊,該顯示模塊可以顯示漢字。ASCII碼等,其所有的設置初始化工作都可以在上電時自動完成。

  OCMJ4Χ8顯示模塊的數據線DB0~DB7與單片機的D口相連,請求(REQ)腳。應答(BUSY)腳分別與單片機B口的RB4.E口的RE2相連。顯示模塊的RT1.RT2引腳外接可調電阻用于調節LCD的亮度。

  顯示模塊接口協議為請求/應答(REQ/BUSY)握手方式。BUSY為高電平表示顯示模塊忙;當BUSY為低電平時表示顯示模塊空閑,等待接收命令。單片機先向顯示模塊發送命令或數據,然后發送請求信號,請求顯示模塊進行處理,顯示模塊置BUSY為高電平,對命令或數據進行處理,處理結束后置 BUSY為低電平。

  模擬量獲取模塊

  PIC16F874單片機A口的RA0.RA1.RA3用于模擬量輸入。嵌入式CAN智能節點的模擬量獲取模塊的主要功能是將需要采集的電流信號通過電流互感器轉換為電壓信號,將需要采集的溫度信號通過溫度傳感器AD590轉換為電壓信號。

  開關量輸入/輸出模塊

  嵌入式CAN智能節點通過I/O擴展提供了4路開關量輸入和7路開關量輸出。開關量輸入用于電路的保護。故障報警。狀態檢測等,只要被控制對象擁有相應的檢測元件,接入相應的接口即可。開關量輸出用于驅動繼電器,可以根據負載的大小確定是否需要連接接觸器控制電機。閥門。泵等電器執行元件。根據用戶的需求,此部分電路可以做相應的變化。

軟件設計

  嵌入式CAN智能節點的軟件采用匯編語言編寫,主要完成對PIC16F874(I/O口。定時器等).SPI接口(串行口狀態寄存器SSPSTAT. 串行口控制寄存器SSPCON等).顯示模塊。I/O擴展芯片8255和CAN控制器MCP2510(位定時配置寄存器。CAN信息接收過濾和屏蔽控制寄存器。接收發送緩沖區控制寄存器等)的初始化,設定發送。接收標識碼(ID),讀取A/D轉換的數值,設置嵌入式CAN智能節點PWM波輸出的脈沖寬度,處理。顯示并發送采集的數據,接收。處理并顯示由總線傳來的數據等工作。

  初始化系統

  程序需要對PIC16F874單片機。顯示模塊。I/O擴展芯片8255和CAN控制器MCP2510進行初始化。其中對MCP2510初始化是非常重要的,主要包括設置數據傳輸的波特率,將標識碼和屏蔽字寫入CAN信息接收過濾和屏蔽控制寄存器。對PIC16F874進行初始化時,要特別注意定時器 TMR2的初始化。

  設定發送。接收標識碼

  PIC16F874單片機C口的RC0.RC1.RC6.RC7引腳連接了一個撥碼開關。程序通過讀取這四個引腳的狀態為每個嵌入式CAN智能節點分配了發送。接收標識碼的初始值。當網絡中智能節點數目較多時,這種方法可以方便程序的編寫。

  讀取A/D轉換的數值

  PIC16F874的A口和E口可以作為模擬量輸入口,共有8個輸入通道。A/D轉換的結果存儲于單片機的ADRES寄存器。程序首先設置單片機的A /D控制寄存器ADCON1的bit3~bit0,選擇每個通道的輸入/輸出類型并設置參考電壓為5V,然后設置單片機的A/D控制寄存器ADCON0的 bit5~bit3選擇通道,設置bit0打開ADC,設置bit2啟動ADC,最后從單片機的A/D轉換結果寄存器ADRES中讀取A/D轉換的數值。

  設置PWM波輸出的脈沖寬度

  PIC16F874的CCP1引腳用于PWM波輸出。程序首先設置單片機的CCP1模塊控制寄存器CCP1CON的bit3~bit0,定義工作方式為PWM,然后用從PC端接收到的用于設置嵌入式CAN智能節點PWM波輸出的脈沖寬度的數據設置單片機的CCP1控制寄存器CCP1CON的 bit5~bit4和CCPR1L寄存器,即實現了PC端對嵌入式CAN智能節點PWM波輸出的脈沖寬度的控制。

  發送數據

  程序為每個需要傳送到PC端的信號(電壓。電流。溫度。嵌入式CAN智能節點PWM波輸出的脈沖寬度)都分配了一個標識碼。發送數據時,首先向MCP2510發送寫指令,再將標識碼。幀格式和數據長度的定義。需要發送的數據依次寫入MCP2510相應的寄存器中。

  接收數據

  程序讀取CAN控制器MCP2510的中斷標志寄存器的值,判斷接收緩沖區中是否有數據,當接收緩沖區中有數據時向MCP2510發送讀指令,依次將標識碼。幀格式和數據長度。接收到的數據從MCP2510相應的寄存器中讀出。

  處理和顯示數據

  A/D轉換的數值經過程序處理后得到信號的真實值并送顯示模塊進行顯示,主要包括數值和漢字。英文字符的顯示。同時完成了嵌入式CAN智能節點PWM波輸出的脈沖寬度和從PC端接收到的數據的顯示。

PC端功能的實現

  硬件部分

  PC端采用了研華公司的PCL-841雙端口CAN接口卡,該卡具有兩個CAN通信口,最高數據傳輸速率可以達到1Mbps。該卡采用內存映射機制,即將CAN接口卡上的內存映射至主存中,用戶可以根據需要自己設定映射內存的基地址。

  軟件部分

  PC端的軟件采用C語言編寫,主要完成CAN信息的實時讀齲處理和顯示,向嵌入式CAN智能節點發送數據和設置嵌入式CAN智能節點PWM波輸出的脈沖寬度等工作。

設計調試中應當注意的一些問題

  硬件方面

  嵌入式CAN智能節點

  設計中應當注意處理好復位和時鐘信號,包括不同器件之間復位的先后時序。在進行溫度信號的采集時,要特別注意溫度傳感器AD590的調零。AD590 是一個恒流源,它的特性是絕對溫度每變化1℃電流增/減1mA,絕對溫度0℃時為0mA。為抵消AD590在0℃時的電壓,需要加入一個負電源使其在0℃ 時輸出為0V,再選擇合適的電阻把電流轉變為電壓,就可以把溫度信號的采集變為0~5V電壓信號的采集。

  調試過程中應首先檢查各芯片的工作電壓是否正常,晶振是否起振,復位信號是否正確。要經常察看各芯片的發熱狀況,出現溫度過高時應立即斷電檢查。必要時可使用示波器觀測信號波形進行分析。

  PC端

  由于PCL-841雙端口CAN接口卡占用PC的串口資源,因此在BIOS設置中應將串口設置為Disable,還應該特別注意CAN接口卡占用的內存資源是否被其它硬件占用,如果已經被占用,則應修改CAN接口卡內存映射的首地址,同時更改CAN接口卡上的跳線,否則CAN接口卡無法正常工作。

  軟件方面

  嵌入式CAN智能節點

  在編寫嵌入式CAN智能節點的程序時,需要特別注意的是CAN控制器MCP2510的初始化,務必使一個系統中的所有智能節點的數據傳輸波特率相同,否則嵌入式CAN智能節點將無法和PC端進行通信。應當注意必須正確地將標識碼和屏蔽字寫入MCP2510的CAN信息接收過濾和屏蔽控制寄存器,否則嵌入式CAN智能節點將無法正確的發送和接收CAN信息。

  調試過程中應注意通過查看各個寄存器的值來判斷程序執行的程度。

  PC端

  在編寫PC端的程序時,需要將PCL-841雙端口CAN接口卡驅動程序庫CAN841S.LIB嵌入到自己的工程中,驅動程序庫中封裝了直接操控 CAN接口卡的函數。對CAN接口卡進行操控時必須按照規定流程進行,否則CAN接口卡無法正常工作或者無法正確的發送和接收CAN信息。

  調試過程中應采取下斷點和單步執行相結合的調試方法,注意根據函數的返值來分析出現問題的原因。

結語

  本課題初步完成了基于CAN總線的數據采集和智能控制系統的設計,經過反復實驗,系統采集數據準確。傳輸可靠,通過了有關部門的專業測試。同時設計的嵌入式CAN智能節點可以迅速。準確地接收到PC端發送的數據。

 

下一篇: PLC、DCS、FCS三大控

上一篇: 索爾維全系列Solef?PV

美女网站一区二区_在线观看日韩毛片_成人在线视频首页_欧美精品一区二区三区久久久_国产精品亚洲一区二区三区在线_日本免费新一区视频_日本美女一区二区三区_精品亚洲成a人_久久不见久久见免费视频1_91首页免费视频_欧美一区二区在线看_91精品91久久久中77777_天堂蜜桃一区二区三区_av在线一区二区_欧美不卡一区二区_欧美影视一区二区三区


        精品综合在线| 精品一区二区日本| 日本不卡一二三| 午夜一区二区三区在线观看| 亚洲精品美国一| 亚洲自拍偷拍综合| 男女男精品视频| 国产高清精品网站| 成人午夜在线播放| 成人做爰66片免费看网站| 国产精品日韩一区二区三区| 欧美不卡福利| 正在播放国产精品| 欧美精品精品一区| 久久精品视频一区二区| 自拍偷在线精品自拍偷无码专区| 亚洲美女视频在线| 男女男精品视频网| 成人黄页毛片网站| 精品国产_亚洲人成在线| 日本最新一区二区三区视频观看| 色综合咪咪久久| 欧美大片顶级少妇| 亚洲欧美色图小说| 国内精品伊人久久久久av一坑 | 日韩成人一区二区| 国产精品亚洲一区二区三区在线| 99九九电视剧免费观看| 欧美日韩无遮挡| 欧美视频完全免费看| 久久嫩草精品久久久精品一| 亚洲精品国产精品乱码不99| 久久精品国产亚洲一区二区三区| 成人国产一区二区三区精品| 精品国产一区二区三区麻豆免费观看完整版 | 欧美影视一区二区三区| 精品欧美乱码久久久久久1区2区| 亚洲天堂久久久久久久| 国产一区欧美一区| 欧美精品一区二区三区在线四季| 欧美高清视频一二三区 | 欧美午夜电影网| 久久久国产精品午夜一区ai换脸| 亚洲综合激情小说| 中文字幕国产一区二区| 日本系列欧美系列| 久久久欧美精品sm网站| 日韩成人一级片| 蜜桃视频日韩| 91麻豆精品国产自产在线| 亚洲国产日韩综合久久精品| 亚洲国产美国国产综合一区二区| 成人国产精品免费观看动漫| 欧美日韩在线免费视频| 美女视频免费一区| 中文字幕一区二区三区最新| 亚洲欧美国产77777| 欧美精品二区三区四区免费看视频 | 麻豆91免费看| 日韩激情视频| 亚洲欧美日韩综合aⅴ视频| 极品尤物一区二区三区| 中文字幕视频一区| 欧美精品在线视频| 蜜桃精品久久久久久久免费影院| 成人免费av网站| 久久精品久久99精品久久| 亚洲人成77777| 日韩av一区二区在线影视| 色播亚洲婷婷| 亚洲bt欧美bt精品777| www.久久草| 精品成人一区二区| 日韩vs国产vs欧美| 日韩精品无码一区二区三区| 久草精品在线观看| 美日韩免费视频| 国产精品久久久久久亚洲毛片 | 亚洲欧洲精品一区二区三区波多野1战4 | 国产美女久久久久| 国产河南妇女毛片精品久久久| 97se亚洲综合在线| 国产激情精品久久久第一区二区 | 中文字幕亚洲电影| 91精品国产入口在线| 久久人人超碰精品| 9l国产精品久久久久麻豆| 精品国产一区二区在线观看| 国产嫩草一区二区三区在线观看 | 亚洲电影一二三区| 91黄色小视频| 亚洲精品免费在线看| 一区二区精品在线观看| 欧美午夜视频在线| 欧美一区二区高清在线观看| 亚洲高清不卡一区| 国产精品自拍网站| 日韩欧美一级在线播放| 2019国产精品视频| 丝袜亚洲精品中文字幕一区| 欧美日韩亚洲不卡| 91超碰在线电影| 一二三区精品福利视频| 777亚洲妇女| 国产99久久久国产精品潘金 | 国产精品国产三级国产普通话蜜臀| 色噜噜狠狠成人中文综合| 亚洲一二三区不卡| 国产伦精品一区二区三区高清版| 成人一区二区三区在线观看| 精品国产_亚洲人成在线| 欧美极品一区二区| 欧美一区二区视频观看视频| 国产欧美日韩久久| 欧美在线观看一区二区| 国产自产在线视频一区| 天堂资源在线中文精品| 一区二区理论电影在线观看| 日韩一区二区三区四区| 欧美日韩亚洲综合一区二区三区激情在线| 国产精品天干天干在线综合| 在线成人免费观看| 国产精品区一区二区三在线播放| 欧美日韩一二区| 欧美精品粉嫩高潮一区二区| 91精品国产色综合久久久蜜香臀| 欧美浪妇xxxx高跟鞋交| 欧美一区二区视频在线观看| 2021中文字幕一区亚洲| 成人动漫视频在线| 精品一区在线播放| 日韩午夜激情免费电影| 日韩电影一区二区三区四区| 久久久久久久久久码影片| 久久亚洲二区三区| 激情综合亚洲精品| 蜜臀av一区二区三区| 日本va欧美va欧美va精品| 一区二区三区在线不卡| 国产欧美中文在线| 久久一区二区三区国产精品| 日本乱码高清不卡字幕| 一区不卡视频| 欧美二区在线观看| 精品视频一区二区三区免费| 国产超碰91| 精品网站在线看| 精品久久中出| 97久久人人超碰caoprom欧美| 国产成人精品一区二区三区网站观看| 亚洲美腿欧美偷拍| 蜜桃视频在线观看一区二区| 97精品国产露脸对白| 欧美午夜免费电影| 亚洲成人tv网| 久久精品国产综合精品| 国产一区91精品张津瑜| 91蜜桃传媒精品久久久一区二区| 欧美v国产在线一区二区三区| 国产福利久久| 亚洲欧美日韩国产另类专区| 亚洲激情电影在线| 精品一区二区三区免费观看| 日韩精品伦理第一区| 这里只有精品66| 亚洲精品在线观| 亚洲精品一二三| 国产精一区二区三区| 久久久久久久久久久久久久久久av| 大陆成人av片| 国产综合欧美在线看| 7777精品伊人久久久大香线蕉的| 久久嫩草精品久久久久| 亚洲一区二区中文在线| 99免费精品在线观看| 欧美日韩成人一区二区| 精品综合久久久久久8888| 欧美精品v日韩精品v国产精品| 久久综合狠狠综合久久激情| 成人在线视频电影| 欧美日韩国产美| 精品一区二区三区香蕉蜜桃| 蜜桃视频成人| 亚洲免费电影在线| 91一区二区三区在线观看| 777xxx欧美| 欧美成人激情免费网| 久久99久久99小草精品免视看| 国产精品裸体一区二区三区| 亚洲一区二区三区乱码| 久久精品在线观看| 九色综合狠狠综合久久| 久久精品视频免费| 欧美伊人久久大香线蕉综合69| 95精品视频在线| 国产精品一二三在| 无码av免费一区二区三区试看| 国产丝袜在线精品| 在线观看国产91| 天堂资源在线亚洲视频|