STM32 下的库函数和寄存器操作比较
来源:互联网 发布:java 工具监控磁盘io 编辑:程序博客网 时间:2024/05/08 14:10
以 led闪烁中的flashLed函数例子:
库函数操作简单,但是效率不如寄存器操作的高;寄存器操作很复杂,因为要熟悉上百个寄存器,但是程序效率很高
/**下面是通过直接操作库函数的方式实现IO控制**/while(1){GPIO_ResetBits(GPIOB,GPIO_Pin_9); //LED0对应引脚GPIOF.9拉低,亮 等同LED0=0;GPIO_SetBits(GPIOB,GPIO_Pin_10); //LED1对应引脚GPIOF.10拉高,灭 等同LED1=1;delay_ms(500); //延时300msGPIO_SetBits(GPIOB,GPIO_Pin_9); //LED0对应引脚GPIOF.0拉高,灭 等同LED0=1;GPIO_ResetBits(GPIOB,GPIO_Pin_10); //LED1对应引脚GPIOF.10拉低,亮 等同LED1=0;delay_ms(500); //延时300ms}
/*********************下面注释掉的代码是通过 位带 操作实现IO口控制**************************************/int main(void){ delay_init(168); //初始化延时函数LED_Init(); //初始化LED端口 while(1){ LED0=0; //LED0亮 LED1=1;//LED1灭 delay_ms(500); LED0=1;//LED0灭 LED1=0;//LED1亮 delay_ms(500); }}/************************************************************************************************** **//*********************下面注释掉的代码是通过 直接操作寄存器 方式实现IO口控制**************************************/int main(void){ delay_init(168); //初始化延时函数LED_Init(); //初始化LED端口while(1){ GPIOF->BSRRH=GPIO_Pin_9;//LED0亮 GPIOF->BSRRL=GPIO_Pin_10;//LED1灭 delay_ms(500); GPIOF->BSRRL=GPIO_Pin_9;//LED0灭 GPIOF->BSRRH=GPIO_Pin_10;//LED1亮 delay_ms(500); } } /****************************************************************************************************/
/*我想说我更喜欢这样的,呵呵*/ while(1) { //FlashLED(); *(unsigned int*)(0x40010c0c) |=0x200 ;delay_ms(100); *(unsigned int*)(0x40010c0c) &=0xfffffdff ;delay_ms(100); }
1 0
- STM32 下的库函数和寄存器操作比较
- STM32寄存器操作和库函数操作区别
- stm32 BKP寄存器操作[操作寄存器+库函数]
- stm32 BKP寄存器操作[操作寄存器+库函数]
- stm32 BKP寄存器操作[操作寄存器+库函数]
- stm32 独立看门狗[操作寄存器+库函数]
- stm32 低功耗设计[操作寄存器+库函数]
- stm32 i2c通信 [操作寄存器+库函数]
- stm32 i2c通信 [操作寄存器+库函数]
- stm32 i2c通信 [操作寄存器+库函数]
- stm32 i2c通信 [操作寄存器+库函数]
- stm32 i2c通信 [操作寄存器+库函数]
- stm32 i2c通信 [操作寄存器+库函数]
- stm32 i2c通信 [操作寄存器+库函数]
- stm32 独立看门狗[操作寄存器+库函数]
- stm32 外部中断嵌套[操作寄存器+库函数]
- stm32 TIM定时器[操作寄存器+库函数]
- stm32 USART 串口通信[操作寄存器+库函数]
- ios文摘https和多线程
- python字符串处理二 内建函数
- 手机上的“G”“E”“H”“T”信号完美解释
- hdu 5387 Clock
- Majority Element && Majority Element II
- STM32 下的库函数和寄存器操作比较
- AppDelegate 、UIApplication 简单的用法
- 数据库总结
- 截取2个指定字符串中的字符串
- uva 438 - The Circumference of the Circle(几何)
- 快速返回顶部
- 【编程】float详解
- libgdx开篇
- GPIO 最简 操作步骤