亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? can.h

?? 好東西只有這一個了汗汗汗¥·# ¥·¥#
?? H
?? 第 1 頁 / 共 2 頁
字號:
/******************** (C) COPYRIGHT 2003 STMicroelectronics ********************
* File Name          : can.h
* Author             : MCD Application Team
* Date First Issued  : 27/10/2003
* Description        : This file contains all the functions prototypes for the
*                      CAN bus software library.
********************************************************************************
* History:
*  30/11/2004 : V2.0
*  14/07/2004 : V1.3
*  01/01/2004 : V1.2
*******************************************************************************
 THE PRESENT SOFTWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING CUSTOMERS WITH
 CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR THEM TO SAVE TIME.
 AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR ANY DIRECT, INDIRECT
 OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY CLAIMS ARISING FROM THE CONTENT
 OF SUCH SOFTWARE AND/OR THE USE MADE BY CUSTOMERS OF THE CODING INFORMATION
 CONTAINED HEREIN IN CONNECTION WITH THEIR PRODUCTS.
*******************************************************************************/
#ifndef __can_H
#define __can_H

#include "71x_map.h"

// Standard bitrates available
enum
{
  CAN_BITRATE_100K,
  CAN_BITRATE_125K,
  CAN_BITRATE_250K,
  CAN_BITRATE_500K,
  CAN_BITRATE_1M
};

// Control register
#define CAN_CR_TEST		0x0080
#define CAN_CR_CCE		0x0040
#define CAN_CR_DAR		0x0020
#define CAN_CR_EIE		0x0008
#define CAN_CR_SIE		0x0004
#define CAN_CR_IE		0x0002
#define CAN_CR_INIT		0x0001

// Status register
#define CAN_SR_LEC		0x0007
#define CAN_SR_TXOK		0x0008
#define CAN_SR_RXOK		0x0010
#define CAN_SR_EPASS		0x0020
#define CAN_SR_EWARN		0x0040
#define CAN_SR_BOFF		0x0080

// Test register
#define CAN_TESTR_RX		0x0080
#define CAN_TESTR_TX1		0x0040
#define CAN_TESTR_TX0		0x0020
#define CAN_TESTR_LBACK		0x0010
#define CAN_TESTR_SILENT	0x0008
#define CAN_TESTR_BASIC		0x0004

// IFn / Command Request register
#define CAN_CRR_BUSY		0x8000

// IFn / Command Mask register
#define CAN_CMR_WRRD		0x0080
#define CAN_CMR_MASK		0x0040
#define CAN_CMR_ARB		0x0020
#define CAN_CMR_CONTROL		0x0010
#define CAN_CMR_CLRINTPND	0x0008
#define CAN_CMR_TXRQST		0x0004
#define CAN_CMR_DATAA		0x0002
#define CAN_CMR_DATAB		0x0001

// IFn / Mask 2 register
#define CAN_M2R_MXTD		0x8000
#define CAN_M2R_MDIR		0x4000

// IFn / Arbitration 2 register
#define CAN_A2R_MSGVAL		0x8000
#define CAN_A2R_XTD		0x4000
#define CAN_A2R_DIR		0x2000

// IFn / Message Control register
#define CAN_MCR_NEWDAT		0x8000
#define CAN_MCR_MSGLST		0x4000
#define CAN_MCR_INTPND		0x2000
#define CAN_MCR_UMASK		0x1000
#define CAN_MCR_TXIE		0x0800
#define CAN_MCR_RXIE		0x0400
#define CAN_MCR_RMTEN		0x0200
#define CAN_MCR_TXRQST		0x0100
#define CAN_MCR_EOB		0x0080


// Wake-up modes
enum
{
  CAN_WAKEUP_ON_EXT,
  CAN_WAKEUP_ON_CAN
};


// CAN message structure
typedef struct
{
  u32 IdType;
  vu32 Id;
  vu8 Dlc;
  vu8 Data[8];
} canmsg;

// message ID types
enum
{
  CAN_STD_ID,
  CAN_EXT_ID
};

// message ID limits
#define CAN_LAST_STD_ID	((1<<11) - 1)
#define CAN_LAST_EXT_ID	((1L<<29) - 1)

/*******************************************************************************
* Function Name  : CAN_EnterInitMode
* Description    : Switch the CAN into initialization mode
* Input 1        : any binary value formed from the CAN_CR_xxx defines
* Output         : None
* Return         : None
* Note           : CAN_LeaveInitMode must be called when all is done
*******************************************************************************/
inline void CAN_EnterInitMode(u8 mask)
{
	CAN->CR = mask | CAN_CR_INIT;
	CAN->SR = 0;					// reset the status
}

/*******************************************************************************
* Function Name  : CAN_LeaveInitMode
* Description    : Leave the initialization mode (switch into normal mode)
* Input          : None
* Output         : None
* Return         : None
*******************************************************************************/
inline void CAN_LeaveInitMode(void)
{
	CAN->CR &= ~(CAN_CR_INIT | CAN_CR_CCE);
}

/*******************************************************************************
* Function Name  : CAN_EnterTestMode
* Description    : Switch the CAN into test mode
* Input 1        : any binary value formed from the CAN_TESTR_xxx defines
* Output         : None
* Return         : None
* Note           : CAN_LeaveTestMode must be called when all is done
*******************************************************************************/
inline void CAN_EnterTestMode(u8 mask)
{
	CAN->CR |= CAN_CR_TEST;
	CAN->TESTR |= mask;
}

/*******************************************************************************
* Function Name  : CAN_LeaveTestMode
* Description    : Leave the current test mode (switch into normal mode)
* Input          : None
* Output         : None
* Return         : None
*******************************************************************************/
inline void CAN_LeaveTestMode(void)
{
	CAN->CR |= CAN_CR_TEST;
	CAN->TESTR &= ~(CAN_TESTR_LBACK | CAN_TESTR_SILENT | CAN_TESTR_BASIC);
	CAN->CR &= ~CAN_CR_TEST;
}

/*******************************************************************************
* Function Name  : CAN_SetBitrate
* Description    : Setup a standard CAN bitrate
* Input 1        : one of the CAN_BITRATE_xxx defines
* Output         : None
* Return         : None
* Note           : CAN must be in initialization mode
*******************************************************************************/
void CAN_SetBitrate(u32 bitrate);

/*******************************************************************************
* Function Name  : CAN_SetTiming
* Description    : Setup the CAN timing with specific parameters
* Input 1        : Time Segment before the sample point position, from 1 to 16
* Input 2        : Time Segment after the sample point position, from 1 to 8
* Input 3        : Synchronisation Jump Width, from 1 to 4
* Input 4        : Baud Rate Prescaler, from 1 to 1024
* Output         : None
* Return         : None
* Note           : CAN must be in initialization mode
*******************************************************************************/
void CAN_SetTiming(u32 tseg1, u32 tseg2, u32 sjw, u32 brp);

/*******************************************************************************
* Function Name  : CAN_SleepRequest
* Description    : Request the CAN cell to enter sleep mode
* Input 1        : CAN_WAKEUP_ON_EXT or CAN_WAKEUP_ON_CAN

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲黄色小说网站| 99久久综合99久久综合网站| 国产精品一区二区三区乱码| 色婷婷久久一区二区三区麻豆| 欧美日韩国产免费一区二区| 国产精品传媒在线| 国产一区在线视频| 欧美高清www午色夜在线视频| 国产精品成人午夜| 国产精品18久久久久久vr| 欧美亚洲日本一区| 国产精品久久久久久久久快鸭| 玖玖九九国产精品| 欧美日韩情趣电影| 一区二区三区欧美视频| www.亚洲精品| 中文文精品字幕一区二区| 精品一区在线看| 欧美videofree性高清杂交| 天堂精品中文字幕在线| 欧美在线制服丝袜| 一区二区三区欧美日韩| 色婷婷精品大在线视频| 国产精品成人在线观看| 99riav一区二区三区| 中文字幕av不卡| 岛国av在线一区| 日本一区二区三区dvd视频在线| 国产综合色在线| 精品sm在线观看| 国产麻豆9l精品三级站| 国产亚洲人成网站| 国产成人免费视频网站| 国产精品色噜噜| 白白色 亚洲乱淫| 亚洲视频每日更新| 欧美艳星brazzers| 首页综合国产亚洲丝袜| 91麻豆精品国产自产在线| 日韩在线a电影| 欧美一二三四区在线| 成人av免费在线观看| 成人高清在线视频| 日韩毛片精品高清免费| 色狠狠色噜噜噜综合网| 五月天激情综合| 91精品国产综合久久久蜜臀图片| 午夜不卡av在线| 欧美成人官网二区| 国产一区二区调教| 综合中文字幕亚洲| 欧美日韩一区三区| 久久99国产精品久久99果冻传媒| 久久九九影视网| 色婷婷av一区| 精品在线免费观看| ●精品国产综合乱码久久久久| 在线免费观看视频一区| 日韩二区在线观看| 国产精品久久影院| 欧美群妇大交群中文字幕| 六月丁香综合在线视频| 亚洲欧洲日韩av| 欧美精品tushy高清| 精品中文av资源站在线观看| 18成人在线视频| 91精品国产综合久久福利软件 | 欧美中文字幕一二三区视频| 丝袜美腿亚洲综合| 国产欧美综合在线| 欧美日韩国产高清一区二区三区| 国产在线播放一区二区三区| 亚洲精品国产视频| 欧美成人猛片aaaaaaa| 成a人片国产精品| 青草av.久久免费一区| 国产精品传媒在线| 亚洲精品在线免费播放| 色94色欧美sute亚洲线路一ni| 男男gaygay亚洲| 亚洲柠檬福利资源导航| 精品国产不卡一区二区三区| 日本丰满少妇一区二区三区| 国产传媒一区在线| 日本欧美在线看| 亚洲国产日韩一级| 中文字幕一区二区在线播放| 日韩免费福利电影在线观看| 欧美日韩一级二级| 99视频一区二区| 国产精品一区在线观看乱码| 五月开心婷婷久久| 亚洲精品福利视频网站| 亚洲精品一区二区三区在线观看 | 狠狠狠色丁香婷婷综合久久五月| 亚洲欧美日韩中文字幕一区二区三区 | 一区二区三区 在线观看视频| 久久人人爽爽爽人久久久| 911精品产国品一二三产区| 91亚洲男人天堂| 成人激情小说乱人伦| 国产福利一区在线| 狠狠色综合日日| 免费一区二区视频| 天堂va蜜桃一区二区三区| 亚洲国产欧美另类丝袜| 亚洲一区二区美女| 一区二区三区蜜桃网| 亚洲免费在线观看视频| 成人欧美一区二区三区在线播放| 国产色产综合色产在线视频| 久久一区二区三区四区| 国产亚洲成年网址在线观看| 精品日韩一区二区三区免费视频| 欧美一级免费观看| 日韩三级视频在线看| 日韩精品中文字幕一区二区三区| 91精品国产欧美一区二区成人 | 一本大道久久a久久综合| 99免费精品在线| 91网址在线看| 欧美丝袜自拍制服另类| 欧美精品免费视频| 91精品国产色综合久久不卡蜜臀| 欧美一级片在线看| 精品免费视频一区二区| 国产香蕉久久精品综合网| 国产欧美日韩卡一| 亚洲三级在线免费| 天堂精品中文字幕在线| 精品中文av资源站在线观看| 国产成人亚洲综合a∨婷婷| 成人av先锋影音| 在线看国产一区二区| 欧美日韩亚洲综合在线| 欧美电影精品一区二区| 欧美激情在线观看视频免费| 亚洲欧美日本韩国| 日日嗨av一区二区三区四区| 日本成人在线电影网| 国产福利91精品一区二区三区| 成人高清视频在线| 欧美日韩视频在线一区二区| 日韩欧美国产一区二区三区 | 日韩欧美你懂的| 国产日韩精品一区二区三区在线| 国产精品久久久久一区二区三区 | 亚洲午夜久久久久久久久电影院| 视频在线观看一区| 国产成人综合精品三级| 91蝌蚪porny九色| 欧美一区二区三区在线观看视频| 久久久久9999亚洲精品| 夜夜亚洲天天久久| 九九九久久久精品| 91在线观看高清| 日韩欧美一级片| 亚洲三级视频在线观看| 精品在线观看视频| 欧美在线综合视频| 中国av一区二区三区| 午夜伦理一区二区| 成av人片一区二区| 日韩美女视频在线| 亚洲午夜在线视频| 国产一区二区成人久久免费影院| 欧美日韩专区在线| 欧美国产1区2区| 日韩电影在线一区二区三区| 9l国产精品久久久久麻豆| 欧美一二区视频| 一区二区三区中文字幕电影| 国产一区二区按摩在线观看| 欧美乱熟臀69xxxxxx| 国产精品久久久久久福利一牛影视| 日韩国产欧美视频| 欧美亚洲一区二区在线观看| 一区在线观看免费| 国产成人精品影视| 欧美成人女星排名| 日韩电影在线观看电影| 在线观看av一区| 国产精品不卡视频| 成人免费高清视频| 欧美经典一区二区| 国产在线播精品第三| 欧美xingq一区二区| 免费一级欧美片在线观看| 欧美亚洲免费在线一区| 亚洲男人的天堂网| 99精品欧美一区二区蜜桃免费| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 成人的网站免费观看| 亚洲国产精品二十页| 国产福利不卡视频| 国产午夜亚洲精品不卡| 国产剧情一区在线| 久久精品视频在线看| 国产精品白丝jk白祙喷水网站| 亚洲精品一区二区三区精华液 |