ARM CMSIS驱动学习USART

发布于:2024-07-17 编辑:匿名 来源:网络

最近升级MDK到V5.25,发现Managing Run-Time Environment中有很多库。

比以前好多了。

从底层驱动到上层协议栈,有常用的,也有不太常用的。

我发现ARM加快了这个系统的更新速度,感觉有必要学习一下。

从驱动开始学习,首先学习USART API。

ARM CMSIS驱动学习USART

详细介绍参见CMSIS驱动USART API  USART将接收到的数据发送给程序  /**  ************* ******** ****************************************************** ************  * @file main.c  * @作者 XinLi  * @版本 v1.0  * @日期 20-3 月-  * @brief 主程序主体。

  **************************************** ** **************************************************  * @注意  *  *版权所有? * 自由软件基金会,许可证的第 3 版,或  *(由您选择)任何更高版本。

  *  * 分发此程序是为了希望它有用,   * 但不提供任何保证;甚至没有  的默示保证* 适销性或特定用途的适用性。

有关更多详细信息,请参阅  * GNU 通用公共许可证。

  *  * 您应该随本程序一起收到 GNU 通用公共许可证  * 的副本。

如果没有,请参阅 .  *  **************************************** ******************************************  */  /*标头包括------------------------------------------------ -----------*/  #include "stm32f4xx.h"  #include "Driver_USART.h"  #include  /* 宏定义 ----- -------------------------------------------------- --*/  /* 类型定义 ------------------------------------------ -------------------*/  /* 变量声明 ---------------------- -------------------------------*/  extern ARM_DRIVER_USART Driver_USART1;  /* 变量定义 --- -------------------------------------------------- -*/  static uint8_t rxBuffer[] = {0};  static uint8_t txBuffer[] = {0};  /* 函数声明 ---------------------------------------------- -------*/  static void USART1_Callback(uint32_t event);  static void SystemClock_Config(void);  /* 函数定义 ------------- ------------------------------------------------------*/  /**  * @brief 主程序。

  * @param None。

  * @return None。

  */  int main(void)  {  /* STM32F4xx HAL 库初始化:  - 配置闪存预取、指令和数据缓存  - 将 Systick 配置为每 1 毫秒生成一个中断  - 将 NVIC 组优先级设置为 4  - 全局 MSP(MCU 支持包)初始化  */  HAL_Init();  /* 配置系统时钟为 MHz */  SystemClock_Config();  Driver_USART1.Initialize(USART1_Callback);  Driver_USART1.PowerControl(ARM_POWER_FULL );  Driver_USART1.Control(ARM_USART_MODE_ASYNCHRONOUS |  ARM_USART_DATA_BITS_8 |  ARM_USART_PARITY_NONE |  ARM_USART_STOP_BITS_1 |  ARM_USART_FLOW_CONTROL_NONE, 0 0);  Driver_USART1.Control(ARM_USART_CONTROL_TX, 1);  Driver_USART1.Control(ARM_USART_CONTROL_RX, 1);  Driver_USART1.Receive(rxBuffer, sizeof(rxBuffer));  for(;;)  {  }  }  /**  * @brief USART1 回调函数。

  * @param event: USART 事件通知掩码。

  * @return None。

  */  static void USART1_Callback(uint32_t event)  {  if(event & ARM_USART_EVENT_RX_TIMEOUT)  {  Driver_USART1.Control(ARM_USART_ABORT_RECEIVE, 1);  uint32_t 长度 = Driver_US ART1.GetRxCount();  memcpy(txBuffer, rxBuffer, 长度);  Driver_USART1.Send(txBuffer, 长度);  Driver_USART1.接收(rxBuffer, sizeof(rxBuffer));  }  }  / **  * @brief 系统时钟配置  * 系统时钟配置如下:  * 系统时钟源 = PLL (HSE)  * SYSCLK(Hz) = 0  * HCLK (Hz) = 0  * AHB 预分频器 = 1  * APB1 预分频器 = 4  * APB2 预分频器 = 2  * HSE 频率(Hz) =  * PLL_M = 8  * PLL_N =  * PLL_P = 2  * PLL_Q = 7  * VDD(V) = 3.3  * 主稳压器输出电压 = Scale1 模式  * 闪存延迟 (WS) = 5  * @param None  * @retval None  */  static void SystemClock_Config(void)  {  RCC_ClkInitTypeDef RCC_ClkInitStruct;  RCC_OscInitTypeDef RCC_OscInitStruct;  /* 启用电源控制时钟 */  __HAL_RCC_PWR_CLK_ENABLE();  /* 电压缩放可优化器件运行时的功耗  时钟如下最大系统频率,更新电压缩放值  有关系统频率,请参阅产品数据表。

ARM CMSIS驱动学习USART

站长声明

版权声明:本文内容由互联网用户自发贡献,本站不拥有所有权,不承担相关法律责任。如果发现本站有涉嫌抄袭的内容,欢迎发送邮件 举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。

标签:

相关文章

  • 影院场景,我找科技完成数千万元Pre-A轮融资

    影院场景,我找科技完成数千万元Pre-A轮融资

    据投资界3月12日消息,我找科技完成数千万元Pre-A轮融资,投资方为青松基金。   娃娃的娱乐游戏持续火爆,我潮科技选择将场景放在电影院。 CEO虞智勇认为,影院是电影衍生品消费的最佳场景,而娃娃基则具有互动性好、消费决策成本低的优势。   据统计,沃兆目前在全国多

    06-18

  • 万众一芯完成数千万元B轮投资,由经纬创投独家投资

    万众一芯完成数千万元B轮投资,由经纬创投独家投资

    投资圈(微信ID:pedaily)据1月4日消息,万众一芯生物科技有限公司(以下简称“万众一芯”) )宣布完成数千万元B轮融资,本轮融资由经纬中国独家投资。 万众一芯是一家致力于半导体生物传感器产业化的高新技术企业。 它通过在环境保护和疾病检测领域的深入探索,帮助人类过

    06-17

  • 一键查询,顺利申请:社保卡智能客服让您享受便捷的社保服务

    一键查询,顺利申请:社保卡智能客服让您享受便捷的社保服务

    .wp-block-column h3{margin-left:0} 现代社会,社保服务是每个人都需要的注意重要问题。 但传统的社保服务往往需要人们亲自前往社保经办机构或通过电话进行咨询办理,费时费力。 而现在有了沃丰科技的Udesk智能客服,社保服务变得更加便捷高效。 沃丰科技是一家专注于智能客

    06-18

  • 西湖论剑成长史丨从萌芽破土到枝繁叶茂

    西湖论剑成长史丨从萌芽破土到枝繁叶茂

    西湖网络安全创新大会是中国网络安全行业影响深远的安全峰会之一。 现在是中国的网络安全产业和数字时代。 作为融合发展的对话平台,西湖剑论坛今年以来已成功举办六届,实现了从萌芽起步到蓬勃发展的快速成长。 4月19日,西湖剑论坛网络安全大会将在杭州盛大开幕,尽享这场盛

    06-18

  • 镁睿化学获2600万美元A轮融资,启明创投、济峰资本联合领投

    镁睿化学获2600万美元A轮融资,启明创投、济峰资本联合领投

    投资社区(ID:pedaily)1月9日消息,上海美瑞科技有限公司(以下简称“镁睿化学”)镁睿化学”)近日完成本轮融资,由启明创投、济峰资本联合领投,创新工场、耀明科技跟投。 融资资金将用于进一步完善产品研发、拓展商业市场、支持国际化布局。 镁睿化学成立于今年1月,由镁

    06-18

  • i-ROBOT平衡车:诺布尔学校全新应用,期待平衡车校园之路

    i-ROBOT平衡车:诺布尔学校全新应用,期待平衡车校园之路

    如今,为了让中小学生享受高质量的特殊教育,提高师资队伍,诺布尔学校学校更愿意加大投入购买先进的教学设备。 。 另外,作为学生家长,除了希望孩子能够学好知识外,也希望他们身体强健,茁壮成长。 为了实现家长的愿望,还旨在培养学生之间相互尊重、团结合作、集体责任感

    06-18

  • A、B、C、D获满邦集团3亿元A轮融资,打造大型汽车零部件供应链配套平台

    A、B、C、D获满邦集团3亿元A轮融资,打造大型汽车零部件供应链配套平台

    据投资界6月27日消息,汽车后市场平台A、 B、B、D获得满帮集团3亿元A轮战略投资,未来双方将共同打造汽车售后服务网络体系,打造领先的大型整车及零部件供应链配套平台。 今年4月,A、B、B、D获得中信建投资本领投的Pre-A轮融资。   A、B、C、D电子商务网站是一个从线下交

    06-18

  • 加密IPO招股说明书:内文无法复制,拒绝率翻倍

    加密IPO招股说明书:内文无法复制,拒绝率翻倍

    6月15日,证监会官网预披露康信(中国)设计工程首次公开??发行股票(IPO)《申请稿》当本报记者下载PDF文件准备研究时,发现这份原本是公开文件的IPO《申请稿》被标注了“加密”——所有内文的话都无法被读取。   此次“加密IPO申报”并非特例,据本报记者统计,从去年6月

    06-18

  • 浙江省丽水市-省科技型中小企业认定指南

    浙江省丽水市-省科技型中小企业认定指南

    基本信息指南名称:省科技型中小企业认定办理城市:丽水市部门名称:市科技局统一社会信用代码:0R 服务对象:法人办 文件类型:承诺文件 法律处理时限:(工作日) 承诺处理时限:立即处理地点:丽水市科学技术局(丽水市莲都区灯塔街1号) 处理时间:正常工作日 周一至周五

    06-17

  • 柠檬光子获近亿元B2轮融资,深创投、深高新投资联合领投

    柠檬光子获近亿元B2轮融资,深创投、深高新投资联合领投

    投资圈(ID:pedaily)1月9日消息,近日,光芯片技术平台“柠檬光子”宣布完成B2轮融资由深圳创新投资集团、深圳高新投资集团联合领投,行业初创企业方创新激光和当地政府番禺产业投资跟投,耀明资本作为唯一投资方。 此前,柠檬光子还完成了由飞图创投、卓盛微电子联合领投、

    06-18

  • “极步科技”宣布完成超千万元天使轮融资,金沙江创投领投

    “极步科技”宣布完成超千万元天使轮融资,金沙江创投领投

    投资圈(ID:pedaily)8月30日消息,“极步科技”宣布完成天使轮融资本轮融资超千万元融资,本轮融资由金沙江创投领投,上海创业接力跟投。 本轮融资后,公司将继续投入研发和营销,并于近期启动了新一轮融资,以进一步提高产品研发和营销的速度。 “极步科技”成立于今年11月

    06-18

  • 风靡全球的老大 OATLY燕麦奶已成为潮流品牌!

    风靡全球的老大 OATLY燕麦奶已成为潮流品牌!

    ,瑞典隆德大学的Arne Dahlqvist发现了乳糖不耐症。 他的学生 Rickard ?ste 在 20 世纪 90 年代开发出了世界上第一个燕麦“牛奶”。 后来,他创立了当今最受欢迎的年轻人品牌之一:OATLY。 最近,这家专门生产燕麦产品的公司推出了10件限量版雨衣!是的,你没有看错,OATLY要

    06-21