以下为《实验四 基于ARM的微机原理 与接口技术课件》的无排版文字预览,完整格式请下载
下载前请仔细阅读文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。
基于ARM的微机原理与接口技术1/142/14复习 1.USART结构2 . STM32的USART中断请求3/443. 例程【例9-1】利用STM32最小系统板实现STM32F103VET6串口1与计算机的串行通信功能。计算机通过串口助手发送一个数据到STM32,STM32收到数据后,将数据按位取反后回送给计算机。假设串行通信参数是9600,n,8,1。
利用固件库函数实现题目要求。完整代码请参见教材。4/449.2.8 STM32的USART使用举例//使能PA口和USART1时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_USART1, ENABLE);
//配置USART1_TX引脚
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP; //复用推挽输出
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;//IO 口速度为 50MHz
GPIO_Init(GPIOA, &GPIO_InitStructure); //根据设定参数初始化 PA9
//USART1_RX引脚
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; //悬空输入
GPIO_Init(GPIOA, &GPIO_InitStructure); //配置PA105/449.2.8 STM32的USART使用举例//USART1成员设置
USART_InitStructure.USART_BaudRate = 9600; //波特率9600
USART_InitStructure.USART_WordLength=USART_WordLength_8b;//字长8位
USART_InitStructure.USART_StopBits = USART_StopBits_1; //1位停止位
USART_InitStructure.USART_Parity = USART_Parity_No; //无奇偶校验
USART_InitStructure.USART_HardwareFlowControl =
USART_HardwareFlowControl_None; //无流控制
//打开Rx接收和Tx发送功能
USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;
USART_Init(USART1, &USART_InitStructure); //初始化
USART_Cmd(USART1,ENABLE); //启动串口
//使能USART模块的中断
USART_ITConfig(USART1,USART_IT_RXNE,ENABLE); //接收使能
//USART_ITConfi 内容过长,仅展示头部和尾部部分文字预览,全文请查看图片预览。 &NVIC_InitStructure);
}
11然后点击存盘按钮,在弹出的对话框中把新建的文件保存在 工程模板/app 文件夹下
将文件命名为 usart.c然后将usart.c 和 stm32f10x_usart.c添加到driver目录下12然后在main.c文件里输入 如下代码。编译无误后,下载程序到开发板,打开电脑上的串口调试助手,验证实验。。13下载程序到开发板,打开电脑上的串口调试助手,验证实验。[文章尾部最后300字内容到此结束,中间部分内容请查看底下的图片预览]
以上为《实验四 基于ARM的微机原理 与接口技术课件》的无排版文字预览,完整格式请下载
下载前请仔细阅读上面文字预览以及下方图片预览。图片预览是什么样的,下载的文档就是什么样的。