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

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

?? f2812_cantx.c

?? TMS320X281xDSP原理及C程序開發.rar
?? C
字號:
//==========================================================================
//
// 文件名稱:	F2812_CANTX.c
//
// 功能描述:	DSP28 CAN 傳輸測試  
//			    CPU Timer0 ISR周期 50 ms
//			    看門狗使能,在主循環中處理
//			    CAN 消息 : 發送一個字節的數據
//		 	    CAN通信速率: 100KBPS
//			    擴展標識符 :  0x1000 0000
//			    使用的郵箱 :Mailbox #5	 
//
//==========================================================================

#include "DSP281x_Device.h"

// 函數原型聲明

void Gpio_select(void);
void InitSystem(void);  
void InitCan();
interrupt void cpu_timer0_isr(void); // 定時器0中斷服務程序

void main(void)
{
	struct	ECAN_REGS ECanaShadow;
    int TXcounter = 0;
	InitSystem();		// 初始化DSP內核寄存器

	Gpio_select();		// 配置GPIO復用功能寄存器
    
    InitPieCtrl();		// 調用外設中斷擴展初始化單元 PIE-unit ( 代碼 : DSP281x_PieCtrl.c)
	
    InitPieVectTable(); // 初始化 PIE vector向量表  ( 代碼 : DSP281x_PieVect.c )
	
	// 重新映射 PIE -  Timer 0的中斷 
	EALLOW;  // 解除寄存器保護
   	PieVectTable.TINT0 = &cpu_timer0_isr;
   	EDIS;    // 使能寄存器保護
	
	InitCpuTimers();
	
	// 配置 CPU-Timer 0 周期50 ms:
	// 150MHz CPU 頻率, 50000 微妙中斷周期
    ConfigCpuTimer(&CpuTimer0, 150, 50000);
    
    // 使能PIE內的 TINT0 : Group 1 interrupt 7
   	PieCtrlRegs.PIEIER1.bit.INTx7 = 1;
	

    // 使能 CPU INT 1  (CPU定時器0中斷)
    IER = 1;	    
    
    // 全局中斷使能和更高優先級的實時調試事件
   	EINT;   // 全局中斷使能INTM
   	ERTM;   // 使能實時調試中斷DBGM

  	 
   	InitCan();  // 初始化CAN模塊
   	
   	/* 寫消息標識符 MSGID  */
    
    ECanaMboxes.MBOX5.MSGID.all     = 0x10000000; 
    ECanaMboxes.MBOX5.MSGID.bit.IDE = 1;  // 擴展標識符
       
	/* 配置 Mailbox 5 作為發送郵箱 */

	ECanaShadow.CANMD.all = ECanaRegs.CANMD.all;	
	ECanaShadow.CANMD.bit.MD5 = 0;
	ECanaRegs.CANMD.all = ECanaShadow.CANMD.all; 
	
	/* 使能郵箱 */
	
	ECanaShadow.CANME.all = ECanaRegs.CANME.all;	
	ECanaShadow.CANME.bit.ME5 = 1;
	ECanaRegs.CANME.all = ECanaShadow.CANME.all; 
	
	/* 在消息控制寄存器中寫 DLC 區 */

	ECanaMboxes.MBOX5.MSGCTRL.bit.DLC = 1;  
   	 
   	CpuTimer0Regs.TCR.bit.TSS = 0;
   	
	while(1)
	{    
  	    while(CpuTimer0.InterruptCount < 20)
    		{			 						//等待定時器0
  				EALLOW;
    			SysCtrlRegs.WDKEY = 0xAA;		// 看門狗控制		
	    		EDIS;
	    	}
	    CpuTimer0.InterruptCount = 0;		// 定時器中斷復位
	   // ECanaMboxes.MBOX5.MDL.byte.BYTE0 = (GpioDataRegs.GPBDAT.all>>8 ) ;
     	ECanaMboxes.MBOX5.MDL.byte.BYTE0 = 0x55;
     	ECanaShadow.CANTRS.all = 0; 	
     	ECanaShadow.CANTRS.bit.TRS5 = 1;     // 設置 TRS for mailbox under test       
     	ECanaRegs.CANTRS.all = ECanaShadow.CANTRS.all; 
         
     	while(ECanaRegs.CANTA.bit.TA5 == 0 ) {}  // 等待 TA5 bit 置位..
        TXcounter++;
     	ECanaShadow.CANTA.all = 0; 	
     	ECanaShadow.CANTA.bit.TA5 = 1;     	 // 清除 TA5       
     	ECanaRegs.CANTA.all = ECanaShadow.CANTA.all;
	}
} 	

void Gpio_select(void)
{
	EALLOW;
	GpioMuxRegs.GPAMUX.all = 0x0;	// 所有GPIO引腳配置為I/O
    GpioMuxRegs.GPBMUX.all = 0x0;   
    GpioMuxRegs.GPDMUX.all = 0x0;
    GpioMuxRegs.GPFMUX.all = 0x0;	
    GpioMuxRegs.GPFMUX.bit.CANTXA_GPIOF6 = 1;  //CAN引腳配置
	GpioMuxRegs.GPFMUX.bit.CANRXA_GPIOF7 = 1;		 
    GpioMuxRegs.GPEMUX.all = 0x0; 
    GpioMuxRegs.GPGMUX.all = 0x0;			
										
    GpioMuxRegs.GPADIR.all = 0x0;	  // GPIO PORT 配置為輸入
    GpioMuxRegs.GPBDIR.all = 0x0;  // GPIO Port B15-B8  配置為輸入 , B7-B0  配置為輸出
    GpioMuxRegs.GPDDIR.all = 0x0;	  // GPIO PORT   配置為輸入
    GpioMuxRegs.GPEDIR.all = 0x0;	  // GPIO PORT   配置為輸入
    GpioMuxRegs.GPFDIR.all = 0x0;	  // GPIO PORT   配置為輸入
    GpioMuxRegs.GPGDIR.all = 0x0;	  // GPIO PORT   配置為輸入

    GpioMuxRegs.GPAQUAL.all = 0x0;	  // 設置所有 GPIO 輸入的量化值等于0
    GpioMuxRegs.GPBQUAL.all = 0x0;
    GpioMuxRegs.GPDQUAL.all = 0x0;
    GpioMuxRegs.GPEQUAL.all = 0x0;
    EDIS;
}     

void InitSystem(void)
{

   	EALLOW;
   	SysCtrlRegs.WDCR= 0x00AF;		// 配置看門狗 
   									// 0x00E8  禁止看門狗,預定標系數Prescaler = 1
   									// 0x00AF  不禁止看門狗, 預定標系數Prescaler = 64
   	SysCtrlRegs.SCSR = 0; 			// 看門狗產生復位	
   	SysCtrlRegs.PLLCR.bit.DIV = 10;	// 配置處理器鎖相環,倍頻系數為5
    
   	SysCtrlRegs.HISPCP.all = 0x1;   // 配置高速外設時鐘分頻系數: 2
   	SysCtrlRegs.LOSPCP.all = 0x2;   // 配置低速外設時鐘分頻系數: 4
      	
   	// 使用的外設時鐘時鐘設置:
   	// 一般不使用的外設的時鐘禁止,降低系統功耗   
   	SysCtrlRegs.PCLKCR.bit.EVAENCLK=0;
   	SysCtrlRegs.PCLKCR.bit.EVBENCLK=0;
   	SysCtrlRegs.PCLKCR.bit.SCIAENCLK=0;
   	SysCtrlRegs.PCLKCR.bit.SCIBENCLK=0;
   	SysCtrlRegs.PCLKCR.bit.MCBSPENCLK=0;
   	SysCtrlRegs.PCLKCR.bit.SPIENCLK=0;
   	SysCtrlRegs.PCLKCR.bit.ECANENCLK=1; // 使能CAN模塊的時鐘
   	SysCtrlRegs.PCLKCR.bit.ADCENCLK=0;
   	EDIS;

}

interrupt void cpu_timer0_isr(void)
{
    CpuTimer0.InterruptCount++;
   	// 每個定時器中斷清除一次看門狗計數器
   	EALLOW;
	SysCtrlRegs.WDKEY = 0x55;		// 看門狗控制
	EDIS;

   // 響應中斷并允許系統接收更多的中斷
   PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;
}            

void InitCan(void)
{
	asm("  EALLOW");
/* 通過eCAN寄存器配置RX和TX引腳作為發送接收*/  
    
    ECanaRegs.CANTIOC.bit.TXFUNC = 1;
    ECanaRegs.CANRIOC.bit.RXFUNC = 1;   

/* 配置 eCAN 工作在 HECC模式 - (請求訪問郵箱16 到 31) */
// HECC模式還是能時間標簽功能
	ECanaRegs.CANMC.bit.SCB = 1;				

/* 配置位的時間參數 */

	ECanaRegs.CANMC.bit.CCR = 1 ;            // 設置 CCR = 1
    
    while(ECanaRegs.CANES.bit.CCE != 1 ) {}   //等待 CCE bit置位..
    
    ECanaRegs.CANBTC.bit.BRPREG = 99;
    ECanaRegs.CANBTC.bit.TSEG2REG = 2;
    ECanaRegs.CANBTC.bit.TSEG1REG = 10;  
    
    ECanaRegs.CANMC.bit.CCR = 0 ;             // 設置 CCR = 0
    while(ECanaRegs.CANES.bit.CCE == !0 ) {}   // 等待 CCE bit清0..

/* Disable all Mailboxes  */
	
 	ECanaRegs.CANME.all = 0;		// 寫 MSGIDs之前發出請求
	asm("  EDIS");
}    
/***************************************************/
/*  150 MHz SYSCLKOUT 時eCAN的時序配置             */ 
/***************************************************/
/*
下表給出在BT = 15  SP=80%時,BRP不同的配置方式CAN的通信速率

---------------------------------------------------
BT = 15, TSEG1 = 10, TSEG2 = 2, Sampling Point = 80% 
---------------------------------------------------
1   Mbps : BRP+1 = 10 	: CAN clock = 15 MHz
500 kbps : BRP+1 = 20 	: CAN clock = 7.5 MHz 
250 kbps : BRP+1 = 40 	: CAN clock = 3.75 MHz 
125 kbps : BRP+1 = 80 	: CAN clock = 1.875 MHz 
100 kbps : BRP+1 = 100 	: CAN clock = 1.5 MHz
50  kbps : BRP+1 = 200 	: CAN clock = 0.75 MHz


-------------------------------------------------------------
 BT = 25時,通過改變 TSEG1 & TSEG2 獲得的不同的采樣點  
-------------------------------------------------------------

TSEG1 = 18, TSEG2 = 4, SP = 80% 
TSEG1 = 17, TSEG2 = 5, SP = 76% 
TSEG1 = 16, TSEG2 = 6, SP = 72% 
TSEG1 = 15, TSEG2 = 7, SP = 68% 
TSEG1 = 14, TSEG2 = 8, SP = 64% 

 BT = 25時,BRP不同的配置方式CAN的通信速率

1   Mbps : BRP+1 = 6 
500 kbps : BRP+1 = 12 
250 kbps : BRP+1 = 24 
125 kbps : BRP+1 = 48 
100 kbps : BRP+1 = 60
50  kbps : BRP+1 = 120

*/

//===========================================================================
// End of SourceCode.
//===========================================================================

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲一区中文日韩| 在线亚洲高清视频| 香蕉久久夜色精品国产使用方法 | 一级精品视频在线观看宜春院| 久久久国产午夜精品| 欧美成人国产一区二区| 日韩美女主播在线视频一区二区三区 | 欧美精品一区二区三区在线| 日韩一区二区三区av| 制服丝袜日韩国产| 日韩免费视频一区二区| 欧美精品一区二区在线播放| 久久精品日韩一区二区三区| 国产人久久人人人人爽| 日韩一区欧美一区| 亚洲成人www| 国产在线精品一区二区三区不卡| 久久狠狠亚洲综合| 国产精品18久久久久久vr| 国产suv精品一区二区6| 99re成人在线| 欧美高清hd18日本| 久久午夜免费电影| 亚洲欧美一区二区三区久本道91| 亚洲一区二区三区视频在线| 日韩激情视频网站| 国产精品羞羞答答xxdd| 色综合久久天天| 日韩欧美不卡在线观看视频| 国产人成一区二区三区影院| 亚洲黄色免费网站| 精品伊人久久久久7777人| 成人精品亚洲人成在线| 精品视频1区2区| 精品福利一区二区三区| 亚洲精品成人天堂一二三| 久久国产综合精品| 日本精品视频一区二区三区| 日韩一级完整毛片| 亚洲欧美另类久久久精品2019| 日韩电影在线一区| 91小视频在线观看| 久久久久久99久久久精品网站| 亚洲欧美电影一区二区| 精品亚洲国产成人av制服丝袜| 91在线精品秘密一区二区| 日韩午夜在线播放| 亚洲综合免费观看高清完整版在线| 蜜桃视频在线观看一区| 91在线视频免费91| 久久精品人人爽人人爽| 香蕉成人伊视频在线观看| 99精品欧美一区二区蜜桃免费| 日韩美女天天操| 亚洲成人av电影在线| 成人免费毛片嘿嘿连载视频| 日韩一卡二卡三卡四卡| 首页国产欧美久久| 在线亚洲一区二区| 亚洲日本一区二区三区| 国产成人精品免费在线| 2020国产精品自拍| 奇米色一区二区| 欧美一区二区精品在线| 天堂久久久久va久久久久| 91丨porny丨首页| 国产精品丝袜一区| 国产美女精品人人做人人爽| 日韩欧美视频一区| 日韩国产在线观看| 欧美浪妇xxxx高跟鞋交| 亚洲综合激情另类小说区| 色香蕉久久蜜桃| 亚洲人成人一区二区在线观看 | 亚洲女人小视频在线观看| 成人黄色免费短视频| 国产精品传媒入口麻豆| 成人少妇影院yyyy| 亚洲人123区| 91高清视频免费看| 亚洲bt欧美bt精品777| 欧美日韩国产首页| 亚洲综合精品自拍| 欧美在线观看一区二区| 亚洲一区在线观看免费| 欧美日韩在线播放三区四区| 亚洲一区二区精品3399| 欧美精品免费视频| 久久精品国产在热久久| 久久九九久精品国产免费直播| 丰满少妇在线播放bd日韩电影| 国产精品欧美一区二区三区| 成人精品视频.| 亚洲激情图片qvod| 欧美猛男超大videosgay| 男女男精品网站| 日韩午夜中文字幕| 裸体健美xxxx欧美裸体表演| 久久毛片高清国产| 91丨porny丨户外露出| 丝袜美腿高跟呻吟高潮一区| 精品国产人成亚洲区| 成人福利在线看| 午夜精品免费在线| 久久久综合视频| 色综合久久天天| 美女视频黄a大片欧美| 国产亚洲福利社区一区| 欧美在线free| 国产乱码一区二区三区| 亚洲最大成人综合| 久久先锋影音av| 欧美日韩久久久| 成人一区在线看| 蜜臀av性久久久久蜜臀av麻豆| 国产精品毛片大码女人| 制服.丝袜.亚洲.中文.综合| 国产成人午夜99999| 亚洲午夜电影在线观看| 久久久久久久久免费| 欧美在线高清视频| 成人午夜免费视频| 麻豆国产精品视频| 一区二区三区不卡在线观看| 欧美不卡一二三| 欧美日韩一区在线观看| 东方aⅴ免费观看久久av| 日韩国产精品久久久久久亚洲| 国产精品久99| 久久精品一区二区三区不卡牛牛| 欧美日韩亚洲综合| 91亚洲资源网| 高清久久久久久| 精品在线播放免费| 日韩电影免费在线看| 亚洲国产综合色| 亚洲色图丝袜美腿| 国产精品久99| 2019国产精品| 精品欧美久久久| 欧美一卡2卡3卡4卡| 欧美日韩精品一区二区三区四区| 成人免费毛片app| 国产精品资源在线看| 久久精品久久综合| 久久国产精品72免费观看| 亚洲第一在线综合网站| 亚洲综合激情另类小说区| 中文字幕一区av| 国产精品久久久久精k8| 国产农村妇女毛片精品久久麻豆 | 国产精品污www在线观看| 精品久久久久香蕉网| 日韩精品一区二区三区三区免费| 91麻豆精品国产自产在线| 欧美性受极品xxxx喷水| 在线观看日韩电影| 欧美三级乱人伦电影| 精品视频在线免费观看| 日韩午夜激情免费电影| 666欧美在线视频| 日韩精品在线网站| 26uuu亚洲婷婷狠狠天堂| 91麻豆免费看片| 国产成人免费视| 国产一区二区三区在线观看精品| 中文字幕一区二区在线观看| 欧美国产欧美综合| 国产精品妹子av| 欧美韩国日本一区| 亚洲精品成人a在线观看| 一区二区成人在线| 久久精品国产成人一区二区三区| 日本成人在线看| 丁香激情综合五月| 精品视频一区二区不卡| 欧美成人一级视频| 国产亚洲欧美激情| 亚洲六月丁香色婷婷综合久久| 舔着乳尖日韩一区| 国产综合久久久久久久久久久久| thepron国产精品| 在线看一区二区| 久久久久久久久久久久久久久99 | 欧美日韩一区久久| 久久综合国产精品| 亚洲国产精品久久不卡毛片| 免费久久精品视频| 97精品国产露脸对白| 51久久夜色精品国产麻豆| 国产三级一区二区| 五月天视频一区| 成人激情av网| 欧美精品一区二区高清在线观看| 国产精品久久三| 蜜桃av噜噜一区二区三区小说| av中文字幕不卡| 精品久久久久久久人人人人传媒 | 成人免费小视频| 国产又粗又猛又爽又黄91精品|