因为自己要学 Msp430 还有 ZigBee 发现 IAR 真的挺好用,,, 所以以后想着就用 IAR 写单片机程序,,
这次配置我不会把程序的配置弄得有条理, 分开文件夹存放,,, 我要把那些文件全都放到一块,, 弄得乱七八糟,,, 因为自己一开始学习用 Keil 开发 32 的时候,, 网上的视频建工程全都是建的
很有条理,, 对于一开始学的自己当时就感觉特麻烦,,, 对于初学者更是感觉麻烦,, 反而让初学者觉得难,,,,, 所以呢! 嘿嘿,,,,,,, 哪样简单哪样弄
不要以为我不是一个讲究的人哈, 我自己建的工程都是很有条理的,, 看我 Keil 的,,, 第一次用 IAR 嘛,, 先怎样简单怎样建,,,,,,,,
首先你要有下载的 STM32 的固件库
新建一个文件夹
把库的 Library 复制粘贴到新建的文件夹里面
然后打开
然后
然后
然后
然后打开固件库
然后还是刚才库目录下的这个文件夹
还是复制到 Libraries
刚想了想, 因为 CoreSupport 里面就两个文件, 所以就直接剪切出来得了
打开 IAR
新建工作空间
新建工程
名字自己起就好
写一个啥也不干的主函数
然后编译,, 现在会有许多错误,, 一点点的去排除错误
我用的是 STM32F10 3Z E ,, 所以选择的 STM32F10xxE
再编译一下
其实可以看官方提供的数据手册看一下自己的芯片属于哪一种,,,
再网上看一下
会看到
再编译一下
忘了刚才先复制过去了....... 就在刚才那个地方
再编译一下
然后还要一步设置,, 配置 Flash 地址的
写一个点亮一个灯的程序
- #include "stm32f10x.h"
- void LED_Init(void)
- {
- GPIO_InitTypeDef GPIO_InitStructure;
- RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
- GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
- GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;//推挽输出
- GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;//IO口速度为50MHz
- GPIO_Init(GPIOA, &GPIO_InitStructure);
- GPIO_ResetBits(GPIOA,GPIO_Pin_2);
- }
- int main()
- {
- while(1)
- {
- LED_Init();
- }
- }
接着就是下载,, 我现在手头上有 ST-Link,, 但是不知道为什么用这个软件好像检测不到我的 ST-Link,, 所以呢,, 就生成 Hex 文件, 然后下载到板子, 需要设置软件编译生成 hex
然后从新编译一下
hex 文件的路径
好了,, 关于为什么要定义这个 USE_STDPERIPH_DRIVER
先查找一下
对了上面的工程很乱, 自己可以多弄几个分组, 放不同功能的文件就行, 那些文件的功能可以百度一下就知道. 没有什么是百度一下解决不了的事情, 如果有那就是两下....., 那样即好看又方便管理
可以看人怎样做的, 然后学习学习. 祝学习愉快
来源: http://www.cnblogs.com/yangfengwu/p/6503759.html