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

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

?? can-0401.c

?? 這是我從朋友那搞到的pic學習資料
?? C
字號:
/* ****************************************************************
** 功能描述: 接收到來自PC機串口通信發來的數據后,將所有接收數據用CAN 轉發到從實驗板(從CAN)
*************************************************************** */
#include	"pic18.h"							/* PIC18系列的頭文件 */
char	CAN_TX_Adress_H,CAN_TX_Adress_L;	/* CAN 發送郵箱標識符高低字節 */
char	CAN_RX_Adress_H,CAN_RX_Adress_L;	/* CAN 接收郵箱標識符高低字節 */
int	CAN_FLAG;							/* =1接收到CAN 數據,=0未接收到數據 */
unsigned	char	receive_count=0;				/* 232串口接收數據個數寄存器 */
unsigned	char	send_count=0;					/* 232串口發送數據個數寄存器 */
unsigned	char	*pointer;						/* 232串口發送指針 */
unsigned	char	SciReceiveFlag;			/*=1串口收到8個數據,=0未收到8個數據*/
unsigned	char	receive232[20];			/* 232串口接收數據數組 */
unsigned	char	send232[20];				/* 232串口發送數據數組 */

/* ****************************************************************
** 函 數 名: initial()
** 功能描述: 系統初始化子程序,放在程序首部
*************************************************************** */
void	initial()
{
	INTCON=0x00;					/* bit7-bit0:關總中斷 */
	ADCON1=0X07;					/* 設置數字輸入輸出口 */
	PIE1=0;							/* PIE1 的中斷不使能 */	
	PIE2=0;							/* PIE2 的中斷不使能 */	
	PIE3=0;							/* PIE3 的中斷不使能 */	
}
	
/* ****************************************************************
** 函 數 名: sciinitial()
** 功能描述: 串行通訊初始化子程序
*************************************************************** */
void	sciinitial()
{
	SPBRG=25;						/* 4M,波特率9600時為SPBRG=25 */
	TXSTA=0x04;						/* 選擇異步高速方式傳輸8位數據 */
	RCSTA=0x80;						/* 允許串行口工作使能 */
	TRISC=TRISC|0X80;				/* RC7(RX)設置為輸入方式 */
	TRISC=TRISC&0Xbf;				/* RC6(TX)設置為輸出 */
	PIE1=PIE1|0x20;					/* 允許串行通訊接口接收中斷使能 */
	RCIP=0;							/* 設置SCI接收中斷為低優先級中斷 */
	PIE1=PIE1|0x10;					/* 允許中斷發送 */
	TXIP=0;							/* 低優先級中斷 */
	CREN=1;						/* 允許串口接收數據 */
//	TXEN=1;						/* 允許串口發送數據 */
}

/* ****************************************************************
** 函 數 名: initcan()
** 功能描述: CAN初始化子程序,采用標準標識符,正常工作模式
*************************************************************** */
void	initcan()
{
	/* ************設置對CAN進行配置***************  */
	TRISB=(TRISB|0X08)&0XFB;		/*設置CANRX/RB3輸入,CANTX/RB2輸出*/
	CANCON=0X80;					/* CANCON,bit7-5:1XX請求配置 */
	while((CANSTAT&0X80)==0)		/* CAN狀態寄存器。bit7-5:100配置方式 */
	{							
		;
	}								/* 等待進入CAN配置模式OPMODE=100 */
	/* ************設置對CAN進行配置***************  */

	/*  ***********波特率設置 ************************** */
	BRGCON1=0X01;				/* Sync_Seg(bit7-6)=1TQ,BRP(bit5-0)=1,
								則TQ=((2*(BRP+1))/Fosc=4/4M=1us */
	BRGCON2=0X90;			/*bit7=1自由編程,bit6=0總線在采樣點采樣1
次;phase_Seg1(bit5-3)=3TQ;Prog_Seg(bit2-0)=1TQ*/
	BRGCON3=0X42;			/* 設置Phase_Seg2(bit2-0)=3TQ */
	/* 標稱位時間=TQ*(Sync_Seg+ Prop_Seg+ Phase_seg1+ Phase_seg2)
=(1+1+3+3)TQ=8TQ,    位率=1/(8*1U)=0.125MHz */

	/* 設置發送郵箱0標識符 :00110011111=0x019F */
	CAN_TX_Adress_H=0x33;		//CAN高地址標識符,應與發送方標識符相同
	CAN_TX_Adress_L=0xe0;		//CAN低地址標識符
	CAN_TX_Adress_L=CAN_TX_Adress_L&0xe0;

	/* 設置接收郵箱0標識符 :10011001010=0x04CA */
	CAN_RX_Adress_H=0x99;		//CAN高地址標識符
	CAN_RX_Adress_L=0x55;		//CAN低地址標識符,應與發送方標識符相同
	CAN_RX_Adress_L=CAN_RX_Adress_L&0xe0;

	/*  ******設置發送郵箱0和初始發送的數據*****  */
	TXB0CON=0X03;					/* bit1-0:發送優先級,設置TXB0為最高優先級3 */
	TXB0SIDL=CAN_TX_Adress_L&0xe0;/* bit3=0標準標識符,bit7-5:標準標識符2-0位*/
	TXB0SIDH=CAN_TX_Adress_H;	/* 標準標識符的10-3位*/
	TXB0DLC=0X08;					/* 設置數據長度為8個字節 */
	TXB0D0=0X00;					/* 寫發送緩沖器數據區數據初值 */
	TXB0D1=0X01;					/* 寫發送緩沖器數據區數據初值 */
	TXB0D2=0X02;
	TXB0D3=0X03;
	TXB0D4=0X04;
	TXB0D5=0X05;
	TXB0D6=0X06;
	TXB0D7=0X07;

	RXB0SIDL=CAN_RX_Adress_L&0xe0;/* bit3=0標準標識符,bit7-5:標準標識符2-0位*/
	RXB0SIDH=CAN_RX_Adress_H;		/* 標準標識符的10-3位 */
	RXB0CON=0X20;						/* bit6-5=01只接收有效的標準標識符信息 */
	RXB0DLC=0X08;						/* 設置接收緩沖器0數據區長度8個字節 */
	RXB0D0=0X02;						/* 初始化接收緩沖器0的數據區數據 */
	RXB0D1=0X03;						/* 初始化接收緩沖器0的數據區數據 */
	RXB0D2=0X04;
	RXB0D3=0X05;
	RXB0D4=0X00;
	RXB0D5=0X00;
	RXB0D6=0X00;
	RXB0D7=0X00;

	/* *******初始化接收濾波器0和接收屏蔽**************** */
	RXF0SIDH=CAN_RX_Adress_H;		
	RXF0SIDL=CAN_RX_Adress_L&0xe0;	/*高3位為標識符低3位,低5位是配置 */
	RXM0SIDH=0Xff;
	RXM0SIDL=0Xe0;				/* 11個1表示接收11位標識符進行濾波,標識符
不同不接收;若全為0,若正確信息,全部接收*/
		
	/* *******設置CAN工作模式**************************** */
	CANCON=0X00;					//=0X40,進入自測試模式;=0x00,正常操作模式
	while((CANSTAT&0XE0)!=0)		/* 檢測CAN配置完成 */
	{
		;
	}

	/* 初始化CAN的中斷,PIR3為CAN的外圍中斷標志寄存器 */
	PIR3=0X00;					/* 清所有CAN中斷標志*/
	PIE3=PIE3|0X01;				/* 使能接收緩沖器0的接收中斷 */
	IPR3=IPR3|0X01;				/* 接收緩沖器0的接收中斷為最高優先級 */
}

/* ****************************************************************
** 函 數 名: interrupt	HI_ISR()
** 功能描述: 高優先級中斷子程序:RXB0接收郵箱0接收中斷子程序
*************************************************************** */
void interrupt	HI_ISR()
{
	if(RXB0IF==1)
	{
  		CAN_FLAG=1;				/* 置接收到 CAN 數據 */
		RXB0IF=0;					/* 清接收中斷標志 */
		RXB0FUL=0;					/* bit7=0,打開接收緩沖器接收新信息 */
	}
}

/* ****************************************************************
** 函 數 名: interrupt low_priority	LOW_ISR()
** 功能描述: 低優先級中斷子程序:232接收發送中斷子程序
*************************************************************** */
void	interrupt low_priority	LOW_ISR()
{
	if(RCIF==1)						/* 232接收中斷 */
	{
		RCIF=0;						/* 清接收中斷標志 */
		receive232[receive_count]=RCREG;		/* 接收數據并存儲 */
		receive_count++;				/* 接收計數器加1 */
		if(receive_count>7)				/* 接收到8個數據 */
		{
			receive_count=0;			/* 接收計數器清0 */
			SciReceiveFlag=1;			/* 置接收到數據標志 */
		}
	}
	else	if(TXIF==1)					/* 232發送中斷 */
	{
		TXIF=0;						/* 不能用軟件清0	 */
		if(send_count>7)				/* 發送完8個數據 */
		{
			TXEN=0;				/* 關發送使能 */
			return;
		}
		else
			{
				send_count++;			/* 發送計數器加1 */
				TXREG=*pointer++;	/* 發送數據,發送指針加1 */
			}
	}
}

main()
{
	initial();							/* 系統初始化子程序 */
	sciinitial();						/* 串行通訊初始化子程序 */
	initcan();							/* CAN設置初始化 */
	IPEN=1;							/* 使能中斷高低優先級 */
	INTCON=INTCON|0xc0;			/* 開總中斷、開外圍接口中斷 */
	TXB0REQ=0;						/* TXB0REQ=0 關發送 */
	while(1)
	{
		if(SciReceiveFlag==1)			/* 接收到232通信 */
		{		
			TXB0CON=TXB0CON&0xf7;	/*bit3:TXREQ=0, 關請求發送*/
			SciReceiveFlag=0;
			pointer=&receive232[0];
			TXB0D0=*pointer++;			/* 用接收數據來更新發送數據 */
			TXB0D1=*pointer++;
			TXB0D2=*pointer++;
			TXB0D3=*pointer++;
			TXB0D4=*pointer++;
			TXB0D5=*pointer++;
			TXB0D6=*pointer++;
			TXB0D7=*pointer++;
			TXB0CON=TXB0CON|0x08;	/* 請求發送,bit3:TXREQ=1 */
			while(TXB0IF!=1)
			{
				;
			}							/* 等待發送完成 */
		}

		if(CAN_FLAG==1)				/* 接收到CAN通信 */
		{
			CAN_FLAG=0;				/* 接收到標志 */
			send232[0]=RXB0D0;
			send232[1]=RXB0D1;
			send232[2]=RXB0D2;
			send232[3]=RXB0D3;
			send232[4]=RXB0D4;
			send232[5]=RXB0D5;
			send232[6]=RXB0D6;
			send232[7]=RXB0D7;
			send_count=0;					/*  發送計數器清0 */
			pointer=&send232[0];			/* 指向發送的第一個數據地址 */
			TXREG=*pointer++;			/* 發送第一個數據 */
			TXEN=1;					/* 允許發送數據 */	
		}
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品国产自产拍在线| 欧美在线免费播放| 91日韩在线专区| 欧美日韩在线一区二区| 日韩一二三区不卡| 久久久www免费人成精品| 国产精品国产成人国产三级| 亚洲美女免费在线| 日韩二区三区四区| 成人免费av在线| 欧美日韩激情在线| 国产日韩影视精品| 亚洲一区二区三区四区五区黄 | 欧美吻胸吃奶大尺度电影 | 国产伦精品一区二区三区免费迷| 从欧美一区二区三区| 欧美少妇一区二区| 欧美韩日一区二区三区| 亚洲福利一二三区| 国产精品一区专区| 欧美视频一区二区三区四区| 国产亚洲视频系列| 亚洲va韩国va欧美va| 国产91丝袜在线播放| 欧美巨大另类极品videosbest| 久久久综合精品| 午夜精品久久久久久久久久| 成人a区在线观看| 欧美一级午夜免费电影| 亚洲柠檬福利资源导航| 国内久久婷婷综合| 欧美午夜视频网站| 中文字幕一区二区三区不卡在线 | 欧美精品在线观看播放| 中文字幕欧美一| 精品一区中文字幕| 欧美猛男超大videosgay| 国产精品视频观看| 久久av资源网| 91 com成人网| 一区二区三区在线不卡| 成人激情免费视频| 精品久久99ma| 秋霞午夜av一区二区三区| 色激情天天射综合网| 国产精品久久久久久久浪潮网站| 久久99热这里只有精品| 欧美日韩免费观看一区三区| 亚洲婷婷国产精品电影人久久| 国产精品香蕉一区二区三区| 日韩一级片网址| 午夜视频一区二区| 在线亚洲+欧美+日本专区| 中文字幕日本不卡| 粉嫩13p一区二区三区| 久久九九全国免费| 精彩视频一区二区| 欧美大片日本大片免费观看| 日韩国产精品久久| 欧美电影一区二区三区| 亚洲成人av一区二区三区| 日本高清不卡在线观看| 亚洲婷婷国产精品电影人久久| 成人综合激情网| 国产精品视频一二| 国产mv日韩mv欧美| 欧美国产一区在线| 成人中文字幕合集| 国产精品天美传媒| 成人精品在线视频观看| 国产视频一区二区在线| 国产二区国产一区在线观看| 精品国产免费人成在线观看| 精品无人码麻豆乱码1区2区| 日韩午夜激情视频| 久久精品国产免费看久久精品| 精品噜噜噜噜久久久久久久久试看 | 青青草原综合久久大伊人精品| 69精品人人人人| 男男成人高潮片免费网站| 欧美一区二区啪啪| 精品一区二区免费| 久久久久国产一区二区三区四区| 福利视频网站一区二区三区| 国产精品色在线| 91视频国产观看| 亚洲图片欧美视频| 91精品久久久久久蜜臀| 狠狠色狠狠色综合系列| 国产色爱av资源综合区| av一区二区三区黑人| 一区二区免费在线| 欧美电影在哪看比较好| 国内久久婷婷综合| 国产精品国产三级国产有无不卡 | 爽好久久久欧美精品| 日韩视频免费观看高清完整版 | 国产亲近乱来精品视频| av日韩在线网站| 亚洲高清视频在线| 欧美一卡在线观看| 国产精品一区在线观看你懂的| 中文一区二区完整视频在线观看| 91老司机福利 在线| 亚洲观看高清完整版在线观看| 欧美一区二区免费视频| 国产精品一区免费视频| 1024亚洲合集| 欧美美女直播网站| 国产一区二区中文字幕| 亚洲色图欧洲色图| 欧美一级艳片视频免费观看| 成人一区二区在线观看| 亚洲综合丝袜美腿| 精品久久久久久无| 色综合天天狠狠| 美女看a上一区| 国产精品久久久久aaaa樱花| 欧美老肥妇做.爰bbww视频| 国产乱码精品1区2区3区| 亚洲另类在线视频| 欧美精品一区二区久久久| 色综合咪咪久久| 久久国产夜色精品鲁鲁99| 亚洲丝袜另类动漫二区| 欧美大白屁股肥臀xxxxxx| 成人爱爱电影网址| 老司机午夜精品| 一区二区三区四区在线免费观看 | 国产精品白丝jk白祙喷水网站 | 欧美一卡2卡三卡4卡5免费| 成人激情动漫在线观看| 日韩av不卡一区二区| 中文字幕一区不卡| 日韩欧美在线综合网| 91丨国产丨九色丨pron| 六月丁香综合在线视频| 亚洲一二三区不卡| 国产欧美日韩中文久久| 91精品久久久久久久91蜜桃| 99久久免费国产| 黄一区二区三区| 午夜精品国产更新| 成人欧美一区二区三区视频网页| 精品国产一区二区在线观看| 欧美日韩综合一区| 99久久国产免费看| 国产成人久久精品77777最新版本| 日韩1区2区3区| 一区二区三区四区高清精品免费观看 | 亚洲国产精品久久艾草纯爱| 国产精品嫩草99a| 精品美女一区二区| 欧美剧在线免费观看网站| 色婷婷精品久久二区二区蜜臂av | 国产精品动漫网站| 久久久久一区二区三区四区| 91麻豆精品国产91久久久使用方法| 97国产一区二区| 国产成人亚洲精品狼色在线| 蓝色福利精品导航| 琪琪一区二区三区| 午夜免费久久看| 亚洲一区二区av在线| 亚洲男人的天堂在线观看| 国产精品麻豆视频| 欧美国产一区视频在线观看| 久久久精品日韩欧美| 精品国产一区a| 精品国产乱码久久久久久影片| 欧美一区二区私人影院日本| 欧美人狂配大交3d怪物一区| 91国产成人在线| 欧洲视频一区二区| 欧美优质美女网站| 色狠狠av一区二区三区| 91首页免费视频| 91老师国产黑色丝袜在线| 色综合网站在线| 99久久精品99国产精品| 91亚洲精品乱码久久久久久蜜桃| 99久久精品国产一区二区三区 | 亚洲国产另类精品专区| 尤物在线观看一区| 一区二区三区四区不卡在线| 一区二区在线观看视频在线观看| 亚洲精品中文在线观看| 亚洲一区欧美一区| 亚洲444eee在线观看| 天堂蜜桃一区二区三区| 免费久久精品视频| 久久se精品一区二区| 国产尤物一区二区| 高清不卡在线观看| a亚洲天堂av| 欧洲一区二区三区免费视频| 欧美精品在线一区二区三区| 欧美一区二区久久| 久久综合久久久久88| 国产欧美日韩不卡|