本帖最后由 一厢情愿 于 2016-12-18 00:54 编辑
拿到板子已经三天了,板子真的很好看,放在电脑前面,每天回家都忍不住看它两眼,家里的网速很差,捣鼓了一天的STM32F413的pack下载,一直没成功,无奈在公司翻墙,把pack下了带回家了,嘿嘿,这下可以开搞了,插上板子之后呢,提示我驱动未安装成功,去官网看了要更新stsw-link009驱动,下载下来之后呢,不知道为什么,我是win7 64位系统,无法打开,没办法,换了个stsw-link008,选择X64的,直接秒安装,然后用audio003更新一下,大功告成。识别了端口,也读取出了NUCLEO-F413的U盘:
在官网下载stm32f413的hal库,然后自己移植了一下mdk程序,以前一直是用的标准库,第一次使用hal库,给我的感觉就是更加方便和直观了,直接裸库就可以使用,不再像之前,偶尔还要去翻翻库手册,很强大。我也使用了一下stm32cubeMX这个软件,确实方便了很多,但是呢,还是习惯自己建立工程,用HAL库。总之,相比之前,让我眼前一亮。
看了一下原理图,发现是有用一个8Mhz的外部晶振的,但是我看到板子上没有焊上这部分,所以就只能用外部的啦,本次点灯用到的是板子上LD2,LD3,分别接的是PB7和PB14,每隔500ms循环翻转电平,两个led颜色不一样,变化起来也是别有一番滋味。延时使用的是SYStick,在HAL初始化就调用了。只需要配置下GPIO时钟和引脚即可使用,看到GPIO时钟的是嫩配置,真的,HAL库太强大了,可以用无敌二字来评判,功能在函数名上一清二楚。
那个动态图片我不知道该怎么弄,所以就只能拍张照片啦,大家可以发挥想象力,哈哈,主程序代码:
- #include "stm32f4xx_hal.h"
- int main(void)
- {
- GPIO_InitTypeDef myGpioType;
- HAL_Init();
- __HAL_RCC_GPIOB_CLK_ENABLE();
- myGpioType.Pin = GPIO_PIN_7;
- myGpioType.Mode = GPIO_MODE_OUTPUT_PP;
- myGpioType.Speed = GPIO_SPEED_FREQ_LOW;
- myGpioType.Pull = GPIO_NOPULL;
- HAL_GPIO_Init(GPIOB, &myGpioType);
- myGpioType.Pin = GPIO_PIN_14;
- HAL_GPIO_Init(GPIOB, &myGpioType);
- while (1)
- {
- HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_7);
- HAL_Delay(500);
- HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_14);
- HAL_Delay(500);
- }
- }
复制代码