编译工具

关注公众号 jb51net

关闭
cosmic stm8 32k C编译器 v4.3.4 特别版(附破解补丁+安装方法)

cosmic stm8 32k C编译器 v4.3.4 特别版(附破解补丁+安装方法)

热门排行

简介

cosmic stm8 32k C编译器是一款很经典的编译工具,是Cosmic 公司(Cosmic Software Inc.)的Cosmic STM8编译器(Cosmic C compiler)及全套嵌入开发工具,支持STM8系列产品的开发,Cosmic产品包括C 交叉编译器、汇编、连接器、ANSI库、仿真器、硬件调试器和易于使用的集成开发环境(IDEA),Cosmic 公司提供了16K 和32K 代码大小限制的全功能的免费软件,此软件主要是应用于STM8的开发任务,本次带来STM8 COSMIC 4.3.4编译器以及破解Patch,支持所有STM8,亲测可用,需要的朋友快来下载吧!

安装破解STVP 和 COSMIC 编译器

下载后,使用管理员权限安装STVP,一路next,安装成功后

下载“cosmic stm8 32k C编译器”,使用管理员权限安装cxstm8_32k.exe,一路next,安装成功后,打开CXSTM8_32k_patch.exe,选择刚才COSMIC安装文件夹,默认安装的路径:C:\ProgramFiles (x86)\COSMIC\CXSTM8_32K

选择后点击应用,提示成功就说明破解完成,可以愉快的进行开发了

----》有错误的

在WIN10上面,STVP下载调试、运行程序的时候会报错,

错误: ** Connection error (usb://usb): gdi-error[40201]: can't access configuration database

关闭STVP软件,按照安装STVP的文件夹找到STToolset.msi,管理员权限运行安装一下即可解决,亲测有效

默认路径 C:\Program Files (x86)\STMicroelectronics\st_toolset\stvd\dao

常见问题

问题:

当C compiler中的memory models选择long stack(modsl0)并且linker中的start-up file选择crtsi0.sm8的时候,编译是没有问题的,程序最大长度可以到32k;但是C compiler中的memory models选择long stack(modsl)并且linker中的start-up file选择crtsi.sm8的时候,编译出现问题,如下:

#error clnk Debug\kln.lkf:1 symbol f__stext not defined (Debug\stm8_interrupt_vector.o )

The command: "clnk -l"C:\Program Files\COSMIC\CXSTM8\Lib" -o Debug\kln.sm8 -mDebug\kln.map Debug\kln.lkf " has failed, the returned value is: 1

exit code=1.

个人感觉是找不到f__stext,所以说如果要编译大于32k的程序的时候还是不行,请楼猪和各位帮忙解决一下。

STM8系列的性价比还是蛮高的,可惜是没有免费的编译器,我在公司有个硬件狗,据说要1000多dollar,所以阿……,为了普及,靠大家了^_^

解决:

你用的是STVD自动生成的stm8_interrupt_vector.c文件,在使用modsl模式编译时,你须将extern void _stext(); /* startup routine */ 这句修改为extern @near void _stext(); /* startup routine */ 需要增加@near 关键字。请修改后再试。

问题已经解决了,中断文件改为

typedef void @far(*interrupt_handler_t)(void);

struct interrupt_vector

{

unsigned char interrupt_instruction;

interrupt_handler_t interrupt_handler;

};

@near void _stext(); /* startup routine */

大家注意一下,程序大于32k后,要把const数据,main还有中断函数等定位到32k(地址64k)以内,不然程序会跑飞,

而且编译链接的时候也不会报错,我就被黑了一下。

大家还下载了