|
STM32F013實際項目- #include "stdio.h"
- #include "stm32f10x.h"
- #include "systick.h"
-
- #include "USART.h"
- #define KEY1 GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_1)//讀取按鍵1
- char Temp;
- char Temp1;
- char i;
- /*! GPIO Configuration */
- void GPIO_Configuration(void)
- {
- GPIO_InitTypeDef GPIO_InitStructure;
- // Configure the all GPIO port pins in Analog Input Mode(Floating input
-
-
- RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1 | RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB |
- RCC_APB2Periph_GPIOC | RCC_APB2Periph_GPIOD | RCC_APB2Periph_GPIOE, ENABLE);
-
-
- RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);
- GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable , ENABLE);
-
- GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;
- GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
- GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
- GPIO_Init(GPIOB, &GPIO_InitStructure);
- GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6|GPIO_Pin_3;
- GPIO_InitStructure.GPIO_Mode =GPIO_Mode_Out_PP;
- GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
- GPIO_Init(GPIOA, &GPIO_InitStructure);
-
-
- GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3;
- GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
- GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
- GPIO_Init(GPIOB, &GPIO_InitStructure);
-
- GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;
- GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
- GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
- GPIO_Init(GPIOA, &GPIO_InitStructure);
-
- GPIO_ResetBits(GPIOB,GPIO_Pin_12); //復位低電平關閉
-
-
-
- }
- void idscan()//idSET
- {
- Temp1=GPIO_ReadInputData(GPIOB)&0X0F;
- }
- void sankey()
- {
- if((KEY1==1)&&(i==0))
- {
- delay_ms(20);//大約10m秒采集一次
- if((KEY1==1)&&(i==0))
- {
- i=1;
- Temp=0;
- GPIO_SetBits(GPIOA,GPIO_Pin_3); //復位低電平關閉
- }
- }
- if((KEY1==0)&&(i==1))
- {
- delay_ms(20);//大約10m秒采集一次
- if((KEY1==0)&&(i==1))
- {
- Temp=1;
- i=0;
- GPIO_ResetBits(GPIOA,GPIO_Pin_3); //復位低電平關閉
- }
- }
- }
-
- int main()
- {
-
- delay_init();//初始化延時功能函數
- GPIO_Configuration();
- USART1_Init();//初始化串口1
- IWDG_ReloadCounter();//reload
- delay_ms(2000);//大約1秒采集一次
- delay_ms(3000);//大約1秒采集一次
-
- while(1)
- {
- idscan();//idSET
- GPIO_ResetBits(GPIOA,GPIO_Pin_6); //復位低電平關閉
- printf("{\"id\":\"");
- printf("%d",Temp1);//因為分辨率是12,所以乘上0.0625
- printf("\",");
- printf("\"Temp\":\"");
- printf("%d",Temp);//因為分辨率是12,所以乘上0.0625
- printf("\"}");
- IWDG_ReloadCounter();//reload
- GPIO_SetBits(GPIOA,GPIO_Pin_6); //復位低電平關閉
- delay_ms(1000);//大約1秒采集一次
- sankey();
-
-
- }
-
- }
復制代碼
|
-
-
chengxu.7z
2020-8-14 01:08 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
168.81 KB, 下載次數: 14, 下載積分: 黑幣 -5
|