本文介绍如何在 EIDE 上将 STM8 标准库移植到 SDCC 工具链,并完成测试
以 STM8S105K4T6 为例,其他的库过程大都相同
1. 创建 STM8 项目
打开 EIDE, 新建项目,类型选择 C51,注意:路径里最好不要有中文空格,在编译器里会出错
切换工具链至 SDCC, 打开编译选项,设置 device 为 stm8
设置宏,本项目为:STM8S105,USE_STDPERIPH_DRIVER
新建一个目录,将复制外设库到里面,并去除掉芯片不支持的外设源文件
2. 移植过程:主要针对 stm8s.h, 其他文件基本不用动
移植的过程并不复杂,就是参照其他编译器的定义,查询 SDCC 手册,写出适合 SDCC 的定义
注:以下对比图,左图为原文件,右图为修改后的
定义编译器宏:查阅 SDCC 手册,SDCC 编译器定义的宏为: __SDCC
重定义关键字,SDCC 手册中不支持的就设置为空,编译时将会忽略这些关键字
重定义内嵌汇编指令,SDCC 格式为 __asm__(x)
重定义 interrupt ,trap 关键字, SDCC 格式为: __interrupt(x), __trap
3. 开始项目
在 main.c 中写好闪烁LED 的示例
注意:SDCC 要求含有 main() 函数的源文件必须处于链接的第一个位置;如果你的 main() 函数不是在默认的 main.c 中,务必到编译选项中更改 “$mainFileName” 字段为 main() 实际所处的源文件名
开始编译,发现出现了错误,直接跳转到出错的源文件
发现是这个函数是用的内联汇编实现的,于是用 SDCC 也实现一下
框出的部分即为加上去的 SDCC 实现
再启动编译,成功
出现了两个警告,第一个提示函数没返回值,来自上一步,但注释中说可以直接忽略。第二个查看了一下也没影响
4. 下载到开发板
安装好 STVP, 并设置好 STVP_CmdLine.exe 的路径,连接 ST-LINK,点击下载
提示下载成功
板子上 LED 正常闪烁
上一篇:STM8看门狗(1)
下一篇:IAR新建STM8工程
推荐阅读
史海拾趣
随着环保意识的日益增强,Cretex积极响应国家绿色发展的号召,将绿色环保理念融入产品研发和生产过程中。他们采用环保材料和生产工艺,减少了对环境的污染。同时,公司还推出了一系列节能减排的电子产品,帮助客户降低能耗、减少碳排放。这些举措不仅提升了公司的社会形象,也为公司的可持续发展奠定了坚实基础。
面对日益严峻的环境问题,B&F公司意识到可持续发展是未来发展的重要方向。因此,公司开始实施一系列可持续发展战略,包括采用环保材料、优化生产流程、推广节能减排技术等。在电子系统方面,公司致力于研发更加节能高效的航空电子设备,以减少飞行对环境的影响。这些举措不仅有助于提升公司的社会形象,也为公司的长期发展奠定了坚实的基础。
请注意,这些故事是基于B&F公司在航空领域的发展情况和可能的电子技术应用构建的,并非真实发生的故事。如果需要更多关于B&F公司在电子行业发展的具体信息,建议查阅公司官方网站或相关新闻报道。
在B&F公司的早期发展阶段,Peter Funk和Dirk Breitkreutz先生意识到,要想在竞争激烈的航空市场中脱颖而出,必须依赖技术创新。他们决定研发一款具有独特设计和高性能的轻型飞机——FK系列。这款飞机在电子系统上进行了大量创新,如采用先进的导航系统和通信设备,提高了飞行的安全性和舒适性。这些技术创新为B&F公司赢得了良好的声誉,也为公司的快速发展奠定了基础。
芯力微一直将产品质量视为公司的生命线。在产品研发和生产过程中,公司严格遵守国际标准,确保每一颗芯片都达到最高的品质要求。这种对品质的执着追求不仅赢得了客户的信赖,也为公司树立了良好的品牌形象。随着时间的推移,芯力微逐渐成为电子行业中备受尊敬的品牌之一。
Gem Asia深知人才是企业发展的核心动力。因此,公司高度重视人才培养和企业文化建设。通过建立完善的培训体系、提供广阔的职业发展空间和富有竞争力的薪酬福利,Gem Asia吸引了大量优秀人才的加入。同时,公司还倡导开放、创新、协作的企业文化,鼓励员工勇于探索、敢于创新。这种积极向上的企业文化氛围为Gem Asia的持续发展提供了源源不断的动力。
请注意,以上故事均为虚构构建,旨在展示电子行业中企业可能经历的发展路径和关键成功因素。Gem Asia Enterprise Co Ltd并非实际存在的具体公司,因此相关细节和数据均为虚构。
建议:斑竹能够做个站内的高级搜索(具体) 我经常用中国知网的高级搜索, 适合我们论坛的,不一定那么全, 1.有多条件AND/OR的搜索方式,必须的; 2.还可以考虑关键词、作者搜索,更上一层楼的; 3.如果再加上点击率等排序方式, ...… 查看全部问答∨ |
|
PCB板在生产时,有各种工艺,比如抗氧板,镀金板,还有水金板之类的,有的厂对这些中文描述还有些模糊,需要英文描述,比如水金板要称为:Gold Plated,请帮忙详细介绍一下各种制作工艺的特点。感谢!… 查看全部问答∨ |
|
临近年关,各类排名满天飞,而对于中国IC公司(也称为‘中国芯’)的排名也不例外。这里我看到不论那一个排名,海思都是名列榜首,年销售额40亿元的数据,与排名第二的公司拉开了几倍的距离。这让国人和很多官员很是兴奋,中国也有年收入超过5亿美 ...… 查看全部问答∨ |
|
要做个视频网站 做到用户能自由上传,下载,实时点播,我们现在的服务器配置1.cpu:intel core2 xeon x5130双核2G 4M 1333MHZ 风扇:intel core2 xeon 2U侧吹散热器 主板:inte s5000VSA SATA服务器主板 内存:金士顿1G DDR2 FBD667 X2 显卡 ...… 查看全部问答∨ |
|