历史上的今天
今天是:2024年12月24日(星期二)
2019年12月24日 | stm8开发环境配置及测试
2019-12-24 来源:eefocus
需要准备的软件,硬件,IAR for stm8 (EWSTM8)、stm8s标准固件库、ST-LINK、STM8s003f3核心板
安装IAR(其中包括st-link的驱动),
到这个网址下载stm8s标准固件库(STSW-STM8069),http://www.st.com/web/en/catalog/tools/PF258009
使用IAR新建一个工程,具体步骤如下:
1,File->New->Workspace
2,创建一个工程:Project->Create New Project...
3,在弹出的对话框中选择C,-》OK
4,根据提示保存你的工程
5,从stm8s标准固件库中复制Libraries目录到你的工程目录,复制STM8S_StdPeriph_Lib_V2.1.0ProjectSTM8S_StdPeriph_ExamplesGPIO到你的工程目录
6,IAR的工程配置:在工程中添加两个组Libraries,MyApp。右击你的工程->Add->Add Group
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 SettingsAdministrator桌面EWSTM8_turialLibrariesSTM8S_StdPeriph_Driverincstm8s.h 65
双击该条提示,自动定位到错误位置,表示没有定义单片机型号,定义上
#define STM8S003F3
2,再次执行1,这次的提示变为
Error[Pe020]: identifier "GPIOH" is undefined C:Documents and SettingsAdministrator桌面EWSTM8_turialGPIOGPIO_Togglemain.c 54
双击该提示,定位到错误位置,向上找到 #define LED_GPIO_PORT (GPIOH)
将GPIOH改为GPIOD(STM8S003F3没有GPIOH这个IO)
3,再次执行1,OK没有错误
4,整体编译一遍:右击工程->Make.
在编译过程中有一部分文件会报错,不要担心,这些是STM8S003F3中没有的资源,将报错的文件删除即可
另外对固件库了解后,可以只添加需要的部分,比如这次使用的是stm8s_gpio.c,那么只添加stm8s_gpio.c就可以了
5,删除不需要的,再编译:OK没有错误,没有警告
下载并调试,
1,将STM8核心板通过SWIM与ST-Link连接起来,注意线序
2,将ST-Link连接到电脑,(在设备管理器中usb总线中会看到ST-link的相关信息)
3,给stm8核心板加电
4,点击IAR的Download and debug,点击Go。核心板上的灯会闪烁
上一篇:STM8 ROP编程
下一篇:关于stm8定时器2的中断
史海拾趣
|
我在SPI(C语言)上有计算出一个字节,DSP(汇编)上计算出4个字节,然后DSP上的4个字节要一个一个的发送到SPI上进行比较.如果发送的第一个字节就与SPI上的字节相同,就OK.不同的话就继续发下一个字节. 现在我在SPI上有一个接收的函数A()返回一个值, 现在 ...… 查看全部问答> |
|
学习Windows内核驱动,须要硬件吗?(穷学生该如何解决呢?) 自己正在上学,自认为编程基础还不错,想学习Windows内核驱动开发。 但是,现在只跟着书学了一点。由于没有具体硬件,就没法执行书中的例子。 是不是,该买硬件了,买什么硬件呢(必须要便宜的)? 还是,不用硬件就可以学内核驱动开发呢? 现 ...… 查看全部问答> |
|
STM32F103RC WWDG不复位 : 用的IAR的例程, /* WWDG clock counter = (PCLK1/4096)/8 = 244 Hz (~4 ms) */ WWDG_SetPrescaler(WWDG_Prescaler_8); /* Set W ...… 查看全部问答> |
|
从D触发器的角度说明建立和保持时间. 上图是用与非门实现的D触发器的逻辑结构图,CP是时钟信号输入端,S和R分别是置位和清零信号,低有效; D是信号输入端,Q信号输出端; 这里先说一下D触发器实现的原理:(假设S和R信号均为高,不进行置位 ...… 查看全部问答> |
|
我在做一个交流电流检测,输出直流电平或者电流的,我的产品工作电流不大,才几百mA,本来霍尔电流传感器可以用的,但是太贵,一个都得好几十块钱,后来找到ACS712这种集成在芯片内的传感IC,但是这款工作电流最小5A,不然噪声大了,我想找类似产品 ...… 查看全部问答> |
|
1,spwm波通过msp430f149查表法产生。 2,正弦波频率50hz,spwm波频率30khz左右。 3,桥和滤波应该都没为问题,因为通过了一个专门逆变芯片的验证。 4,上下的波对称。 下面是图片: 问题是:下面的波网上平移了。问各位大大,什么愿意可能导 ...… 查看全部问答> |
|
STM32F429i Discovery还有一个陀螺仪,如果不能把它也搞起来,那有点太浪费STM的感情了。 好,那么本辑内容我们就来玩玩陀螺仪。 准备工程,就使用示例中的MEMS_Example 通过学习代码,了解到其中这个函数: static void Demo_MEMS(void) {  ...… 查看全部问答> |




