串口还算是比较的顺畅,留意线序就能够了。
本例运用的是中止方法,查询方法想必很简单了,在中止服务程序里也有表现,需用的能够自己去查找。
别的留意的是:
1,增加uart的c库文件,而且在stm32f10x_conf.h文件里声明;
2,rcc初始化的时分不要忘掉uart1的时钟初始化;
3,nvrc初始化;
4,uart1自身初始化;
5,中止函数里服务函数。
包括文件:
(1)Main
+ 试验渠道 : ST 官方三合一套件
+ 硬件 : STM32F103C8T6
+ 开发渠道 : IAR For ARM 5.40
+ 仿真器 : J-Link
+ 日期 : 2010-10-27
+ 频率 :HSE = 8MHz ,主频 = 72MHz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
#include “includes.h”
/*******************************************************************************
== 变量声明 ==
*******************************************************************************/
/*******************************************************************************
== Main 函数 ==
*******************************************************************************/
voidmain(void)
{
RCC_Configuration();//装备体系时钟
NVIC_Configuration();//装备 NV%&&&&&% 和 Vector Table
SysTick_Config();//装备SysTick的准确延时
GPIO_Configuration();
UART1_Configuration();
LED1_HIGH;LED2_HIGH;LED3_HIGH;LED4_HIGH;// 初始化让灯全灭
//主循环
while(1)
{
if(Uart1_Rx!=Uart1_Tx)// 接受到不同的字符然后就发送出去
{
Uart1_Tx=Uart1_Rx;
Uart1_PutChar(Uart1_Tx);
}
// Uart1_PutString(“douzi&douer\r\n”,13); // 发送一个字符串而且回车换行
}
}