提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。
提示:以下是本篇文章正文内容,下面案例可供参考
GPIO的结构体是GPIO_InitTypeDef。其中
成员GPIO_Pin的成员是GPIO_Pin_1等,在stm32f10x_gpio.h文件中
成员GPIO_Mode的右值是GPIO_Mode_xxx,在stm32f10x_gpio.h文件中
成员GPIO_Speed的右值是GPIO_Speed_50MHz,为什么是50MHz,还不知道。
使能时钟函数RCC_APB2PeriphClockCmd,其中第一个参数是GPIOA...GPIOG等地址。这个定义在stm32f10x.h文件中,stm32f10x.h文件工程中有,arm keil安装路径里也有,比如本机的路径是
C:\Keil_v5\ARM\PACK\Keil\STM32F1xx_DFP\1.0.5\Device\Include
工程中的路径是
E:\Gitee\fireproject\LibraryProject\fireProject_key\Libraries\system
至于野火教程中将GPIOA再次宏定义,我就不再次宏定义了吧。
上面的RCC_APB2PeriphClockCmd函数的第一个函数是RCC_APB2Periph_GPIOA,类型是uint32_t类型,这个地址值宏定义在stm32f10x_rcc.h文件中。
GPIO_Mode_AIN |
模拟输入 |
|
GPIO_Mode_IN_FLOATING |
浮空输入 | |
GPIO_Mode_IPD |
下拉输入 | |
GPIO_Mode_IPU |
上拉输入 | |
GPIO_Mode_Out_OD |
开漏输出 |
|
GPIO_Mode_Out_PP |
推挽输出 |
|
GPIO_Mode_AF_OD |
复用开漏输出 |
|
GPIO_Mode_AF_PP |
复用推挽输出 |
按键检测的函数,即读取gpio引脚的电平,
GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)
keil使用bool、false、true需要包含#include
led灯还有三个不同寄存器,有三种实现效果
编写好代码后烧写到protues中,实现不了按键改变灯闪烁的情况。
情况一、代码中GPIO类型设置错了,按键应该设置成浮空输入。led灯应该设置成推挽输出。
情况二、我的电路图画错了。
一开始这样的电路图,实现不了效果,调试代码发现就是根本检测不到PA2引脚电平变化,然后自己把接地改成接vcc。
这样就可以了。
实际野火设计的也是接电源啊。。
成功,提交代码!
.\key\bsp_key.h(8): warning: #1295-D: Deprecated declaration gpio_init - give arg types
解决办法:函数需要加形参void gpio_init(void);
key\bsp_key.c(51): warning: #940-D: missing return statement at end of non-void function "get_key_status"
bool类型函数缺少返回值。
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。