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

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

?? main.c

?? 基于stm32f103rb微處理的9路AD采樣并上傳至can總線
?? C
字號:
/**********************************************************************************
程序說明:本程序完成人形機器人腳掌傳感系統的采樣,并通過串口將數據傳出
作者:xiaocai_cqu
開始時間:2008/11/9
完成時間: 
**********************************************************************************/

#include "stm32f10x_lib.h"              /* STM32F10x Library Definitions      */

/*變量申明*/
CanTxMsg TxMessage;
CanRxMsg RxMessage;
extern unsigned short int ADC_ConvertedValue[9];
unsigned short int ADC_Can_Buffer[9]={0};//緩存ADC轉換結果
bool Flag_RemoteFrame=FALSE;

/* 函數原型申明*/
extern void SetupClock  (void);
extern void SetupADC    (void);		   
extern void SetupGPIO   (void);
void SetupCAN (void);
void NVIC_Configuration(void);
void CAN_Transimit(void);

int main (void)
{
  SetupClock();//配置時鐘系統
  SetupGPIO(); //配置端口
  SetupCAN();//配置can
  NVIC_Configuration();//配置嵌套向量中斷控制器
  SetupADC();  //配置ADC
  
  while(1)
  {
     if(CAN_MessagePending(CAN_FIFO0))	 //等待FIFO 0中接收到有報文
      {
	    CAN_Receive(CAN_FIFO0, &RxMessage);
	    if(RxMessage.RTR==CAN_RTR_REMOTE)
		 {
		   Flag_RemoteFrame=TRUE;
		 }
	   }
	 //CAN_Transimit();//通過can總線發送數據
//   /* CAN transmit at 500Kb/s and receive by interrupt in loopback mode*/
//   if(Trans_Empty_Flag == TRUE)
//    {
//      Trans_Empty_Flag=FALSE;
//	  /* Turn on led connected to PB.11 pin (LD4) */
//      GPIO_SetBits(GPIOB, GPIO_Pin_11);//標識發送郵箱全部為空
//	  CAN_Transimit();//通過can總線發送數據
//	}
//	else GPIO_ResetBits(GPIOB, GPIO_Pin_11);//標識發送郵箱不全部為空 
   }                 
}

/*******************************************************************************
* Function Name  : NVIC_Configuration
* Description    : Configures the NVIC and Vector Table base address.
* Input          : None
* Output         : None
* Return         : None
*******************************************************************************/
void NVIC_Configuration(void)
{
  NVIC_InitTypeDef NVIC_InitStructure;

#ifdef  VECT_TAB_RAM  
  /* Set the Vector Table base location at 0x20000000 */ 
  NVIC_SetVectorTable(NVIC_VectTab_RAM, 0x0); 
#else  /* VECT_TAB_FLASH  */
  /* Set the Vector Table base location at 0x08000000 */ 
  NVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0);   
#endif

  /* enabling interrupt */
  NVIC_InitStructure.NVIC_IRQChannel=ADC_IRQChannel;//can發送中斷通道
  NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
  NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;
  NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
  NVIC_Init(&NVIC_InitStructure);
}

/*******************************************************************************
* Function Name  : CAN_Transimit 注意:最后應該在adc轉換結束中斷里面寫此函數
* Description    : Configures the CAN and transmit,and receive by interruption
* Input          : None
* Output         : None
* Return         : PASSED if the reception is well done, FAILED in other case
*******************************************************************************/
//void CAN_Transimit(void)
//{
//  u16 m=0;//i=0,
//  u8 TransmitMailbox;//存儲發送數據后返回的郵箱編號
//   
//  for(m=0;m<9;m++)ADC_Can_Buffer[m]=ADC_ConvertedValue[m];//緩存采樣數據
//  
//  /* transmit the first message */
//  TxMessage.StdId=0x0000;
//  TxMessage.ExtId=0x0000;
//  TxMessage.IDE=CAN_ID_STD;//使用標準標識號
//  TxMessage.RTR=CAN_RTR_DATA;
//  TxMessage.DLC=8;
//  TxMessage.Data[0]=(char)(ADC_Can_Buffer[0]>>8);
//  TxMessage.Data[1]=(char)(ADC_Can_Buffer[0]&0x00FF);
//  TxMessage.Data[2]=(char)(ADC_Can_Buffer[1]>>8);
//  TxMessage.Data[3]=(char)(ADC_Can_Buffer[1]&0x00FF);
//  TxMessage.Data[4]=(char)(ADC_Can_Buffer[2]>>8);
//  TxMessage.Data[5]=(char)(ADC_Can_Buffer[2]&0x00FF);
//  TxMessage.Data[6]=(char)(ADC_Can_Buffer[3]>>8);
//  TxMessage.Data[7]=(char)(ADC_Can_Buffer[3]&0x00FF);
//  TransmitMailbox=CAN_Transmit(&TxMessage);
//  while((CAN_TransmitStatus(TransmitMailbox)!=CANTXOK)){};
//  /* transmit the second message */
//  TxMessage.StdId=0x0000;
//  TxMessage.ExtId=0x0000;
//  TxMessage.IDE=CAN_ID_STD;//使用標準標識號
//  TxMessage.RTR=CAN_RTR_DATA;
//  TxMessage.DLC=8;
//  TxMessage.Data[0]=(char)(ADC_Can_Buffer[4]>>8);
//  TxMessage.Data[1]=(char)(ADC_Can_Buffer[4]&0x00FF);
//  TxMessage.Data[2]=(char)(ADC_Can_Buffer[5]>>8);
//  TxMessage.Data[3]=(char)(ADC_Can_Buffer[5]&0x00FF);
//  TxMessage.Data[4]=(char)(ADC_Can_Buffer[6]>>8);
//  TxMessage.Data[5]=(char)(ADC_Can_Buffer[6]&0x00FF);
//  TxMessage.Data[6]=(char)(ADC_Can_Buffer[7]>>8);
//  TxMessage.Data[7]=(char)(ADC_Can_Buffer[7]&0x00FF);
//  //CAN_Transmit(&TxMessage);
//  TransmitMailbox=CAN_Transmit(&TxMessage);
//  while((CAN_TransmitStatus(TransmitMailbox)!=CANTXOK)){};
//  /* transmit the third message */
//  TxMessage.StdId=0x0000;
//  TxMessage.ExtId=0x0000;
//  TxMessage.IDE=CAN_ID_STD;//使用標準標識號
//  TxMessage.RTR=CAN_RTR_DATA;
//  TxMessage.DLC=2;
//  TxMessage.Data[0]=(char)(ADC_Can_Buffer[8]>>8);
//  TxMessage.Data[1]=(char)(ADC_Can_Buffer[8]&0x00FF);
//  TxMessage.Data[2]=0;
//  TxMessage.Data[3]=0;
//  TxMessage.Data[4]=0;
//  TxMessage.Data[5]=0;
//  TxMessage.Data[6]=0;
//  TxMessage.Data[7]=0;
//  //CAN_Transmit(&TxMessage);
//  TransmitMailbox=CAN_Transmit(&TxMessage);
//  while((CAN_TransmitStatus(TransmitMailbox)!=CANTXOK)){};
//
////  CAN_ITConfig(CAN_IT_RQCP0&CAN_IT_RQCP1&CAN_IT_RQCP2, ENABLE);//使能can 發送郵箱空中斷(屬于發送中斷的一種,詳見編程指導P271頁)
////  CAN_ITConfig(CAN_IT_RQCP1, ENABLE);//使能can 發送郵箱空中斷(屬于發送中斷的一種,詳見編程指導P271頁)
////  CAN_ITConfig(CAN_IT_RQCP2, ENABLE);//使能can 發送郵箱空中斷(屬于發送中斷的一種,詳見編程指導P271頁)
//}

/*******************************************************************************
* Function Name  : SetupCAN
* Description    : Configures the CAN 
* Input          : None
* Output         : None
* Return         : None
*******************************************************************************/
void SetupCAN (void)
{
  CAN_InitTypeDef        CAN_InitStructure;
  CAN_FilterInitTypeDef  CAN_FilterInitStructure;
  /*RxMessage初始化*/
  RxMessage.StdId=0x0000;
  RxMessage.ExtId=0x0000;
  RxMessage.IDE=0;//標準標志符
  RxMessage.RTR=0;//遠程幀
  RxMessage.DLC=0;//發送數據長度
  RxMessage.FMI=0;//過濾器匹配序列號
  RxMessage.Data[0]=0x00;//接受字節0
  RxMessage.Data[1]=0x00;//接受字節1
  RxMessage.Data[2]=0x00;//接受字節2
  RxMessage.Data[3]=0x00;//接受字節3
  RxMessage.Data[4]=0x00;//接受字節4
  RxMessage.Data[5]=0x00;//接受字節5
  RxMessage.Data[6]=0x00;//接受字節6
  RxMessage.Data[7]=0x00;//接受字節7

  /* CAN register init */
  CAN_DeInit();
  CAN_StructInit(&CAN_InitStructure);

  /* CAN cell init */
  CAN_InitStructure.CAN_TTCM=DISABLE;
  CAN_InitStructure.CAN_ABOM=ENABLE; //硬件自動啟動離線恢復過程
  CAN_InitStructure.CAN_AWUM=DISABLE;
  CAN_InitStructure.CAN_NART=DISABLE;
  CAN_InitStructure.CAN_RFLM=DISABLE;
  CAN_InitStructure.CAN_TXFP=ENABLE;//由發送請求的順序來決定發送順序
  CAN_InitStructure.CAN_Mode=CAN_Mode_Normal;
  CAN_InitStructure.CAN_SJW=CAN_SJW_1tq;
  CAN_InitStructure.CAN_BS1=CAN_BS1_10tq;
  CAN_InitStructure.CAN_BS2=CAN_BS2_7tq;
  CAN_InitStructure.CAN_Prescaler=4; //72MHz/2=36MHz=PCLK1 => PCLK1/4=9000KHz => 9000KHz / (1+10+7) => 500KHz
  CAN_Init(&CAN_InitStructure);

  /* CAN filter init */													  
  CAN_FilterInitStructure.CAN_FilterNumber=1;//選擇將要被初始化的過濾器,其值為0-13
  CAN_FilterInitStructure.CAN_FilterMode=CAN_FilterMode_IdMask;//選擇需要被初始化的模式:標識/屏蔽模式,或者標識列表模式(CAN_FilterMode_IdList)
  CAN_FilterInitStructure.CAN_FilterScale=CAN_FilterScale_32bit;//配置過濾器規模:一個32位或者2個16位
  CAN_FilterInitStructure.CAN_FilterIdHigh=0x0000;//選擇過濾器的標識號(對應一個32位(FxR0)配置的高16位 MSBs)
  CAN_FilterInitStructure.CAN_FilterIdLow=0x0000;//選擇過濾器的標識號(對應一個32位(FxR0)配置的低16位 LSBs)
  CAN_FilterInitStructure.CAN_FilterMaskIdHigh=0x0000;//根據模式用來選擇過濾器屏蔽號或者標識號(對應一個32位(FxR1)配置的高16位 MSBs)
  CAN_FilterInitStructure.CAN_FilterMaskIdLow=0x0000;//根據模式用來選擇過濾器屏蔽號或者標識號(對應一個32位(FxR1)配置的低16位 LSBs)
  CAN_FilterInitStructure.CAN_FilterFIFOAssignment=CAN_FIFO0;//分配FIFO 0給過濾器1
  CAN_FilterInitStructure.CAN_FilterActivation=ENABLE;//can過濾器激活
  CAN_FilterInit(&CAN_FilterInitStructure);//配置濾波器
//  /*使能接受中斷*/
//  CAN_ITConfig(CAN_IT_FMP0, ENABLE);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩一区二区三区在线| 91丨porny丨户外露出| 一区二区三区电影在线播| 国产精品国产三级国产普通话99| 国产日本欧美一区二区| 中文av一区二区| 国产情人综合久久777777| 国产女同性恋一区二区| 国产精品国产自产拍高清av王其| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 国产精品久久毛片| 亚洲午夜电影在线| 美腿丝袜亚洲一区| 国产九色精品成人porny | 蓝色福利精品导航| 国产一区二区精品久久91| 国产精品 欧美精品| 99免费精品视频| 欧美日韩大陆在线| 亚洲精品在线电影| 亚洲欧美成aⅴ人在线观看| 亚洲午夜久久久| 国内久久精品视频| 在线亚洲免费视频| 亚洲精品一区二区三区精华液| 国产午夜精品美女毛片视频| 亚洲精品视频在线| 九九在线精品视频| 91在线视频播放地址| 日韩欧美不卡一区| 亚洲色欲色欲www| 伦理电影国产精品| 色94色欧美sute亚洲线路一ni| 555www色欧美视频| 国产精品久久久久影院| 免费高清视频精品| 91视频国产资源| 精品剧情在线观看| 亚洲图片欧美色图| 国产亚洲精品免费| 色综合久久久久网| 精品久久久久久无| 亚洲品质自拍视频| 国产麻豆91精品| 欧美久久久久久久久| 中文字幕一区日韩精品欧美| 久久国产乱子精品免费女| 色偷偷久久一区二区三区| 国产欧美日产一区| 久久se精品一区二区| 欧美三级电影在线观看| 国产精品天天摸av网| 国产原创一区二区| 日韩限制级电影在线观看| 一区二区三区四区国产精品| 国产成人在线免费| 日韩欧美在线1卡| 五月天精品一区二区三区| 99精品欧美一区二区蜜桃免费| 国产精品综合二区| 国产传媒久久文化传媒| 欧美日本在线一区| 亚洲视频网在线直播| 成人深夜视频在线观看| 精品美女一区二区| 麻豆国产欧美一区二区三区| 欧美色中文字幕| 亚洲国产视频一区| 欧美日韩一本到| 亚洲成人av一区二区| 欧美年轻男男videosbes| 亚洲自拍偷拍av| 欧美日韩一卡二卡三卡| 日韩成人午夜电影| 欧美一区二区女人| 久久99精品久久久| 久久久久97国产精华液好用吗| 精品一区二区三区免费视频| 精品欧美一区二区久久| 亚洲精品免费在线观看| 国产美女视频91| 久久久国产精品麻豆| 国产精品一卡二卡在线观看| 2021国产精品久久精品| 国产精品亚洲人在线观看| 国产日韩欧美麻豆| 波多野结衣视频一区| 国产精品久久久久久福利一牛影视 | 国产午夜三级一区二区三| 成人精品视频一区二区三区| 亚洲欧美国产三级| 3d成人动漫网站| 国产精品一区专区| 亚洲男同性恋视频| 欧美一区二区在线视频| 国产米奇在线777精品观看| 国产精品久久久久久久蜜臀| 欧美三区免费完整视频在线观看| 欧美96一区二区免费视频| 久久久天堂av| 欧美日韩亚洲综合在线 | 蜜桃在线一区二区三区| 国产香蕉久久精品综合网| 在线免费视频一区二区| 麻豆成人免费电影| 亚洲视频在线一区二区| 日韩视频在线你懂得| 成人精品视频网站| 视频一区二区中文字幕| 中文字幕av资源一区| 欧美视频精品在线| 国产美女精品在线| 亚洲国产日韩一级| 国产欧美日韩视频在线观看| 91.麻豆视频| 99久久精品免费| 久久精品久久综合| 亚洲精品视频免费观看| 26uuu色噜噜精品一区二区| 91精品福利在线| 不卡的av电影在线观看| 久久精品国产秦先生| 一区二区欧美国产| 国产精品久久久久久户外露出 | 成人看片黄a免费看在线| 美女脱光内衣内裤视频久久网站| 亚洲免费资源在线播放| 久久精品人人爽人人爽| 日韩一区二区在线观看视频| 欧美无砖砖区免费| 91在线观看视频| 国产不卡视频在线观看| 国内精品写真在线观看| 日产国产高清一区二区三区| 樱桃视频在线观看一区| 日韩一区在线看| 国产精品美女久久久久aⅴ| 久久久精品黄色| 久久久夜色精品亚洲| 精品国产精品一区二区夜夜嗨| 欧美色男人天堂| 欧美日韩国产影片| 欧美日韩精品福利| 欧美理论片在线| 日韩一区二区三区精品视频| 欧美精品欧美精品系列| 在线播放中文一区| 337p亚洲精品色噜噜噜| 欧美日韩国产首页| 欧美疯狂做受xxxx富婆| 欧美日韩专区在线| 欧美精品vⅰdeose4hd| 欧美日本一道本| 日韩精品在线网站| 欧美精品一区二区精品网| 久久久五月婷婷| 中文字幕视频一区| 亚洲一区二区欧美日韩| 午夜影院在线观看欧美| 蜜桃av一区二区三区| 国产美女娇喘av呻吟久久| 成人免费视频caoporn| 91免费在线视频观看| 欧美日韩视频不卡| 欧美大片一区二区三区| 国产区在线观看成人精品| 国产精品国产三级国产三级人妇| 亚洲欧美国产三级| 日精品一区二区三区| 久久精品噜噜噜成人88aⅴ| 成人一级片在线观看| 在线中文字幕一区| 51午夜精品国产| 亚洲国产高清在线| 夜夜嗨av一区二区三区中文字幕| 无码av中文一区二区三区桃花岛| 美女www一区二区| 99国产精品视频免费观看| 欧美美女直播网站| 国产农村妇女毛片精品久久麻豆| 亚洲青青青在线视频| 麻豆国产精品777777在线| jlzzjlzz亚洲女人18| 7777精品久久久大香线蕉| 日本一区二区在线不卡| 亚洲综合色丁香婷婷六月图片| 麻豆91精品视频| 99re热视频精品| 日韩精品中文字幕一区二区三区| 国产精品色呦呦| 免费在线看成人av| aa级大片欧美| 久久久亚洲午夜电影| 午夜视黄欧洲亚洲| 92精品国产成人观看免费| 日韩手机在线导航| 亚洲国产美女搞黄色| 国产成人精品免费| 精品国产乱码久久久久久免费 | 欧美一级片在线观看|