⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 STM32F107串口,GPIO 测试程序
💻 C
字号:
#include "init.h"
#include "stm32f10x.h"

u8 RxBuffer1[512];	  //接收缓冲区
u8 TxBuffer1[512];	  //发送缓冲区
vu8 TxCounter1;	  //发送计数
vu8 RxCounter1=0;;   //接收计数
u8 i;

void Delay(vu32 nCount)
{
  for(; nCount != 0; nCount--);
}
void UART1Write(u8* data,u16 len)
{
	u16 i;
//	DIR485_H ;
	for (i=0; i<len; i++)
	{
		USART_SendData(USART1,data[i]);
	}
//	Delay10us(1000);
//	DIR485_L;		
}	
void USART1_IRQHandler(void)
{
	u8 c;
	if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET)
	{ 	
		USART_ITConfig(USART1, USART_IT_RXNE, DISABLE);
	    //c=USART1->DR;

		//USART_SendData(USART1,c); 
		RxBuffer1[RxCounter1++]=USART1->DR;
		USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);//串口1接收中断使能	    
	} 
	if(RxCounter1==10)
	RxCounter1=0;
     
}

main()
{
	Init_All_Periph();
	//printf("%c \r\n","abce"); 
	UART1Write("abce",4);
	while(1)
  	{	
		if(GPIO_ReadInputDataBit(GPIOC, GPIO_Pin_13)==0)//按键按下
		{
			 /* Turn on LD1 */
	    	GPIO_SetBits(GPIOD, GPIO_Pin_2);
	    	/* Insert delay */
	    	Delay(0xAFFFF);
	
	    	/* Turn on LD2 and LD3 */
	    	GPIO_SetBits(GPIOD, GPIO_Pin_3 | GPIO_Pin_4);
	    	/* Turn off LD1 */
	    	GPIO_ResetBits(GPIOD, GPIO_Pin_2);
	    	/* Insert delay */
	    	Delay(0xAFFFF);
	
	    	/* Turn on LD4 */
	    	GPIO_SetBits(GPIOD, GPIO_Pin_7);
	    	/* Turn off LD2 and LD3 */
	    	GPIO_ResetBits(GPIOD, GPIO_Pin_4 | GPIO_Pin_3);
	    	/* Insert delay */
	    	Delay(0xAFFFF);
	
	    	/* Turn off LD4 */
	    	GPIO_ResetBits(GPIOD, GPIO_Pin_7);
		}
			
  	}	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -