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

贵阳网站建设哪家好方舟内蒙古网站seo

贵阳网站建设哪家好方舟,内蒙古网站seo,安徽省建设工程信网站,手机上的网站目录 一:点亮1个LED 1:连接图 2:函数介绍 3:点灯代码 二:LED闪烁 1:函数介绍 2:闪烁代码 三:LED流水灯 1:连接图 2:函数介绍 3:流水灯代码 四:蜂鸣器 1:连接图 2:蜂鸣器代码 一:点亮1个LED 1:连接图 因为IO口与LED负极相连所以IO口输出低电频,点亮LED (采用的是低…

目录

一:点亮1个LED

1:连接图

2:函数介绍

3:点灯代码

二:LED闪烁

1:函数介绍

2:闪烁代码

三:LED流水灯

1:连接图

2:函数介绍

3:流水灯代码

四:蜂鸣器

1:连接图

 2:蜂鸣器代码


一:点亮1个LED

1:连接图

 因为IO口与LED负极相连所以IO口输出低电频,点亮LED (采用的是低电频点亮)

STM32的GPIO(通用输入输出口)总共需要3个步骤

A:第一步,使用RCC开启GPIO的时钟

B:第二步,使用GPIO_Init函数初始化GPIO

C:第三步,使用输出或者输入的函数控制GPIO口

2:函数介绍

stm32f10x_rcc.h文件中经常使用的函数只有3个 (RCC开启GPIO的时钟):

void RCC_AHBPeriphClockCmd(uint32_t RCC_AHBPeriph, FunctionalState NewState);
void RCC_APB2PeriphClockCmd(uint32_t RCC_APB2Periph, FunctionalState NewState);
void RCC_APB1PeriphClockCmd(uint32_t RCC_APB1Periph, FunctionalState NewState);

RCC_AHBPeriphClockCmd: 第一个参数就是选择哪个外设 ,第二个参数ENABLE(启动) or DISABLE(无效))

RCC_APB2PeriphClockCmd和RCC_APB1PeriphClockCmd参数意思一致:  第一个参数选择外设,第二个参数使能ENABLE或失能DISABLE

stm32f10x_gpio.h文件中经常使用的函数很多(PIO_Init函数初始化GPIO) :

void GPIO_DeInit(GPIO_TypeDef* GPIOx);
void GPIO_AFIODeInit(void);
void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct);
void GPIO_StructInit(GPIO_InitTypeDef* GPIO_InitStruct);
uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
uint16_t GPIO_ReadInputData(GPIO_TypeDef* GPIOx);
uint8_t GPIO_ReadOutputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
uint16_t GPIO_ReadOutputData(GPIO_TypeDef* GPIOx);
void GPIO_SetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
void GPIO_ResetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
void GPIO_WriteBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, BitAction BitVal);
void GPIO_Write(GPIO_TypeDef* GPIOx, uint16_t PortVal);

 GPIO_Init: 这个函数的作用是,用结构体的参数来初始化GPIO口, 我们首先需要先定义一个结构体变量,然后再给结构体赋值,最后调用这个函数. 这个函数内部就会自动读取结构体内部的值,然后自动把外设的各个参数配置好. 

        第一个参数就是选择哪个外设, 第二个参数就是结构体,我们先把结构体类型复制下来

使用输出或者输入的函数控制GPIO口

GPIO_ResetBits:   第一个参数就是选择哪个外设(GPIOx  x=A~G), 第二个参数就是 GPIO_Pin_x (x=0~15)把指定的端口设置为低电频,

3:点灯代码

#include "stm32f10x.h"                  // Device header
int main(void){//第一步,使用RCC开启GPIO的时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);//第二步,使用GPIO Init函数初始化GPIOGPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Mode= GPIO_Mode_Out_PP;//推挽输出GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0;GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;GPIO_Init(GPIOA,&GPIO_InitStructure);//第三步,使用输出或者输入的函数控制GPIO口GPIO_ResetBits(GPIOA,GPIO_Pin_0);while(1){}
}

推挽输出 GPIO_Mode_Out_PP高低电频都有驱动能力

二:LED闪烁

连接图同(一:点亮1个LED)

1:函数介绍

stm32f10x_gpio.h文件中经常使用的函数很多(PIO_Init函数初始化GPIO) :

void GPIO_SetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
void GPIO_ResetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
void GPIO_WriteBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, BitAction BitVal);

GPIO_SetBits和GPIO_ResetBits函数的参数相同: 第一个参数就是选择哪个外设(GPIOx  x=A~G) , 第二个参数就是 GPIO_Pin_x (x=0~15),

GPIO_SetBits第二给参数可以把指定的参数设置为高电频

GPIO_ResetBits第二给参数可以把指定的参数设置为低电频

GPIO_WriteBit: 第一个参数就是选择哪个外设(GPIOx  x=A~G) , 第二个参数就是 GPIO_Pin_x (x=0~15),第三个参数Bit_RESET(把第二个参数设置为低电频) or Bit_SET(把第二个参数设置为高电频;    Bit_RESET=(BitAction)0  把0强制转化为BitAction枚举类型同理 Bit_SET一样

2:闪烁代码

#include "stm32f10x.h"                  // Device header
#include "Delay.h"
int main(void){//第一步,使用RCC开启GPIO的时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);//第二步,使用GPIO Init函数初始化GPIOGPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Mode= GPIO_Mode_Out_PP;//推挽输出GPIO_InitStructure.GPIO_Pin=GPIO_Pin_0;GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;GPIO_Init(GPIOA,&GPIO_InitStructure);//第三步,使用输出或者输入的函数控制GPIO口//GPIO_ResetBits(GPIOA,GPIO_Pin_0);低//GPIO_SetBits(GPIOA,GPIO_Pin_0); //GPIO_WriteBit(GPIOA,GPIO_Pin_0,Bit_RESET);   //Bit_SET高   Bit_RESET低while(1){//Bit_RESET=(BitAction)0  把0强制转化为BitAction枚举类型GPIO_WriteBit(GPIOA,GPIO_Pin_0,(BitAction)0);Delay_ms(500);GPIO_WriteBit(GPIOA,GPIO_Pin_0,(BitAction)1);Delay_ms(500);}
}

三:LED流水灯

1:连接图

2:函数介绍

stm32f10x_gpio.h文件中经常使用的函数很多(PIO_Init函数初始化GPIO) : 

void GPIO_Write(GPIO_TypeDef* GPIOx, uint16_t PortVal);

 GPIO_Write: 第一个参数就是选择哪个外设(GPIOx  x=A~G) , 第二个参数就是直接写到GPIO的ODR寄存器里的; 这里写的是。指定写到输出数据寄存器的值

3:流水灯代码

#include "stm32f10x.h"                  // Device header
#include "Delay.h"
int main(void){//第一步,使用RCC开启GPIO的时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);//第二步,使用GPIO Init函数初始化GPIOGPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Mode= GPIO_Mode_Out_PP;//推挽输出GPIO_InitStructure.GPIO_Pin=GPIO_Pin_All; //打开GPIOA的16个IO口GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;GPIO_Init(GPIOA,&GPIO_InitStructure);//第三步,使用输出或者输入的函数控制GPIO口//GPIO_ResetBits(GPIOA,GPIO_Pin_0);低//GPIO_SetBits(GPIOA,GPIO_Pin_0); //GPIO_WriteBit(GPIOA,GPIO_Pin_0,Bit_RESET);   //Bit_SET高   Bit_RESET低while(1){int data=0x0001;    //0x0001=0000 0000 0000 0001for(int i=0;i<8;i++){  GPIO_Write(GPIOA,~data);   Delay_ms(500);data=data<<1;}}
}

四:蜂鸣器

我们使用的是有源蜂鸣器:低电频触发

有源蜂鸣器:内部自带振荡源,将正负极接上直流电压即可持续发声,频率固定

1:连接图

 2:蜂鸣器代码

#include "stm32f10x.h"                  // Device header
#include "Delay.h"
int main(void){//第一步,使用RCC开启GPIO的时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);//第二步,使用GPIO Init函数初始化GPIOGPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Mode= GPIO_Mode_Out_PP;//推挽输出GPIO_InitStructure.GPIO_Pin=GPIO_Pin_12; //打开GPIOA的16个IO口GPIO_InitStructure.GPIO_Speed= GPIO_Speed_50MHz;GPIO_Init(GPIOB,&GPIO_InitStructure);//第三步,使用输出或者输入的函数控制GPIO口//GPIO_ResetBits(GPIOA,GPIO_Pin_0);低//GPIO_SetBits(GPIOA,GPIO_Pin_0); 高//GPIO_WriteBit(GPIOA,GPIO_Pin_0,Bit_RESET);   //Bit_SET高   Bit_RESET低while(1){GPIO_WriteBit(GPIOB,GPIO_Pin_12,(BitAction)0);Delay_ms(100);GPIO_SetBits(GPIOB,GPIO_Pin_0);Delay_ms(100);GPIO_ResetBits(GPIOB,GPIO_Pin_0);Delay_ms(100);GPIO_WriteBit(GPIOB,GPIO_Pin_12,(BitAction)1);Delay_ms(700);}}

http://www.15wanjia.com/news/30042.html

相关文章:

  • 网站开发需要证书吗网络营销的渠道
  • 工信部网站备案信息软文是什么文章
  • 请简述企业网站的推广阶段及其特点资源平台
  • 央美老师做的家具网站互联网公司网站模板
  • 学校网站模版web前端培训费用大概多少
  • 威海做企业网站经典软文案例100例
  • 深圳建筑公司招聘信息seo品牌
  • 政府网站建设背景自动点击器免费下载
  • 广西住房和建设厅网站中国十大网络销售公司
  • 服装网站建设背景哪些广告平台留号码
  • wordpress 独立应用页面搜索引擎优化是指什么意思
  • 国外做网站被动收入职业技能培训有哪些
  • 政府网站集约化建设通知交换友情链接吧
  • 个人怎么进行网站建设百度智能云建站
  • 关于建设网站的报告书宁夏百度推广代理商
  • 做网站维护的人叫啥建设网站流程
  • 网站推广自己可以做吗百度seo公司电话
  • 抓取网站url如何通过网络营销自己
  • 创建一个网站的创业计划书开户推广竞价开户
  • wordpress 配置smtp百度seo综合查询
  • 美国白宫网站开发中央广播电视总台
  • 做网站要会写什么软件有免费做网站的吗
  • 网站建设优化安徽推广平台app
  • 做it的网站有哪些山西网络推广
  • 云南建投第五建设有限公司网站重庆seo网络优化师
  • 慈溪企业网站seo百度一下电脑版首页
  • 成都网站建设 培训班营销网络是什么
  • 单县做网站地推推广方案
  • wordpress 跳回80端口电商seo是什么
  • 沭阳做网站好的怎么优化电脑系统