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

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

?? can.c

?? DSP56F807的CAN通訊程序,可用于多子板互連、也可作為開發的原型程序
?? C
字號:
#include "can.h"
#include "dsp56f805_io.h"

#define CAN_BUFFER_LNG 64

/* done by William Jiang (a13984@motorola.com) */

/* Vesion 2.0 */

static int rx_buffer[CAN_BUFFER_LNG];
static int *volatile rx_iptr;
static int *rx_sptr; 			/* iptr belongs to ISR, sptr to SW */

void can_rx_isr(void) {
#pragma interrupt	saveall warn
	int i;
	for (i=0;i<((io.can.rb.idr[1]&0x0008)?4:2);i++) { /* IDR1 bit 3 = 1 --> 29-bit ID, otherwise 11-bit ID */
		*(rx_iptr++)=io.can.rb.idr[i];
		if (rx_iptr>=(rx_buffer+CAN_BUFFER_LNG)) rx_iptr=rx_buffer;
	}
	*(rx_iptr++)= (io.can.rb.dlr & 0x000f);
	if (rx_iptr>=(rx_buffer+CAN_BUFFER_LNG)) rx_iptr=rx_buffer;
	for (i=0;i<(io.can.rb.dlr & 0x000f);i++) {
		*(rx_iptr++)=io.can.rb.sdr[i];
		if (rx_iptr>=(rx_buffer+CAN_BUFFER_LNG)) rx_iptr=rx_buffer;
	}
	io.can.rflg=0x0001;			/*clear receive interrupt flag */	
}

void can_init_hw(struct can_config *config) {
	io.can.ctl0=0x0001;							/* soft reset mode */
	io.can.btr0=(*config).timing & 0x00ff;
	io.can.btr1=((*config).timing & 0xff00)>>8;
	io.can.idac=((*config).filters & 0x0003)<<5;
	io.can.dar0=(*config).acceptance0.f8b.filter0;
	io.can.dar1=(*config).acceptance0.f8b.filter1;
	io.can.dar2=(*config).acceptance0.f8b.filter2;
	io.can.dar3=(*config).acceptance0.f8b.filter3;
	io.can.dmr0=(*config).mask0.f8b.filter0;
	io.can.dmr1=(*config).mask0.f8b.filter1;
	io.can.dmr2=(*config).mask0.f8b.filter2;
	io.can.dmr3=(*config).mask0.f8b.filter3;
	io.can.dar4=(*config).acceptance1.f8b.filter0;
	io.can.dar5=(*config).acceptance1.f8b.filter1;
	io.can.dar6=(*config).acceptance1.f8b.filter2;
	io.can.dar7=(*config).acceptance1.f8b.filter3;
	io.can.dmr4=(*config).mask1.f8b.filter0;
	io.can.dmr5=(*config).mask1.f8b.filter1;
	io.can.dmr6=(*config).mask1.f8b.filter2;
	io.can.dmr7=(*config).mask1.f8b.filter3;
#if 0
	// 0.5Mbps ok
	io.can.ctl1=0x0080;							/* enable can, clock from EXTAL */
#else
	// 0.5Mbps for config.timing=0x1409
	io.can.ctl1=0x0081;							/* enable can, clock from IP bus */
#endif
//	io.can.ctl1=0x0084;							/* the same in loop test mode */
	io.can.ctl0=0;
	io.can.rier=0x0001;							/* enable Rx interrupt */
	io.can.tcr=0;								/* disable Tx interrupts */
	cr.ipr|=0x8000;								/* enable level 1 interrupts */
	asm	{bfset	#0x0100,sr}						/* enable maskable interrupts */
	asm {bfclr	#0x0200,sr}
	io.ictn.gpr[3]|=0x1100;						/* assign IRQs 14,15 to group 1 */
}

void can_init(struct can_config *config) {
	rx_iptr=rx_sptr=rx_buffer;
	can_init_hw(config);
}

int can_rxstat(void) {
	return(rx_iptr-rx_sptr);
}

int can_tx(int buffer, struct can_frame *data) {
	unsigned int *tx_buffer_base;
	unsigned int mask;
	int i;
	if ((buffer>-1)&&(buffer<3)) mask=(1>>buffer); else mask=7;
	while (!(io.can.tflg&mask)); 			/* wait for buffer to become free */
	mask=io.can.tflg&mask;
	mask=(mask&0x0001)?1:((mask&0x0002)?2:4);
	tx_buffer_base=(unsigned int*)&io.can.tb[mask>>1];
	for (i=0;i<14;i++) *(tx_buffer_base+i)=*(((int *)(data))+i);
	io.can.tflg=mask;
	return(mask>>1);
}

int can_rx(struct can_frame *data) {
	int i;
	for (i=0;i<2;i++) {								/* receive standard header */
		data->id[i]=*(rx_sptr++);
		if (rx_sptr>=(rx_buffer+CAN_BUFFER_LNG)) rx_sptr=rx_buffer;
	}
	if (data->id[1]&0x0008) for (i=2;i<4;i++) {		/* if IDE==1, receive rest of 32-bit header */
		data->id[i]=*(rx_sptr++);
		if (rx_sptr>=(rx_buffer+CAN_BUFFER_LNG)) rx_sptr=rx_buffer;
	}
	data->length=*(rx_sptr++);						/* length */
	if (rx_sptr>=(rx_buffer+CAN_BUFFER_LNG)) rx_sptr=rx_buffer;
	for (i=0;i<data->length;i++) {					/* data */
		data->data[i]=*(rx_sptr++);
		if (rx_sptr>=(rx_buffer+CAN_BUFFER_LNG)) rx_sptr=rx_buffer;
	}
}


short	can_rxflag(void)
{
	return (io.can.rflg);
}

void can_clr_rxflag(short flag)
{
	io.can.rflg |= flag;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美国产综合色视频| 欧美不卡一区二区三区| 激情文学综合丁香| 免费看精品久久片| 久久99热99| 国产不卡视频在线播放| 久草中文综合在线| 国产在线观看一区二区| 精品一区二区三区欧美| 国产精品一区二区在线观看不卡| 九色|91porny| 国产精品18久久久久久久久久久久| 国产一区二区三区久久久 | 在线精品视频小说1| 91丨九色丨国产丨porny| av电影天堂一区二区在线| 91视频国产观看| 精品污污网站免费看| 欧美日韩精品一区二区| 7777精品伊人久久久大香线蕉的 | 激情深爱一区二区| 国产一区视频在线看| aaa国产一区| 欧美人妇做爰xxxⅹ性高电影| 制服.丝袜.亚洲.另类.中文| 日韩区在线观看| 国产亚洲成年网址在线观看| 国产精品美女久久久久久2018| 一级中文字幕一区二区| 久久精品免费观看| eeuss影院一区二区三区| 欧美吞精做爰啪啪高潮| 久久嫩草精品久久久精品| 亚洲美女在线一区| 黄色日韩三级电影| 欧美日韩一区二区三区四区五区| 日韩欧美国产午夜精品| 亚洲视频免费观看| 精品一区二区三区久久久| 91色综合久久久久婷婷| 久久久精品综合| 亚洲欧美区自拍先锋| 久久精品国产网站| 欧美三级三级三级爽爽爽| 久久影院视频免费| 视频一区国产视频| yourporn久久国产精品| 精品久久久久香蕉网| 亚洲一级电影视频| 粉嫩嫩av羞羞动漫久久久| 777精品伊人久久久久大香线蕉| 中文字幕一区av| 国产精品66部| 日韩午夜中文字幕| 午夜久久电影网| 91国在线观看| 中文字幕久久午夜不卡| 精品夜夜嗨av一区二区三区| 欧美精品在线一区二区三区| 中文字幕国产一区| 高清久久久久久| 欧美一区二区三区公司| 亚洲成在线观看| 欧美自拍偷拍午夜视频| 中文在线免费一区三区高中清不卡 | 色综合天天综合网国产成人综合天 | 国产校园另类小说区| 亚洲国产你懂的| 91网站在线观看视频| 欧美激情一区二区三区不卡 | 久久精品国产一区二区三区免费看| 色婷婷精品久久二区二区蜜臂av| 欧美极品xxx| 国产**成人网毛片九色 | 欧美日韩视频在线第一区| 亚洲天堂成人在线观看| 99久久久久久99| 1024精品合集| 99精品国产热久久91蜜凸| 国产精品亲子乱子伦xxxx裸| 成人一区二区三区视频 | 亚洲成在人线在线播放| 欧美揉bbbbb揉bbbbb| 午夜精品久久久久久久 | 成人午夜碰碰视频| 中文欧美字幕免费| 成人av小说网| 一区二区三区免费| 欧美肥胖老妇做爰| 久久99精品国产91久久来源| 26uuu久久天堂性欧美| 国产99久久久久| 亚洲另类一区二区| 91精品国产综合久久福利软件| 日韩av一区二区三区| 日韩欧美国产成人一区二区| 国产999精品久久| 亚洲免费观看高清完整版在线观看 | 天堂成人免费av电影一区| 欧美一级黄色录像| 成人一级片网址| 亚洲h在线观看| 国产三区在线成人av| 在线观看免费亚洲| 久久成人免费电影| 国产精品的网站| 欧美一区二区视频在线观看2022| 激情欧美日韩一区二区| 欧美剧在线免费观看网站| 国产一区二区影院| 亚洲第一二三四区| 中文字幕第一页久久| 欧美日韩1234| 成人av免费在线播放| 日韩av不卡在线观看| 中文一区二区在线观看| 欧美男女性生活在线直播观看| 国产剧情一区在线| 舔着乳尖日韩一区| 中文字幕日韩一区| 2024国产精品视频| 欧美日韩日本视频| 成人h动漫精品一区二| 精品在线观看免费| 亚洲高清三级视频| 中文字幕一区二区在线观看| 日韩精品中午字幕| 欧美日韩在线一区二区| av电影在线观看一区| 国产美女av一区二区三区| 亚洲无人区一区| 亚洲免费av高清| 国产精品久久国产精麻豆99网站| 欧美va亚洲va在线观看蝴蝶网| 欧美日韩一区二区三区高清 | 在线中文字幕一区| va亚洲va日韩不卡在线观看| 国产永久精品大片wwwapp | 亚洲国产岛国毛片在线| 精品久久久久久久久久久久久久久 | 欧美日韩综合不卡| 91丝袜美腿高跟国产极品老师 | 欧美视频一区二| aaa亚洲精品| 成人福利视频在线看| 国产精品一线二线三线精华| 三级影片在线观看欧美日韩一区二区| 中文字幕一区二区三区四区不卡| 久久久精品综合| 久久综合一区二区| 欧美成人精精品一区二区频| 欧美日韩免费不卡视频一区二区三区| 99re在线精品| 在线亚洲+欧美+日本专区| 99精品欧美一区二区三区小说 | 成人精品国产福利| 成人网在线免费视频| 成人av网址在线| 91女人视频在线观看| 一本一道久久a久久精品| 色哟哟在线观看一区二区三区| caoporn国产一区二区| 91蜜桃网址入口| 日本韩国视频一区二区| 在线观看国产日韩| 日韩一二在线观看| 国产网站一区二区| 国产精品福利一区二区| 一区二区欧美视频| 丝袜国产日韩另类美女| 精品一区二区成人精品| 成人天堂资源www在线| 91麻豆自制传媒国产之光| 91黄色小视频| 日韩一级片在线观看| 国产精品欧美一级免费| 一区二区三区丝袜| 蜜臀av一区二区| 成人性生交大片免费看中文| 色悠悠久久综合| 日韩欧美激情一区| 成人欧美一区二区三区小说| 五月天激情综合网| 国产乱码字幕精品高清av | 日本成人在线视频网站| 久久精品国产77777蜜臀| av一区二区三区在线| 欧美日韩www| 中文一区二区在线观看| 午夜久久久久久| 不卡的电影网站| 日韩欧美视频一区| 亚洲一区在线观看视频| 国产乱码字幕精品高清av| 欧美性感一类影片在线播放| 精品粉嫩aⅴ一区二区三区四区| 亚洲免费在线播放| 国产成人精品三级麻豆| 欧美酷刑日本凌虐凌虐| 国产农村妇女毛片精品久久麻豆 |