標題: stm32f103串口采集程序 [打印本頁]

作者: kongtiao1    時間: 2020-8-10 14:43
標題: stm32f103串口采集程序
STM32F013實際項目
  1. #include "stdio.h"
  2. #include "stm32f10x.h"
  3. #include "systick.h"

  4. #include "USART.h"
  5. #define KEY1  GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_1)//讀取按鍵1
  6. char Temp;
  7. char Temp1;
  8. char i;
  9. /*! GPIO Configuration */
  10. void GPIO_Configuration(void)
  11. {
  12.     GPIO_InitTypeDef GPIO_InitStructure;
  13.     // Configure the all GPIO port pins in Analog Input Mode(Floating input


  14.     RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1 | RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB |
  15.                            RCC_APB2Periph_GPIOC  | RCC_APB2Periph_GPIOD  | RCC_APB2Periph_GPIOE, ENABLE);

  16.   
  17.         
  18.          RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
  19.    GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable , ENABLE);
  20.         
  21.     GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;
  22.     GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  23.     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  24.     GPIO_Init(GPIOB, &GPIO_InitStructure);

  25.                 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6|GPIO_Pin_3;
  26.     GPIO_InitStructure.GPIO_Mode =GPIO_Mode_Out_PP;
  27.     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  28.     GPIO_Init(GPIOA, &GPIO_InitStructure);
  29.         
  30.         
  31.     GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3;
  32.     GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
  33.     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  34.     GPIO_Init(GPIOB, &GPIO_InitStructure);
  35.                
  36.                 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;
  37.     GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
  38.     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  39.     GPIO_Init(GPIOA, &GPIO_InitStructure);
  40.                
  41.                 GPIO_ResetBits(GPIOB,GPIO_Pin_12);   //復位低電平關(guān)閉
  42.                
  43.                
  44.                
  45.         }
  46. void idscan()//idSET
  47. {


  48. Temp1=GPIO_ReadInputData(GPIOB)&0X0F;



  49. }
  50.          void sankey()
  51. {         
  52.         if((KEY1==1)&&(i==0))
  53.         {
  54.                         delay_ms(20);//大約10m秒采集一次
  55.                         if((KEY1==1)&&(i==0))
  56.                 {
  57.       i=1;
  58.                         Temp=0;
  59.                         GPIO_SetBits(GPIOA,GPIO_Pin_3);   //復位低電平關(guān)閉
  60.                 }
  61.         }
  62.         if((KEY1==0)&&(i==1))
  63.         {
  64.         delay_ms(20);//大約10m秒采集一次
  65.                         if((KEY1==0)&&(i==1))
  66.                 {
  67.                         Temp=1;
  68.       i=0;
  69.                         GPIO_ResetBits(GPIOA,GPIO_Pin_3);   //復位低電平關(guān)閉
  70.                 }
  71.         }
  72. }
  73.         
  74. int main()
  75.         {

  76.   delay_init();//初始化延時功能函數(shù)
  77.   GPIO_Configuration();
  78.         USART1_Init();//初始化串口1         
  79.   IWDG_ReloadCounter();//reload               
  80.         delay_ms(2000);//大約1秒采集一次
  81.         delay_ms(3000);//大約1秒采集一次

  82.         while(1)
  83.                 {
  84.          idscan();//idSET
  85.         GPIO_ResetBits(GPIOA,GPIO_Pin_6);   //復位低電平關(guān)閉               
  86.         printf("{\"id\":\"");               
  87.   printf("%d",Temp1);//因為分辨率是12,所以乘上0.0625
  88.         printf("\",");                                
  89.         printf("\"Temp\":\"");                                
  90.         printf("%d",Temp);//因為分辨率是12,所以乘上0.0625               
  91.         printf("\"}");                                
  92.         IWDG_ReloadCounter();//reload                                
  93.         GPIO_SetBits(GPIOA,GPIO_Pin_6);   //復位低電平關(guān)閉                                
  94.         delay_ms(1000);//大約1秒采集一次
  95.   sankey();
  96.                   
  97.                         
  98.           }
  99.         
  100. }
復制代碼

chengxu.7z

168.81 KB, 下載次數(shù): 14, 下載積分: 黑幣 -5


作者: 新手121111115    時間: 2021-10-21 14:33
這和DTU有什么關(guān)系?




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1