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

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

?? can.h

?? STR71X源代碼包括例程與各功能的源代碼
?? 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:
*  13/01/2006 : V3.1
*  24/05/2005 : V3.0
*  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;

    /* reset the status */
	CAN->SR = 0;					
}

/*******************************************************************************
* 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

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品的网站| 久久精品国产999大香线蕉| 色综合久久综合网| 亚洲精品日韩综合观看成人91| 色香色香欲天天天影视综合网| 亚洲一区二区不卡免费| 91精品一区二区三区在线观看| 精品综合久久久久久8888| 久久久国际精品| 972aa.com艺术欧美| 亚洲最大的成人av| 日韩一区二区高清| 国产在线精品国自产拍免费| 国产精品久久久久桃色tv| 欧美性色黄大片手机版| 久久精品国产99久久6| 国产精品毛片a∨一区二区三区| 色噜噜偷拍精品综合在线| 天天av天天翘天天综合网| 精品国产乱码久久久久久牛牛| 国产91高潮流白浆在线麻豆 | 欧美精品一区二区久久婷婷| 福利91精品一区二区三区| 亚洲精品成人悠悠色影视| 3atv一区二区三区| 国产美女av一区二区三区| 亚洲色图制服诱惑| 欧美精品色一区二区三区| 国产一区二区三区免费播放| 亚洲日本在线看| 日韩一区二区免费在线观看| 成人午夜免费电影| 亚洲 欧美综合在线网络| 久久久久99精品一区| 在线观看日韩电影| 国产在线不卡一区| 亚洲福利一二三区| 国产偷v国产偷v亚洲高清| 91国偷自产一区二区使用方法| 美女被吸乳得到大胸91| 亚洲人成网站色在线观看| 日韩一区国产二区欧美三区| 99re成人精品视频| 免费看欧美女人艹b| 亚洲视频在线一区| 日韩精品中文字幕一区 | 粉嫩av一区二区三区| 亚洲一区二区黄色| 国产精品美女久久久久aⅴ国产馆| 欧美精品在线观看播放| 成人av资源在线| 另类中文字幕网| 一区二区三区在线免费观看| 精品久久久久久综合日本欧美| 91国偷自产一区二区开放时间 | 91麻豆精品在线观看| 久久精品国产澳门| 亚洲成av人片在线| 最新国产の精品合集bt伙计| 欧美成va人片在线观看| 在线精品国精品国产尤物884a| 国产精品亚洲视频| 免费精品视频最新在线| 一区二区不卡在线视频 午夜欧美不卡在| 亚洲精品一区在线观看| 欧美人妖巨大在线| 91福利国产成人精品照片| 国产福利精品一区| 蜜臀a∨国产成人精品| 亚洲一二三四在线| 成人免费一区二区三区在线观看| 精品免费日韩av| 欧美精品一二三区| 色国产综合视频| 波多野结衣欧美| 国产麻豆视频精品| 久久精品理论片| 天堂在线一区二区| 亚洲综合色婷婷| 亚洲人成网站色在线观看| 欧美国产日韩在线观看| 久久久国产精品午夜一区ai换脸| 日韩欧美另类在线| 91精品久久久久久久久99蜜臂| 欧美在线观看一二区| 91在线观看成人| 成人久久久精品乱码一区二区三区| 国产最新精品精品你懂的| 日韩电影在线观看电影| 亚洲成人免费电影| 亚洲一区二区三区视频在线 | 欧美男男青年gay1069videost| 91久久精品一区二区| 一本到高清视频免费精品| 成人丝袜高跟foot| 懂色av中文字幕一区二区三区| 国产一区三区三区| 久久精品72免费观看| 美女高潮久久久| 九色综合狠狠综合久久| 日韩在线卡一卡二| 首页欧美精品中文字幕| 日韩av电影免费观看高清完整版在线观看| 亚洲影院理伦片| 亚洲.国产.中文慕字在线| 午夜精品久久久久影视| 午夜欧美电影在线观看| 婷婷国产v国产偷v亚洲高清| 日本伊人色综合网| 免费成人av资源网| 久久91精品久久久久久秒播| 久88久久88久久久| 国产精品1区二区.| 成av人片一区二区| 91老师国产黑色丝袜在线| 色老汉一区二区三区| 欧美视频在线观看一区二区| 欧美精品一卡二卡| 精品三级在线观看| 久久久国产一区二区三区四区小说| 欧美激情一区二区三区在线| 国产精品初高中害羞小美女文| 亚洲婷婷综合色高清在线| 一区二区三区不卡视频在线观看| 亚洲国产综合人成综合网站| 日韩中文字幕av电影| 激情成人午夜视频| 国产91在线|亚洲| 91免费版pro下载短视频| 欧美中文字幕一区| 91精品国产免费| 久久久精品免费免费| 日韩一区在线看| 亚洲妇熟xx妇色黄| 精品一区二区三区在线播放视频| 国产乱码精品一品二品| 成人av免费在线| 在线亚洲免费视频| 欧美一级欧美三级在线观看| 久久久精品一品道一区| 精品国产乱码久久久久久牛牛| 久久久精品蜜桃| 成人免费在线观看入口| 香蕉成人伊视频在线观看| 蜜臀av亚洲一区中文字幕| 国产丶欧美丶日本不卡视频| 99久久精品免费看| 欧美日韩你懂得| 久久人人97超碰com| 亚洲免费av观看| 秋霞成人午夜伦在线观看| 国产成人免费在线视频| 色综合久久综合网欧美综合网| 欧美一区二区三区小说| 国产婷婷色一区二区三区在线| 亚洲自拍偷拍图区| 精品一区精品二区高清| av午夜一区麻豆| 欧美丰满嫩嫩电影| 国产女主播在线一区二区| 一区二区三区不卡视频在线观看| 久久草av在线| 色婷婷亚洲婷婷| 精品欧美一区二区久久| 亚洲欧美区自拍先锋| 免费黄网站欧美| 91免费观看视频| 久久综合色一综合色88| 曰韩精品一区二区| 国精品**一区二区三区在线蜜桃| 色综合天天综合网天天看片| 日韩亚洲欧美成人一区| ㊣最新国产の精品bt伙计久久| 视频一区二区中文字幕| 成人黄色一级视频| 日韩欧美不卡在线观看视频| 综合中文字幕亚洲| 国产一区二区三区四| 欧美吻胸吃奶大尺度电影| 国产午夜亚洲精品不卡| 婷婷中文字幕综合| youjizz久久| 精品国内二区三区| 亚洲观看高清完整版在线观看| 国内精品在线播放| 欧美日韩中文字幕一区二区| 国产精品视频九色porn| 免费成人结看片| 欧美三级欧美一级| 国产精品国产三级国产普通话蜜臀| 蜜臀av性久久久久蜜臀aⅴ四虎| 色综合视频在线观看| 国产日韩欧美高清在线| 蜜桃av一区二区| 欧美揉bbbbb揉bbbbb| 亚洲男人电影天堂| 国产69精品久久久久777| 欧美xingq一区二区| 天堂在线亚洲视频| 欧美性大战xxxxx久久久|