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

千岛湖建设集团办公网站产品推广图片

千岛湖建设集团办公网站,产品推广图片,棋牌软件开发定制软件,深圳市建设网站公司1.1 寄存器开发 学过51单片机的同学应该知道,51单片机教程都是讲解的寄存器开发,但是这种开发方式对于STM32就变得比较困难,因为STM32的寄存器数量是51单片机的十数倍如此多的寄存器根本无法全部记忆, 开发时需要经常的翻查芯片手…

1.1 寄存器开发

学过51单片机的同学应该知道,51单片机教程都是讲解的寄存器开发,但是这种开发方式对于STM32就变得比较困难,因为STM32的寄存器数量是51单片机的十数倍如此多的寄存器根本无法全部记忆, 开发时需要经常的翻查芯片手册(找到对应的寄存器,在特定的比特位写入对应的值),直接操作寄存器就变得非常的费力了。但还是会有很小一部分人,喜欢去直接操作寄存器,因为这样更接近原理,知其然也知其所以然。

//基本流程 
//1.需求 通过gpio点亮LED2
//2.根据原理图-->对应的管脚 PC13
//3.根据芯片手册-->找到控制该管脚的相关寄存器 RCC_APB2ENR [4] = 1;  0x40021000+0x18GPIOC_CRH [23:20] = 0b 0010  //输出 2mhz 通用推挽0x40011000+0x4GPIOC_ODR [13]  = 0;   //输出低电平0x40011000+0xc//4.编程实现
#define RCC_APB2ENR *(volatile unsigned int *)0x40021018
#define GPIOC_CRH   *(volatile unsigned int *)0x40011004    
#define GPIOC_ODR   *(volatile unsigned int *)0x4001100C    
int main(void)
{RCC_APB2ENR |= (0X1<<4);GPIOC_ODR |= (0X1<<13);   GPIOC_CRH &= ~(0XF<<20);GPIOC_CRH |= (0X2<<20);while(1){GPIOC_ODR &= ~(0X1<<13);  //低电平 点亮mydelay(1000);GPIOC_ODR |= (0X1<<13);   //高电平 熄灭mydelay(1000);}
}    

1.2 标准库

STM32有非常多的寄存器从而导致开发困难,所以为此ST公司就为每款芯片都编写了一份库文件,也就是工程文件里stm32f10x_xxx.c 和stm32f10x_xxx.h。开发者可以调用库里面的函数接口来配置STM32的寄存器以实现各种功能,这种方式使得开发人员不用直接去操作寄存器,提高了开发速度,代码更具可读性,方便维护。这也是目前最多人使用的方式。
//示例:RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE); //使能时钟//管脚的初始化GPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;        //pin13GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;  //低速GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;  //推挽输出GPIO_Init(GPIOC,&GPIO_InitStructure);while(1){GPIO_WriteBit(GPIOC,GPIO_Pin_13,Bit_RESET); //低电平 点亮mydelay(1000);GPIO_WriteBit(GPIOC,GPIO_Pin_13,Bit_SET);  //高电平 熄灭mydelay(1000);}

1.3 HAL库

HAL库是ST公司目前主力推的开发方式,全称就是Hardware Abstraction Layer(抽象印象层)。它的出现比标准库要晚,但其实和标准库一样,都是为了节省程序的开发时间。HAL的集成度更高,同样的功能,标准库可能要用几句话,HAL库只需用一句话就够了。并且HAL库也很好的解决了程序移植的问题,不同型号的stm32芯片它的标准库是不一样的,例如在F3上开发的程序移植到F4上是不能通用的,而使用HAL库可以实现。而且使用ST公司研发的STMcubemx软件,可以通过图形化方式进行功能配置(更加方便),直接生成整个使用HAL库的工程文件,可以说是方便至极,但是方便的同时也造成了它执行效率的低下。

1.4 LL库

LL库,即STM32Cube Low-Layer,也叫Cube LL、Cube底层库。早在2014年,ST推出了STM32CubeMX这款工具,同步推出了对应的STM32Cube HAL库。但是,HAL存在一些问题:代码量大、执行效率低等缺点。因此,在2017年,ST推出了STM32Cube LL库,目的就是为了解决的HAL库的缺点,让开发STM32的工程师有更多的选择。

在这里插入图片描述

http://www.dtcms.com/wzjs/247919.html

相关文章:

  • 哪个网站能接施工图来做太原网络营销公司
  • 手机制作app需要什么软件seo推广岗位职责
  • 帮忙建设公司网站百度网盘帐号登录入口
  • 谷歌做公司网站需要多少钱天津网站排名提升多少钱
  • 网站开发市场现在怎么样企业邮箱域名
  • 网站建设职位广州市口碑全网推广报价
  • 电影网站怎么做不犯法广州百度快速优化排名
  • 网站建设案例分析题宁波seo网络推广推荐
  • 公司建网站空间网站页面
  • 网站推荐软件中国国家人才培训网官网
  • 网站开发包括什么怎么样做seo
  • 阜阳做网站有吗百度广告搜索引擎
  • 广东省建设工程网站营销公司
  • 网站建设模块需求手机上可以创建网站吗
  • 无代码网站开发平台有哪些免费推广软件 推广帮手
  • wordpress无法开启多站点链接买卖价格
  • 做免费网站需要营业执照吗深圳网络推广优化
  • 美国做旅游网站开封seo推广
  • axure可以做网站吗做了5天游戏推广被抓了
  • 百度如何建网站群在线网站seo诊断
  • 开发门户网站多少钱淘宝客seo推广教程
  • 新闻资讯网站怎么做软文网站模板
  • 企业网站建设一般考虑哪些因素?北京seo排名方法
  • 适合毕设做的简单网站媒体:多地新增感染趋势回落
  • 技术支持 合肥网站建设专门开发小程序的公司
  • 做网站首页多少钱网页seo优化
  • 陕西建设厅执业注册中心网站国际时事新闻
  • 机械 网站源码阿里云服务器
  • 做婚恋网站的开发怎么办网站平台
  • 宠物网站设计模板常用搜索引擎有哪些