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

基础知识复习(自用)

通信协议

串口rs232

两根线tx、rx,可同时收发(全双工),通信双方约定一个波特率

波特率:在信息传输通道中,携带数据信息的信号单元叫码元(因为串口是1bit进行传输的,所以其码元就是代表一个二进制数),每秒钟通过信号传输的码元数称为码元的传输速率,简称波特率,常用符号“Baud”表示,其单位为“波特每秒(Bps)”。

比特率:每秒钟通信信道传输的信息量称为位传输速率,简称比特率,其单位为“每秒比特数(bps)”。比特率可由波特率计算得出,公式为:比特率=波特率 * 单个调制状态对应的二进制位数。如果使用的是9600的波特率,其串口的比特率为:9600Bps * 1bit= 9600bps

串口rs485

双向、半双工,允许多个驱动器和接收器挂接在总线上,其中每个驱动器都能够脱离总线

SPI

 Serial Peripheral Interface,串行外围设备接口

四种模式,这4种模式分别由时钟极性(CPOL,Clock Polarity)和时钟相位(CPHA,Clock Phase)来定义,其中CPOL参数规定了空闲状态(CS_N为高电平,设备未被选中)时SCK时钟信号的电平状态,CPHA规定了数据采样是在SCK时钟的奇数边沿还是偶数边沿

IIC

主机产生SCL信号,控制通信的速率

仅有主机可以主动发起数据传输,因此要么主机主动发送给从机,要么主机读取某个从机

SDA 信号  SCL低电平准备数据 SCL高电平采集数据(此时SDA不允许变化)

软件IIC
在STM32中,软件IIC是一种通过程序控制GPIO口模拟实现IIC通信的方法。这种实现方式常用于一些资源有限的应用场景,或者在需要更灵活控制IIC通信时使用。总而言之,软件IIC是利用GPIO的翻转,一个IO模拟SCL线,一个IO模拟SDA线实现IIC通信协议的实现。
软件IIC不需要对IO有特殊的要求,只需要两个普通的GPIO即可实现,因此较为方便也方便移植,不同设备只需要重写IIC的基本通讯即可。

网口

OSI (Open System Interconnection)

在 RJ45 接口和处理器之间,需要使用一个能够实现 TTL 电平和高速串行数据收发模式之间的转换器,这个转换器就是我们常说的 PHY 芯片。
 

STM32相关

CMake

CMake是一个开放的,基于文本配置的工程管理工具,使用CMakeLists.txt来定义项目结构和编译规则,可以在不同开发环境之间复用

target_include_directories(目标_包含_文件夹) : 用来寻找头文件的文件夹
target_include_directories(${PROJECT_NAME}.elf PRIVATECore/IncDrivers/STM32H7xx_HAL_Driver/IncDrivers/STM32H7xx_HAL_Driver/Inc/LegacyDrivers/CMSIS/Device/ST/STM32H7xx/IncludeDrivers/CMSIS/Include# ... 其他 include 路径 ...
)

        老写法

include_directories(Core/Inc Drivers/STM32H7xx_HAL_Driver/Inc Drivers/STM32H7xx_HAL_Driver/Inc/Legacy Drivers/CMSIS/Device/ST/STM32H7xx/Include Drivers/CMSIS/IncludeCore/User/LTDCGUIGUI/lvglGUI/lvgl/src/core GUI/lvgl/src/draw GUI/lvgl/src/extra GUI/lvgl/src/font GUI/lvgl/src/gpu GUI/lvgl/src/hal GUI/lvgl/src/misc GUI/lvgl/src/widgetsGUI/lvgl_drivergenerated generated/guider_customer_fontsgenerated/guider_fontsDSP_libary/DSP_Inc/PrivateIncludeUser_Func_Lib/ADC_Function)

target_source 

        eg:

target_sources(${PROJECT_NAME}.elf PRIVATELib/oled/Src/font.c
)

        老写法 

file(GLOB_RECURSE SOURCESLibrary/*.*Core/*.*Drivers/*.*GUI/lvgl/src/*.*GUI/lvgl_driver/*.*GUI_app/lv_examples/lv_apps/benchmark/*.*GUI_app/widgets/*.*generated/*.*DSP_libary/Source/BasicMathFunctions/BasicMathFunctions.c# ... 其他源文件 ...User_Func_Lib/*.*
)

http://www.dtcms.com/a/500715.html

相关文章:

  • 浏览器开发CEF (十九)小红书商家版千帆订单抓取——东方仙盟元婴期
  • 单页面应用的网站搬瓦工建wordpress
  • 深圳网站建设设计门户制作
  • Kubernetes简介及部署
  • 肤契:全域协议版 九 血鉴录现世
  • 个人公司网站模板wordpress的搜索插件
  • zabbix监控进程、日志、mysql主从
  • MyBatis—增删查改操作
  • 扬州润扬交通建设集团网站做网站排名优化是怎么回事
  • 无锡企业推广网站网站建设策划书范文
  • 一个网站如何做双语安徽网络公司排名
  • 聊天室项目开发——安装并使用gtest库以及spdlog日志组件
  • 桐乡建设局网站智能建站服务平台
  • Altium Designer(AD24)View视图功能总结
  • 国产麒麟系统门禁主板--XC3576IC,以AI芯赋能多元生物识别生态
  • 梅州做网站设计公司微信怎么建立公众号
  • 中国企业网络营销实例郑州网站优化平台
  • 关于建立网站的思路免费建立网站软件
  • 宁波网站建设详细内容在线课程设计
  • 网站建设代码下载大全wordpress左侧菜单
  • 商业网站建设规划书自我做t恤的网站
  • 企业网站备案名称要求做外汇网站做什么类型网站好
  • 能从源代码黑进网站修改数据吗字体升级wordpress
  • a站播放量最高的视频测评网站架构
  • java.text 包详解
  • 做贸易选哪家网站精品资源共享课网站建设 碧辉腾乐
  • Kubernetes日志管理:使用Loki进行日志采集
  • 代人做网站建设厅质监总站网站
  • claude-code使用figmamcp
  • 红黑树详细介绍(五大规则、保持平衡操作、Java实现)