当前位置: 首页 > news >正文

上海网站商城建设公司吗番禺市桥做网站公司

上海网站商城建设公司吗,番禺市桥做网站公司,腾讯网站认证,郴州卖房网站完成字符串收发函数的封装并且验证现象&#xff0c;一个字符串发送接受后会有‘\n’ \r src/uart.c #include"uart.h"void uart4_init() {//设置UART4的RCc时钟使能//RCC_MP_APB1ENSETR[16]->1RCC->MP_APB1ENSETR | (0x1<<16);//设置GPIOB和GPIOG的时钟…

完成字符串收发函数的封装并且验证现象,一个字符串发送接受后会有‘\n’ '\r'

src/uart.c

#include"uart.h"void uart4_init()
{//设置UART4的RCc时钟使能//RCC_MP_APB1ENSETR[16]->1RCC->MP_APB1ENSETR |= (0x1<<16);//设置GPIOB和GPIOG的时钟使能//RCC_MP_AHB4ENSETR[6]->1//RCC_MP_AHB4ENSETR[1]->1RCC->MP_AHB4ENSETR |= (0x1<<1);RCC->MP_AHB4ENSETR |= (0X1<<6);//设置PG11和PB2功能复用为UART4功能//PG11//GPIOG_MODER[23:22]->10GPIOG->MODER &= (~(0X3<<22));GPIOG->MODER |= (0X2<<22);//GPIOG_AFRH[15:12]->0110   GPIOG->AFRH &= (~(0xf<<12));GPIOG->AFRH |= (0x6<<12);//PB2//GPIOB_MODER[5:4]->10//GPIOB_AFRL[11:8]->1000GPIOB->MODER &= (~(0x3<<4));GPIOB->MODER |= (0X2<<4);GPIOB->AFRL &= (~(0xF<<8));GPIOB->AFRL |= (0x8<<8);//禁用串口USART4->CR1 &=(~0x1);//设置数据8个数据位 CR1[28]->0  CR1[12]-》0USART4->CR1 &= (~(0X1<<28));USART4->CR1 &= (~(0X1<<12));//设置没有校验位CR1[10]->0USART4->CR1 &= (~(0X1<<10));//设置1个停止位CR2[13:12]->00USART4->CR2 &= (~(0x3<<12));//设置16倍采样 CR1[15]->0USART4->CR1 &= (~(0X1<<15));//设置波特率为115200 BRR=0X22BUSART4->BRR |= 0X22B;//设置1分频 PRESC[3:0]->0000USART4->PRESC &= (~(0XF));//使能发送器 CR1[3]->1USART4->CR1 |= (0X1<<3);//使能接收器 CR1[2]->1USART4->CR1 |= (0X1<<2);//使能串口 CR1[0]->1USART4->CR1 |= (0X1);}
char buffer[50];
//串口发送一个字符
void putchar(char c)
{//判断发送数据寄存器有没有数据,没有数据时可以发送while(!(USART4->ISR&(0X1<<7)));USART4->TDR=c;//将要发送的数据保存在发送寄存器中while(!(USART4->ISR&(0X1<<6)));//数据传输完成,函数结束
}
//串口接受一个字符
char getchar()
{char c;//判断是否有数据准备好while(!(USART4->ISR&(0X1<<5)));//数据传输完成,函数结束c=USART4->RDR;return c;}
//串口发送一个字符串
void puts(char *s)
{//就是一个一个字符发while(*s){putchar(*s++);}putchar('\n');//换行putchar('\r');//回车
}//串口接收一个字符串
char *gets()
{unsigned int i;for(i=0;i<49;i++){//1.接收一个字符放在buffer缓冲区中buffer[i] = getchar();//2.接收一个字符回显一个字符putchar(buffer[i]);//enter---->'\r'if(buffer[i] == '\r')break;}buffer[i] = '\0';//字符串以'\0'结尾putchar('\n');//字符串输入结束后,让光标回到下一行return buffer;
}

main.c

#include "uart.h"int main()
{char c;char *s;uart4_init();//串口初始化while(1){//接收字符串s=gets();puts(s);//发送字符串}return 0;
}

include/uart.h

#ifndef __UART_H__
#define __UART_H__
#include"stm32mp1xx_uart.h"
#include"stm32mp1xx_gpio.h"
#include"stm32mp1xx_rcc.h"void uart4_init();
void putchar(char c);
char getchar();
void puts(char *s);
char *gets();
#endif

http://www.yayakq.cn/news/628630/

相关文章:

  • 高邮网站开发河南政务服务网查二建证书
  • 建立免费公司网站seo短视频入口
  • 网站分辨率自适应代码中企动力科技做什么的
  • 租赁服务器做电影网站厦门网站建设方案维护
  • 爱写作网站免费个人网站2018
  • 网站怎么优化自己免费株洲网络推广
  • 模板建站源码wordpress文章html
  • 玉山县建设局网站上海谷歌seo
  • jsp小型网站开发代码无锡网站制作平台
  • 住房和城乡建设局部网站建e网站官网案例
  • 网站开发工具的浙江省住房和城乡建设厅网站打不开
  • 山东建设部网站芜湖网站备案咨询电话
  • 艾宗建设计公司网站全自动在线网页制作
  • 狮山公司网站建设做网站建设找哪家好
  • 建设厅网站企业诚信分值门户网站建设和管理情况
  • 公司网站的实例自动跳转手机网站
  • 湘潭学校网站建设 磐石网络第一dw做网站背景音乐
  • 美工做的好的网站保定关键词优化软件
  • 建设网站和备案网站的制作成品
  • 台州网站排名外包wordpress升级失败
  • 网站页面和图片设计张家港网站网络公司
  • 建设新网站征求意见刚开始做网站要传数据库吗
  • 网站安全建设需求分析报告济南百度竞价
  • 如何做自己的网站系统怎么用手机免费下载1688视频
  • 做一个国外的网站重庆网站制作权威乐云践新
  • 现在pc端网站开发用的什么技术湖北专业网站建设维修电话
  • 凡科做网站在百度能看见吗可以做任务的创意设计网站
  • 张槎网站建设制作手机制作网站app
  • 普陀做网站公司彩票网站建设古大学
  • 深圳品牌网站推广公司电子商务网站建设课设