檢視 CAN bus 的原始碼
←
CAN bus
前往:
導覽
、
搜尋
由於下列原因,您沒有權限進行 編輯此頁面 的動作:
您請求的操作只有這個群組的使用者能使用:
使用者
您可以檢視並複製此頁面的原始碼。
== CAN TRANSCEIVER Module - SN65HVD251 == [[File:CAN_TRANSCEIVER_Module.jpg|border|350px|CAN TRANSCEIVER Module]] [[File:CAN_TRANSCEIVER_Module_01.jpg|CAN TRANSCEIVER Module]] == Setup CAN bus == * loops the data between the mbed LPC1768's two CAN buses. [[File:Can.jpg|border|350px|CAN bus + LPC1768]] [[File:CAN_self_test.png|border|350px|CAN bus looping]] == Code == <pre> #include "mbed.h" #include "CAN.h" Ticker ticker; DigitalOut led1(LED1); DigitalOut led2(LED2); CAN can1(p9, p10); CAN can2(p30, p29); Serial pc(USBTX, USBRX); char counter = 0; void send() { //pc.printf("send()\n"); if(can1.write(CANMessage(1337, &counter, 1))) { //pc.printf("wloop()\n"); counter++; //pc.printf("Message sent: %d\n", counter); } led1 = !led1; } int main() { pc.printf("main()\n"); ticker.attach(&send, 1); CANMessage msg; while(1) { //pc.printf("loop()\n"); if(can2.read(msg)) { pc.printf("Message received: %4d\n\r", msg.data[0]); led2 = !led2; } wait(0.2); } } </pre> == Result == * stty -F /dev/ttyACM0 speed 9600 -crtscts cs8 -cstopb -parenb -icrnl * cat < /dev/ttyACM0 <pre> The following will using CAN bus to send counting message from 0 to 255 and repeat again: ... Message received: 246 Message received: 247 Message received: 248 Message received: 249 Message received: 250 Message received: 251 Message received: 252 Message received: 253 Message received: 254 Message received: 255 Message received: 0 Message received: 1 Message received: 2 Message received: 3 Message received: 4 Message received: 5 ... </pre> == Reference == * [https://developer.mbed.org/handbook/CAN, ARMmbed CAN]
返回「
CAN bus
」頁面
導覽選單
個人工具
登入
命名空間
頁面
討論
變體
檢視
閱讀
檢視原始碼
檢視歷史
更多
搜尋
導覽
首頁
近期變更
隨機頁面
說明
工具
連結至此的頁面
相關變更
特殊頁面
頁面資訊