ARMday06(总线、串口、RCC章节分析)

总线

总线是完成各个部件之间传输的一种媒介

串行/并行总线

串行总线,

在同一时刻,根据时钟线的变化,只可以收发一位数据

优点:占用引脚资源少

缺点:传输速度比较慢

并行总线,

在同一时刻,根据时钟线的变化,可以收发多位数据(1字节=8位)

优点:传输速度比较快

缺点:占用引脚资源比较多

单工/半双工/全双工

单工:要么做发送器,要么做接收器,方向是单一

半双工:可以做发送器,可以做接收器,但是不可以同时进行数据收发

全双工:可以做发送器,可以做接收器,并且可以同时进行数据收发

同步/异步

同步:双方通信时,共用一个时钟线,根据时钟线变化,完成数据收发

异步:双方通讯时,都有各自独立的时钟源,但是双方通讯时,需要保证时钟频率一致

串口配置信息(异步串行全双工总线)

配置相关内容

1、串口为串行通讯方式,代表一个时钟周期,只可以收发一位数据

2、115200代表什么,以及115200单位 单位:bps(比特率、二进制/秒)

115200代表:1S钟可以传输115200bits数据

115200倒数代表:表示收发1位数据所需要的时间

3、8N1代表什么

8:8位数据位

N:无奇偶校验位

1:1位停止位

协议

1、空闲态

空闲态处于高电平状态,总线没有进行数据传输时,总线处于空闲状态

2、起始信号

串口通信开始的标志,起始信号处于低电平状态

3、数据位

串口完成数据的收发,数据位可以设置为7位/8位/9位

4、校验位

奇校验:数据位和校验位1的个数为奇数

假设发送的数据为0x55(01010101),校验位:1

假设发送的数据为0x51(01010001),校验位:0

偶校验:数据位和校验位1的个数为偶数

假设发送的数据为0x55,校验位:0

假设发送的数据为0x51,校验位:1

5、停止位

1)发送数据结束的标志,停止位处于高电平状态

2)校准时钟源,因为串口采用的是异步通讯,双方都有自己独立的时钟源

但是在实际的数据传输过程中,一帧数据传输完成之后,肯定会存在误差

越往后,误差越大,导致收发数据不准确

RCC章节分析

确定总线

通过2.5.2章节确定总线名称

1、确定RCC控制器通过哪根总线与cortex-A7进行连接 ===> AHB4总线

2、确定GPIO控制器通过哪根总线与cortex-A7进行连接 ===> AHB4总线

3、确定UART控制器通过哪根总线与cortex-A7核进行连接 ===> APB1总线

确定基地址

分析RCC_MP_AHB4ENSETR寄存器

1、RCC_MP_AHB4ENSETR:RCC AHB4 Periph. Enable For MPU Set Register寄存器作用===>使能GPIO对应组控制器 2、RCC_MP_AHB4ENSETR地址 = RCC基地址 + 偏移地址 = 0x50000000 + 0xA28 = 0x50000A28 3、如何使能GPIOB组/GPIOG控制器 PB2 ===> UART4_RX ===> 使能GPIOB组控制器 ===> 0x50000A28[1] = 1 PG11 ===> UART4_TX===> 使能GPIOG组控制器 ===> 0x50000A28[6] = 1

分析RCC_MP_APB1ENSETR寄存器

1、RCC_MP_APB1ENSETR:RCC AAPB1 Periph. Enable For MPU Set Register寄存器作用===>使能UART对应组控制器 2、RCC_MP_APB1ENSETR地址 = RCC基地址 + 偏移地址 = 0x50000000 + 0xA00 = 0x50000A00 3、如何使能UART4组控制器 PB2 ===> UART4_RX ===> 使能UART4组控制器 ===> 0x50000A00[16] = 1 PG11 ===> UART4_TX===> 使能UART4组控制器 ===> 0x50000A00[16] = 1

待更。。。 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/147064.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

vscode设置vue3代码格式化

vscode设置vue3代码格式化 vscode设置vue3代码格式化 下载插件设置格式化时选用的插件实际使用 使用Prettier默认配置使用Prettier添加自定义配置使用Volar 完整配置文件参考链接 下载插件 可以使用Volar或Prettier 设置格式化时选用的插件 mac:【shift】【op…

基于单片机微波炉加热箱系统设计

**单片机设计介绍, 基于单片机微波炉加热箱系统设计 文章目录 一 概要二、功能设计设计思路 三、 软件设计原理图 五、 程序六、 文章目录 一 概要 基于单片机的微波炉加热箱系统是一种智能化的厨房电器设备,利用单片机控制技术实现自动加热和定时等功能…

医疗行业创新:低代码工具推动业务自动化和智能化

随着科技的不断发展,数字化已经成为各个领域的必然趋势。同样,在医疗领域,数字化转型也已经成为必要性。 早在新冠疫情之前很多国家和地区就已经开始尝试医疗数字化的转型。有很多人认为,医疗数字化在未来不是锦上添花&#xff0…

【开源】基于JAVA的电子元器件管理系统

目录 一、摘要1.1 项目简介1.2 项目详细录屏 二、研究内容三、界面展示3.1 登录&注册&主页3.2 元器件单位模块3.3 元器件仓库模块3.4 元器件供应商模块3.5 元器件品类模块3.6 元器件明细模块3.7 元器件类型模块3.8 元器件采购模块3.9 元器件领用模块3.10 系统基础模块 …

C语言精选练习题:(9)找出盗窃者

每日一言 世界灿烂盛大,欢迎回家。 题目 某地发生了一件盗窃案,警察通过排查确定盗窃者必为4个嫌疑人的一个 以下为4个嫌疑人的供词: a说:不是我 b说:是c c说:是d d说:c在胡说 已知3个人说了真…

安装virt-manger虚拟机管理器

环境: redhat7:192.168.1.130 安装步骤: 安装qemu-kvm yum install -y qemu-kvm安装libvirt yum install -y libvirt重启libvirt systemctl restart libvirtd查看libvirt的版本信息 virsh version安装virt-manager yum install -y virt-manager检验…

Vue3 Computed属性

一、引入computed import { computed } from vue; 二、计算属性的使用 (一)计算属性简写形式 计算属性 computed( ()> { return 计算属性值 }) setup() {let nums reactive({ten: 0, // 十位unit: 0, // 个位});nums.sum computed(() > {re…

基础课1——智能客服的定义

1.介绍 智能客服是一种采用人工智能技术的客户服务方式,它通过语音识别、自然语言处理、语义理解等技术,实现了与客户的自动交互。智能客服可以提供客户24小时不间断的服务,帮助客户快速解决问题,提高客户满意度。智能客服的应用…

No208.精选前端面试题,享受每天的挑战和学习

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入…

安全好用性价比高的远程协同运维软件有吗?

据悉不少IT专业人员认为,远程运维风险性更高,更容易给企业带来更大的风险。所以不少运维人员都在求一款安全好用性价比高的远程协同运维软件,因为下班需要,因为碰到IT难题时候需要,因为驻场需要。那你知道市面上安全好…

spring cloud之服务熔断

四、Hystrix组件(*) - 官网:https://github.com/Netflix/Hystrix - 在分布式环境中,许多服务依赖项不可避免的会失败。Hystrix是一个库,它通过添加延迟容忍和容错逻辑来帮助您控制这些分布式服务之间的交互。Hystrix通过隔离服务之间的访问点…

【计算思维】少儿编程蓝桥杯青少组计算思维题考试真题及解析C

【科技素养】少儿编程蓝桥杯青少组计算思维题考试真题及解析 1.天平的左右两端分别放有一些砝码,如下图所示,右边的砝码不变,从左边最多拿走几个砝码,可以使天平左右两边平衡: A、1 B、2 C、3 D、4 2.把下面的图形…

(一)什么是Vite——vite介绍与使用

什么是Vite Vite(法语意为 "快速的",发音 /vit/,发音同 "veet")是一种新型前端构建工具,能够显著提升前端开发体验。 它主要由两部分组成: 一个开发服务器,它基于 原生 …

Javaweb之javascript事件案例的详细解析

1.6.4 案例 1.6.4.1 需求说明 接下来我们通过案例来加强所学js知识点的掌握。 需求如下3个: 点击 “点亮”按钮 点亮灯泡,点击“熄灭”按钮 熄灭灯泡 输入框鼠标聚焦后,展示小写;鼠标离焦后,展示大写。 点击 “全…

RK3588平台开发系列讲解(项目篇)实时显示摄像头

文章目录 一、测试代码二、代码解析2.1、OpenCV头文件2.2、类与函数的访问方式2.3、捕获摄像头图像2.4、定义图像变量2.5、显示图像沉淀、分享、成长,让自己和他人都能有所收获!😄 📢 本篇将给大家介绍,如何基于USB摄像头进行实时显示。 一、测试代码 #include "o…

Window MongoDB安装

三种NOSQL的一种,Redis MongoDB ES 应用场景: 1.社交场景:使用Mongodb存储用户信息,以及用户发表的朋友圈信息,通过地理位置索引实现附近的人,地点等功能 2.游戏场景:使用Mongodb存储游戏用户信息,用户的装备,积分等直接以内嵌文档的形式存储,方便查询,高效率存储和访问…

docker-compose 部署 MySQL 8

前言 Windows 系统通过 docker-compose 部署 MySQL8.0。 MySQL 配置文件(my.cnf) # 服务端参数配置 [mysqld] usermysql # MySQL启动用户 default-storage-engineINNODB # 创建新表时将使用的默认存储引擎 character-set-serverutf8mb4 # 设置mysql服…

“技能兴鲁”职业技能大赛-网络安全赛项-学生组初赛 WP

Crypto BabyRSA 共模攻击 题目附件: from gmpy2 import * from Crypto.Util.number import *flag flag{I\m not gonna tell you the FLAG} # 这个肯定不是FLAG了,不要交这个咯p getPrime(2048) q getPrime(2048) m1 bytes_to_long(bytes(flag.e…

通过右键用WebStorm、Idea打开某个文件夹或者在某一文件夹下右键打开当前文件夹用上述两个应用

通过右键用WebStorm、Idea打开某个文件夹或者在某一文件夹下右键打开当前文件夹用上述两个应用 通过右键点击某个文件夹用Idea打开 首先打开注册表 win R 输入 regedit 然后找到HKEY_CLASSES_ROOT\Directory\shell 然后右键shell 新建一个项名字就叫 Idea 第一步&#xf…

LeetCode(13)除自身以外数组的乘积【数组/字符串】【中等】

目录 1.题目2.答案3.提交结果截图 链接: 238. 除自身以外数组的乘积 1.题目 给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素…