原计划内容是写F103VE点灯,过程比较顺利,因为之前一样的板子一样的事情已经搞过了,感觉现在这个的对日后更有参考意义,故稍作调整。
大约3个礼拜前刚用F407VE点灯,过程有点坎坷,当时并没有进行记录,现在凭回忆补一份笔记,更多的是对当时一些参考内容的罗列。使用的是HAL库。
HAL库GPIO配置
一直都是按照这个专栏的文章进行设置的,F4相同。除了时钟源设置别忘了,其他没有什么需要多注意的。不多花时间列出过程了。
外加两点
- 点灯时,引脚速度选个Low就好了;
- User Label挺好用的,不用自己加宏了。
用到的函数
void HAL_GPIO_WritePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState);
例:
HAL_GPIO_WritePin(GPIOF, GPIO_PIN_9,GPIO_PIN_RESET)
GPIO_PIN_RESET - 低电平
GPIO_PIN_SET - 高电平
固件库下载
D:\BaiduNetdiskDownload\STM32入门教程资料\Keil5 MDK\支持包
保存在这个位置,下次要用的时候不要忘了。
烧录设置
那天晚上各种形式的报错,后面好像是睡一觉就好了,难绷。靠睡觉解决的单片机和python问题已经快有10个了。
Error: Flash Download failed - “Cortex-M4“-STM32F4
Keil 下载报错ST-link connection error解决方法
cubemx导致No target conncted解决方法
HAL基础设置
自己新建工程之后发现有一些设置没搞好,就想起了这个,其他的日后回忆起来再补充。
开漏输出
其他输入输出方式算是比较明了,但这部分知识点一直不是很理解。现在补的数电课刚好上到这,也做一个笔记。
手册内容:
输出缓冲器被打开:
— 开漏模式:输出寄存器中的“0”可激活 N-MOS,而输出寄存器中的“1”会使端
口保持高组态 (Hi-Z)(P-MOS 始终不激活)。
— 推挽模式:输出寄存器中的“0”可激活 N-MOS,而输出寄存器中的“1”可激活
P-MOS。
数电书上的内容:
开漏输出可以用于通信:
高阻态的解释:两个MOS管都关闭时,相当于输入与输出之间断路,电阻很大,这种情况和悬空很像,不知道引脚是高电平还是低电平。