永发信息网

串口使用的相关寄存器位怎么处置

答案:2  悬赏:40  手机版
解决时间 2021-03-31 00:40
  • 提问者网友:你挡着我发光了
  • 2021-03-30 08:36
串口使用的相关寄存器位怎么处置
最佳答案
  • 五星知识达人网友:醉吻情书
  • 2020-11-09 20:00
1、先设置定时器1为方式2(自动再装入8位计数器)TMOD寄存器
2、按频率和波特率设置初值 TH1、TL1寄存器
3、设置串行口工作方式并充许接收 SCON寄存器
4、设置中断充许位 IE寄存器
5、启动定时器1运行串口 TCON寄存器
6、发送或接收数据 SBUF寄存器
全部回答
  • 1楼网友:青尢
  • 2021-03-27 07:19
如果你仔细研究usart_init()函数,你会发现,这程序在配置波特率时会读取rcc有关的寄存器来计算当前cpu实际的工作频率是多少,然后计算参数来实现你需要的波特率——就是说不管你把单片机设置为什么样的工作频率,这函数都能让串口以你要求的波特率工作。 当然如果你把原来8m的晶振换掉了,那你就需要修改系统中的一个定义:在文件stm32f10x.h中的定义hse_value,这参数定义了单片机使用外部晶振或时钟源的频率,一般就是8000000,即使用的8mhz晶振。如果你的stm32用了什么7.3728、11.0592或者25mhz晶振时,你就要修改hse_value定义的值,这样保证串口通信波特率正确。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯