决定用STM8做项目后,今天开始了STM8的学习。开发STM8有两种开发环境,STVD和IAR。因为IAR较之通用,所以选择IAR。
在淘宝上花了6毛钱,买了IAR FOR STM81422和一些资料,个人觉得挺值的,省去了大量时间。
安装完毕后,开始着手DEMO的建立。
必需品:IAR 、STM8S_StdPeriph_Lib。
0,建立一个文件夹,并在之下建立3个文件夹,Library、User、Project。
1,File->New->Workspace
2,创建一个工程:Project->Create New Project...
3,在弹出的对话框中选择Emply Porject,-》OK
4,根据提示保存你的工程,保存到建立的Project文件夹中。
5,从stm8s标准固件库中复制Libraries目录到你的工程目录,把main.c、stm8s_conf.h复制到User文件夹中。
6,IAR的工程配置:右击你的工程->Add->Add Group,在工程中添加两个组FWLib,User。
7,将库中的*.c文件和主程序目录的*.c文件分别添加到Libraries, MyApp;右击相应组->add->add files
8,选择单片机型号:右击你的工程Options->General Options->选择你单片机的型号
9,配置头文件搜索路径:上一步切换到C/C++ Complier->Preprocessor->Additional include directory: ( one per line)
10,选择调试器:切换到Debugger->Driver选择ST-Link->OK
现在开始编译报错
1,右键main.c->Comliper会提示保存workspace,按提示操作,编译中会提示没有定义
Fatal Error[Pe035]: #error directive: "Please select first the target STM8S/A device used in your application (in stm8s.h file)" C:\Documents and Settings\Administrator\桌面\EWSTM8_turial\Libraries\STM8S_StdPeriph_Driver\inc\stm8s.h 65
双击该条提示,自动定位到错误位置,表示没有定义单片机型号,定义上
#define STM8S005//自己用的是STM8S005K6
3,再次执行1,OK没有错误
4,整体编译一遍:右击工程->Make.
在编译过程中有一部分文件会报错,不要担心,这些是STM8S005中没有的资源,将报错的文件删除即可
另外对固件库了解后,可以只添加需要的部分,比如这次使用的是stm8s_gpio.c,那么只添加stm8s_gpio.c就可以了
5,删除不需要的,再编译:OK没有错误,没有警告