> > 注释

STM32单片机串口的界说及运用要领-澳门葡京官网VIP通道-澳门新葡京27111.com

2018年12月28日 15:46 次浏览

设置串口需求设置的包孕:

1、设置,开启响应IO端口的时钟,和串口模块的时钟。

串口1模块时钟寄存器:RCC_APB2Periph_USART1;

串口1的端口是PA9,PA10,对应的时钟寄存器:RCC_APB2Periph_GOA;

开启的函数是:RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1|RCC_APB2Periph_GPIOA, ENABLE);

串口2的模块时钟寄存器:RCC_APB1Periph_USART2;

串口2的端口是PA2,PA3;对应的时钟寄存器是:RCC_APB2Periph_GPIOA;

开启的函数是:RCC_APB2PeriphClockCmd(RCC_APB1Periph_USART2| RCC_APB2Periph_GPIOA, ENABLE);

此处的意义在于开启了我们要运用的模块:串口模块1/串口模块2,和对应的IO时钟项。若是要运用STM32中的硬件起首就是要设置和开启响应模块的时钟。

澳门新葡京27111.com

2、IO重映射的题目:

STM32的管脚功用能够重映射,能够将串口2的TX和RX端口从本来默许的PA2PA3,从新界说到PD5,PD6上,界说完成后,串口2的TX和RX端口便不再是本来的管脚,而是PD5,PD6了。

要停止IO的重映射,起首要开启IO重映射的时钟:此项时钟寄存器的称号是:RCC_APB2Periph_AFIO;

开启此时钟的代码:

RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);

开启了时钟后,还要写入掌握IO重界说功用的寄存器:

GPIO_PinRemapConfig函数是用来写入此寄存器的,写入对应的位,便能够实现IO的重界说功用。

GPIO_PinRemapConfig(GPIO_Remap_USART2,ENABLE);

若是IO重界说了,那么重界说之前的端口PA2PA3便不要设置了,只设置映射后PD5PD6便能够了。

3、设置TxRX的IO功用形式,和IO的speed。

//GPIO设置RX

GPIO_InitStructure.GPIO_Pin= USART1_RxPin;//

GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;

GPIO_InitStructure.GPIO_Mode= GPIO_Mode_IN_FLOANG;

GPIO_Init(USART1_GPIO,&GPIO_InitStructure);

//GPIO设置TX

GPIO_InitStructure.GPIO_Pin= USART1_TxPin;

GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;

GPIO_InitStructure.GPIO_Mode= GPIO_Mode_AF_PP;

GPIO_Init(USART1_GPIO,&GPIO_InitStructure);

此处需求注重的是:

1.Speed = 50hz.

2.Rx的mode设置为:GPIO_Mode_IN_FALOANG;

3.Tx的mode设置为:GPIO_Mode_AF_PP;

4、对串口模块停止初始化设置:

USART_InitStructure.USART_BaudRa = 9600;//波特率的设定

USART_InitStructure.USART_WordLength = USART_WordLength_8b;//每一个字有几位

USART_InitStructure.USART_StopBits = USART_StopBits_1;//有几个住手位

USART_InitStructure.USART_Parity = USART_Parity_No;//校验的体式格局

USART_InitStructure.USART_HardwareFlowControl =USART_HardwareFlowControl_None;//是不是需求硬件掌握流

USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;//需求开启哪些mode

/*Configure USART1 */

USART_Init(USART1, &USART_InitStructure);//将以上的设定写入到寄存器中去。

5、是能发送和吸收中止:

USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);

USART_ITConfig(USART1, USART_IT_TXE, ENABLE);

6、使能串口:

USART_Cmd(USART1, ENABLE);

7、由于是能了中止,以是正在这些事情之前借需求对中止停止设定:

NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQChannel;//待设定的中止通道

NVIC_InitStructure.NVIC_IRQChannelPreemponPriority = 2;//中止的主优先级

NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0;//中止的次优先级

NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;//中止是能照样不使能

NVIC_Init(&NVIC_InitStructure);

设置完以上的7项,串口便能够一般的事情了。固然,最先的体系时钟什么的初始化照样要做的。不外和这个没紧要,正在此不再赘述。

下载发烧友APP

打造属于您的人脉电子圈
澳门新葡京44488

存眷电子发烧友微疑

风趣有料的资讯及手艺干货
mm78.com_

存眷发烧友教室

锁定最新课程运动及手艺直播

电子发烧友视察

一线报导 · 深度视察 · 最新资讯
珍藏 人珍藏
分享:

批评

相干推荐

ST供应的固件库傍边,有供应一个stm32f10x_it.c文件,翻开以后会发明内里放的都是些空函数...

宣布于 2018-12-28 15:36 2次浏览

1.ADC_DeInit函数的功用是将外设ADCx的悉数寄存器重设为默认值。 ADC_DeIn...

宣布于 2018-12-28 15:36 3次浏览

起首正在网上看到大部分移植FreeRTOS 都是挑选修正他的启动文件,我小我私家觉得如许不是很好,究竟结果是汇...

宣布于 2018-12-28 15:31 3次浏览

正在CMSIS中供应的函数是SysTick_Config(uint32_t ticks); 该函数设置...

宣布于 2018-12-28 15:07 2次浏览

宣布于 2018-12-28 11:46 135次浏览

宣布于 2018-12-28 09:09 34次浏览

宣布于 2018-12-28 09:00 47次浏览

宣布于 2018-12-28 08:51 34次浏览

1 硬件电路设置 这里照样借用前面LED电路我便不贴图片。 2 时钟阐明 SysT...

宣布于 2018-12-27 16:44 62次浏览

理论上,需求数字电路,模仿电路,C言语编程根蒂根基,单片时机一点便更好了,这样的话会能顺应STM32的编...

宣布于 2018-12-27 16:07 66次浏览

运用stm32f10x调试串口通信时,发明一个失足的征象,硬件复位重启以后,发送测试数据0x01 0...

宣布于 2018-12-27 16:07 57次浏览

宣布于 2018-12-26 20:55 58次浏览

STM32内部自带PVD功用,用于对MCU供电电压VDD停止监控。经由过程电源掌握寄存器中的PLS[2:...

宣布于 2018-12-26 15:41 58次浏览

您提到的时钟先分频再倍频,这个需求深切到STM32的内部去一探讨竟了,正在其手艺参考手册的第7.2节C...

宣布于 2018-12-26 15:20 54次浏览

主 PLL 时钟的时钟源要先经由一个分频系数为 M 的分频器,然后经由倍频系数为 N 的倍频器出来之...

宣布于 2018-12-26 15:17 55次浏览

宣布于 2018-12-26 10:26 82次浏览

1什么是中止 停息本来的顺序或事变,实行别的一些顺序或事变,实行完成后返回本来的顺序。 ...

宣布于 2018-12-25 15:12 •-澳门葡京官网VIP通道 69次浏览

正在项目中单片时机取服务器停止网络通讯。需求对通信加密,我挑选了TEA加密算法。 *阐明:TEA...

宣布于 2018-12-25 15:03 56次浏览

宣布于 2018-12-24 19:14 89次浏览

起首,要包罗头文件“stdio.h” 第二:printf()函数运用了int fputc(in...

宣布于 2018-12-24 14:25 57次浏览

JTAG:JTAG(Joint Test Action Group;结合测试工作组)是一种国际标准测...

宣布于-mm78.com_ 2018-12-24 14:09 69次浏览

宣布于 2018-12-24 10:11 185次浏览

宣布于 2018-12-24 10:11 227次浏览

宣布于 2018-12-24 10:11 156次浏览

离别实现一般收发,中止收发,DMA收发,问题是一切函数要求发送和吸收的buf必需要事先晓得长度,也出...

宣布于 2018-12-23 15:28 67次浏览

STM32八种IO心形式区分 (1)GPIO_Mode_AIN模仿输入 (2)GPIO_...

宣布于 2018-12-23 15:16 106次浏览

1、将正点原子的《触摸屏移植实行》中HARDWRAE/TOUCH目次复制到曾经竖立好的ucGUI工程...

宣布于 2018-12-21 15:15 80次浏览

SPI是英语Serial Peripheralinterface的缩写,望文生义就是串行外围设备接口...

宣布于 2018-12-21 15:04 74次浏览

串口设置的一样平常步调能够总结为以下几个步调: 1)串口时钟使能,GPIO时钟使能 2)串口...

宣布于 2018-12-21 15:03 95次浏览

1,新建项目,正在新建工程的目次下新建几个文件夹: A,CORE (用来寄存启动文件) B...

宣布于 2018-12-21 14:43 62次浏览

STM32启动文件具体剖析(V3.5.0) 以:startup_stm32f10x_hd.s为例 ...

宣布于 2018-12-21 14:33 55次浏览

STM32的串口有监测总线是不是处于余暇的功用,我们能够运用这个功用,当数据传输完总线酿成余暇状况时产...

宣布于 2018-12-21 14:33 61次浏览

先占优先级的观点等同于51单片机中的中止。假定有两中止前后触发,曾经正在实行的中止先占优先级若是没有后...

宣布于 2018-12-20 16:17 64次浏览

1 /* 2 ::按键掌握 3 PA8接LED,PE2接按键 4 */ 5 ...

宣布于 2018-12-20 16:14 71次浏览

STM32有两个DMA控制器(DMA2只存在于大容量产物中),DMA1有7个通道,DMA2有5个通道...

宣布于 2018-12-19 15:40 49次浏览

TFTLCD运用80并口,80 并口有如下一些信号线: CS: TFTLCD 片选旌旗灯号。 ...

宣布于 2018-12-19 14:42 68次浏览

若泛起以下编译毛病:Error: L6915E: Library reports error: __...

宣布于 2018-12-18 15:43 77次浏览

-澳门新葡京44488

一、整体原则 PID调试一样平常原则 a.正在输出不振荡时,增大比例增益P。 b.正在输出...

宣布于 2018-12-18 15:31 95次浏览

名为TIMx的有八个,个中TIM1和TIM8挂在APB2总线上,而TIM2-TIM7则挂在APB1总...

宣布于 2018-12-18 15:30 80次浏览

STM32—数组作为被挪用函数的入口参数时,要两个前提, 1:数组尾地点 2:数组长度 ...

宣布于 2018-12-18 15:05 •-澳门新葡京27111.com 74次浏览

因为用的是Proteus去模仿串口(我的笔记本电脑基础出串口),以是需求一个假造串口的软件。推荐运用...

宣布于 2018-12-16 11:23 158次浏览

当STM32F105设置为USB装备时, PA9/OTG_FS_VBUS是用来检测presense ...

宣布于 2018-12-14 15:10 107次浏览

实在,SysTick能实现的功用,皆能够由TIM去实现。SysTick不过就是准时中止的功用,它完整...

宣布于 2018-12-14 14:27 73次浏览

STM32的定时器除根基定时器TIM6和TIM7以外,其他的定时器皆能够用来发生PWM输出,其中高...

宣布于 2018-12-13 16:27 274次浏览

bootloader设置: static void check_boot_mode(void)...

宣布于 2018-12-13 15:53 92次浏览

(TIM_GetITStatus(TIM3,TIM_IT_CC1)==SET)//{ic1=TIM_...

宣布于 2018-12-12 14:50 113次浏览

最先只是谈到他人对FSMC的明白,注重这里只议论FSMC掌握TFT,也就是正在FSMC的NOR\PSR...

宣布于 2018-12-12 14:22 78次浏览

NAND Flash的容量较大。整片Flash分为多少个块(Block),每一个Block分为多少个页...

宣布于 2018-12-11 15:47 482次浏览

用处: 1.发生操作系统的时钟节奏 2.便于差别处理器之间顺序移植 SysTick...

宣布于 2018-12-11 15:44 86次浏览

IAP是In Application Programming的首字母缩写,IAP是用户本身的顺序正在运...

宣布于 2018-12-11 15:33 94次浏览

IWDG是一个自力看门狗,具有独立于体系的时钟,取片中看门狗更加类似,运用片内自力的阻容时钟发作电路...

宣布于 2018-12-11 15:28 136次浏览

相沿之前CM3核的STM32F10X系列的到场RDP功用,以后正在Segger的Unsecured C...

宣布于 2018-12-11 15:22 99次浏览

近来因为要调试一个SMS发送短信的模块,该模块需求发送一系列AT指令,且需求字符串发送,然则STM3...

宣布于 2018-12-10 16:01 128次浏览

1.关于看门狗的注释不再阐明,窗口看门狗简而言之即只能看某个窗口期即某段时间内才气够喂狗。32的自力...

宣布于 2018-12-10 15:55 84次浏览

STM32中的初级掌握定时器(Tim1)是由一个16位的主动装载计数器构成,它由一个可编程预分频器驱...

宣布于 2018-12-10 15:25 158次浏览

正在SPI通讯中,能够同时开启发送和吸收DMA恳求,主动数据的发送和吸收,完成数据的交流 根基步...

宣布于 2018-12-07 15:26 133次浏览

先占优先级也就是抢占优先级,观点等同于51单片机中的中止。假定有两中止前后触发,曾经正在实行的中止先占...

宣布于 2018-12-07 15:09 105次浏览

正在这个公式上,共有三个变量,个中两个我们是晓得的,Fck和Tx/Rx波特率那两个是已知的,USART...

宣布于 2018-12-06 16:15 138次浏览

先运用USART中止函数吸收数据,判定是不是吸收到每帧数据的肇端符号字符。若是吸收到便封闭USART中...

宣布于-澳门新葡京44488 2018-12-06 15:36 101次浏览

STM32发生PWM黑白常的轻易的,要需求简朴的设置定时器,马上发生! (1)使能定时器时钟:...

宣布于 2018-12-06 15:36 146次浏览

正在工程文件下,新建Startup、Headers、User、Libraries、CMSIS、List...

宣布于 2018-12-05 14:52 130次浏览

全速的USB装备,最大速度12Mb/s,然则若是跑的是HID之类慢速装备的和谈,那么速度便没有那么快...

宣布于 2018-12-04 15:06 198次浏览

-mm78.com_

工程提要阐明:界说一个按键(可本身界说),每按键一次,相应中止一次,正在中止函数中LED提醒灯转变一次...

宣布于 2018-12-04 15:04 136次浏览

关于GPIO端口,每一个端口有16个引脚,每一个引脚的形式由寄存器的四个位掌握,每四位又分为两位掌握引脚...

宣布于 2018-12-04 14:54 188次浏览

ADS1246的SPI时序,这个是需求提一下的,一般来说,SPI和谈正在上升沿锁存数据,下落沿更新数据...

宣布于 2018-12-03 14:39 123次浏览

CAN_InitStructure.CAN_TTCM=DISABLE;//制止工夫触发通讯形式 ...

宣布于 2018-12-03 14:31 253次浏览

SysTick 是一个24 位的倒计数定时器,当计到0 时,将从RELOAD 寄存器中主动重装载准时...

宣布于 2018-12-03 14:27 103次浏览

LCD有如下掌握线: CS:Chip Select片选,低电平有用 RS:Registe...

宣布于 2018-12-03 14:17 112次浏览

DMA_InitStructure.DMA_PeripheralBaseAddr = ADC1_DR...

宣布于 2018-11-30 16:22 149次浏览

这个宏界说的感化就是搜检参数PERIPH,判定参数PERIPH是不是为GPIOX(A.。.G)基址中的...

宣布于 2018-11-30 16:10 133次浏览