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

湖南营销型网站建设公司排名男女做暧暧网站免费

湖南营销型网站建设公司排名,男女做暧暧网站免费,wordpress精品插件,阿里云企业邮箱入口目录 一、时钟使能的含义 1.为什么要时钟使能#xff1f; 2.什么是时钟使能#xff1f; 3.GPIO的使能信号#xff1f; 二、代码封装 1.封装前完整代码 2.封装结构 封装后代码 led.c led.h key.c key.h main.c 一、时钟使能的含义 1.为什么要时钟使能#xff1f…目录 一、时钟使能的含义 1.为什么要时钟使能 2.什么是时钟使能 3.GPIO的使能信号 二、代码封装 1.封装前完整代码 2.封装结构 封装后代码 led.c led.h key.c key.h main.c 一、时钟使能的含义 1.为什么要时钟使能 每一个stm32单片机里都有着各种硬件设备每一个设备对于频率的要求是不同的有些设备要求频率低有些设备要求频率高。如果为所有硬件设备设置同一频率这就会出现性能不足或者资源浪费的情况所以引入“时钟”这一概念实现频率分配即“分频”“倍频”。需要低频和高频的设备使用相应的时钟使能函数已经固定需要查表或者查图获得可以使用自己所需要的频率实现资源的合理分配。 2.什么是时钟使能 时钟是分频使能是信号是动作。所有时钟默认是disable需要用哪个频率调用相应的信号设为enable。 时钟使能是用分频得到的信号作为模块的使能信号,模块原有的时钟不变。即用分频信号去控制模块的使能端口。 3.GPIO的使能信号 GPIO模块的使能信号是AHB1 RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF,ENABLE); 通过一系列的分频和倍频使得每一个模块有比较适配的频率利用率高。分倍频原理如下 二、代码封装 在前面的开关控制灯的亮灭代码实现时 有开关的五大参数设置和灯的五大参数设置等数十行代码在函数实现的前面影响程序的可读性所以要进行代码的封装增强简洁性。 1.封装前完整代码 #include stm32f4xx.h // Device headerint main() {//时钟使能--LEDRCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF,ENABLE);//GPIO时钟控制 //参数配置//让程序决定第几组第几根引脚如何工作GPIO_InitTypeDef led_gpio;led_gpio.GPIO_Mode GPIO_Mode_OUT; //引脚以输出方式工作led_gpio.GPIO_OType GPIO_OType_PP; //推挽led_gpio.GPIO_Pin GPIO_Pin_9| GPIO_Pin_10 |GPIO_Pin_8;led_gpio.GPIO_SpeedGPIO_High_Speed; //gpio的反应速率不太影响led_gpio.GPIO_PuPdGPIO_PuPd_DOWN; //上拉 GPIO_PuPd_DOWN 下拉//GPIO_PuPd_NOPULLGPIO_Init(GPIOF,led_gpio);GPIO_SetBits(GPIOF, GPIO_Pin_9);GPIO_SetBits(GPIOF, GPIO_Pin_10);uint16_t key00;//时钟使能--KEY开关RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOE,ENABLE);//GPIO时钟控制 //参数配置//让程序决定第几组第几根引脚如何工作GPIO_InitTypeDef key_gpio;key_gpio.GPIO_Mode GPIO_Mode_IN; //引脚以输入方式工作key_gpio.GPIO_OType GPIO_OType_PP; //推挽key_gpio.GPIO_Pin GPIO_Pin_4| GPIO_Pin_3 |GPIO_Pin_2;//第几根引脚key_gpio.GPIO_SpeedGPIO_High_Speed; //gpio的反应速率不太影响key_gpio.GPIO_PuPdGPIO_PuPd_UP; //上拉 GPIO_PuPd_DOWN 下拉//GPIO_PuPd_NOPULLGPIO_Init(GPIOE,key_gpio); //初始化while(1){//uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx,uint16_t GPIO_Pin);key0 GPIO_ReadInputDataBit(GPIOE,GPIO_Pin_4);//默认高电平按下接地if(key01){GPIO_WriteBit(GPIOF, GPIO_Pin_10,1);//led高电平灯灭}else{GPIO_WriteBit(GPIOF, GPIO_Pin_10,0); //led高电平灯亮} } } 2.封装结构 封装后代码 led.c #include stm32f4xx.h // Device headervoid Led_Init() {RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF,ENABLE);GPIO_InitTypeDef gpio_init;gpio_init.GPIO_ModeGPIO_Mode_OUT;gpio_init.GPIO_OTypeGPIO_OType_OD;gpio_init.GPIO_PinGPIO_Pin_9|GPIO_Pin_10;gpio_init.GPIO_PuPdGPIO_PuPd_NOPULL;gpio_init.GPIO_SpeedGPIO_High_Speed;GPIO_Init(GPIOF,gpio_init); } led.h void Led_Init(void);//声明 key.c #include stm32f4xx.h // Device headervoid Key_Init() {RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOE,ENABLE);GPIO_InitTypeDef gpio_key;gpio_key.GPIO_ModeGPIO_Mode_IN;gpio_key.GPIO_OTypeGPIO_OType_OD;gpio_key.GPIO_PinGPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4;gpio_key.GPIO_PuPdGPIO_PuPd_UP;gpio_key.GPIO_SpeedGPIO_High_Speed;GPIO_Init(GPIOE,gpio_key); } key.h void Key_Init(void);main.c #include stm32f4xx.h // Device header #include led.h #include key.hint main() {Led_Init();Key_Init();uint8_t key0;while(1){key GPIO_ReadInputDataBit(GPIOE,GPIO_Pin_4);//默认高电平按下接地if(key01){GPIO_WriteBit(GPIOF, GPIO_Pin_10,1); //led高电平灯灭} else{GPIO_WriteBit(GPIOF, GPIO_Pin_10,0); //led低电平灯亮} } } 至此main.c代码变简洁了不少而且代码更加易读代码层次也更清晰。
http://www.w-s-a.com/news/933910/

相关文章:

  • 网站开发技术方案模板无锡网站建设推荐
  • 自助建站系统注册三维家3d设计软件免费
  • 做seo网站标题重要吗郑州众诚建设监理有限公司网站
  • 建设网站南沙区百度关键词推广怎么做
  • 网站建设公司做销售前景好不好石家庄外贸网站制作
  • windows2008做网站网站首页打开速度
  • 做外贸要做什么网站服装设计图
  • 中山市路桥建设有限公司网站网站开发角色分配权限
  • 加强档案网站建设网站搭建好了不用会不会被攻击
  • 维护网站信息网络建设服务
  • 网站建设策划书模板下载用自己电脑配置服务器做网站
  • 360免费建站空间淘宝数据网站开发
  • 做分销的网站本地dede网站怎么上线
  • 中学网站模板北京管理咨询公司
  • 网站开发用哪个软件方便二级网站建设 管理思路
  • 个人怎么创建网站中国建设银行网站口
  • 跟知乎一样的网站做展示网站步骤
  • 邯郸网站建设效果好wordpress app 加载慢
  • 做app的网站有哪些功能广州自适应网站建设
  • 兰州建设网站的网站开源网站建设
  • 深圳网站建设南山指数基金是什么意思
  • 备案中又需要建设网站网站信息组织优化
  • 做网站推广需要什么asp响应式h5网站源码下载
  • 柳州建设网官方网站免费自助建站哪个平台好
  • 论坛网站模板源码下载网站建设与网页设计是什么
  • 跑流量的网站淘宝网站的建设目标是
  • 网站计费系统怎么做九一制作网站
  • 网红营销推广温州seo博客
  • 临沂网站制作定制现在比较流行的软件开发模型
  • 南宁企业建站系统做问卷调查哪个网站好