首页 / 资讯中心 / 文章详情

LED流水灯+蜂鸣器

LED流水灯+蜂鸣器 ★ FEATURED ARTICLE
1、GPIO最常用时钟RCC_AHBPeriphClockCmd() ; RCC_AHBP2eriphClockCmd() ; RCC_AHBP1eriphClockCmd()GPIO的功能GPIO_DeInit所有外设都会被复位GPIO_AFIODeInit也是复位是复位AFIO的外设GPIO_Init用结构体来初始化GPIO口基本所有外设都用这个初始化GPIO_StructInit把结构体变量赋一个默认值GPIO_ReadInputData、GPIO_ReadOutputDataBit、GPIO_ReadInputDataBit、GPIO_ReadOutputDataBit 这些是读取函数GPIO_SetBits输出函数把指定端口输出高电平GPIO_ResetBits输出函数把指定端口输出低电平GPIO_WriteBit输出函数、根据第三个参数的值来设置指定的端口GPIO_Write输出函数、可以对16个端口进行写入操作2、LED闪烁——延时//你好 #include stm32f10x.h #include Delay.h int main() { RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE); GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_ModeGPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_PinGPIO_Pin_0; GPIO_InitStructure.GPIO_SpeedGPIO_Speed_50MHz; GPIO_Init(GPIOA,GPIO_InitStructure); GPIO_ResetBits(GPIOA,GPIO_Pin_0); while(1) { //led闪烁就是点亮然后延时再熄灭 GPIO_WriteBit(GPIOA,GPIO_Pin_0,Bit_RESET);//点亮led Delay_ms(500); GPIO_WriteBit(GPIOA,GPIO_Pin_0,Bit_SET);//熄灭led Delay_ms(500); } }闪烁思路先点亮这里的点亮不一定只能用这个其他也可以只要能点亮就行延时熄灭成循环Delay函数的使用有毫秒还是秒的选择选择需要的即可。使用之前记得要导入库和对应的文件包3、LED流水灯其实就是闪烁的进阶版这个闪完下个闪不过多说了//你好 #include stm32f10x.h #include Delay.h int main() { RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE); //第一个引脚 GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_ModeGPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_PinGPIO_Pin_0 | GPIO_Pin_1| GPIO_Pin_2 | GPIO_Pin_3; GPIO_InitStructure.GPIO_SpeedGPIO_Speed_50MHz; GPIO_Init(GPIOA,GPIO_InitStructure); GPIO_ResetBits(GPIOA,GPIO_Pin_0 | GPIO_Pin_1| GPIO_Pin_2 | GPIO_Pin_3);//点亮 while(1) { GPIO_WriteBit(GPIOA,GPIO_Pin_0,Bit_RESET);//点亮 Delay_ms(500); GPIO_WriteBit(GPIOA,GPIO_Pin_0,Bit_SET); GPIO_WriteBit(GPIOA,GPIO_Pin_1,Bit_RESET);//点亮 Delay_ms(500); GPIO_WriteBit(GPIOA,GPIO_Pin_1,Bit_SET); GPIO_WriteBit(GPIOA,GPIO_Pin_2,Bit_RESET);//点亮 Delay_ms(500); GPIO_WriteBit(GPIOA,GPIO_Pin_2,Bit_SET); GPIO_WriteBit(GPIOA,GPIO_Pin_3,Bit_RESET);//点亮 Delay_ms(500); GPIO_WriteBit(GPIOA,GPIO_Pin_3,Bit_SET); } }4、蜂鸣器//你好 #include stm32f10x.h #include Delay.h int main() { RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE); //第一个引脚 GPIO_InitTypeDef GPIO_InitStructure; GPIO_InitStructure.GPIO_ModeGPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_PinGPIO_Pin_0; GPIO_InitStructure.GPIO_SpeedGPIO_Speed_50MHz; GPIO_Init(GPIOA,GPIO_InitStructure); GPIO_ResetBits(GPIOA,GPIO_Pin_0);//点亮 while(1) { } }其实就是跟点灯一样的因为都是把电平从3.3v-0v输出
阅读完成 · 觉得有帮助?
咨询建站