打印
[华山论剑]

国产MCU专栏 第8期: 用KF32 替代STM32的实践过程、问题及资料

[复制链接]
3046|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
  • 国产MCU专栏 第8期:用KF32 替代STM32的实践过程、问题探讨、独家资料

*阅读说明:以下仅摘录帖子内容展示,详细过程及资料等请戳原链接查看

ChipON基于 KungFu32内核架构的32位MCU,分为KF32F工业级通用MCU,KF32LS单电源型通用MCU,KF32L低功耗型通用MCU。此外,KF32A是为汽车电子领域用户重磅打造的32位车规级MCU系列产品,聚焦汽车整车芯片应用市场解决方案。
用KF32 替代STM32的学习过程、问题探讨记录:

问题描述:使用官方的KF32F350_EVB开发板,编译其GPIO例程
(KF32Fxxx_EVL_Examples\GPIO\GPIO_Output)失败。

手上有一块官网的KF32F350的开发板,跟着例程成功编译出hex文件了。
但是点击那个下载的按钮,出现下列报错。

公司打算用这款单片机代替stm32。看到CCPx_Compare_Mode这个例程,有点疑惑向大家请教一下。

我想把通用定时器,开四个通道的比较中断。。我看例程里面的写法,是不能开四个通道的中断吗?




1、本次工程抄袭安富莱的代码风格,如果原先对于安富莱代码比较熟悉的朋友使用起来会比较方便。
2、由于精力有限,目前只打算做基础的外设的移植(USART,IIC,SPI之类的)。
3、由于能力有限,例程移植过程中有认识不到位或者错误的地方,欢迎大家批评指正。

问题描述:串口0~7都配置了,别的都通了,这两个没通。


  • KF32 常用资料汇总:
包含如下资料:
ChipON KF32 C语言开发手册V1.1
ChipON KF32 汇编语言开发手册V1.0
KF32A系列产品数据
KF32F系列产品数据
KF32LS系列产品数据
KF32L系列产品数据
KungFu32 Programmer用户使用手册
ChipON IDE 用户使用手册V1.1
KF32F系列用户手册V2.3
KF32F系列32位MCU标准外设底层函数库
KF32LS系列32位MCU标准外设底层函数库
KF32A系列32位MCU标准外设底层函数库
KF32L系列32位MCU标准外设底层函数库
KungFu32的Bootloader开发资源包
KF32L系列用户手册V2.3
KF32F130数据手册V2.4
KF32F330数据手册V2.4
KF32F341数据手册V2.4
KF32F350数据手册V2.7
KF32LS500数据手册V2.4











  • KungFu内核了解一下?
KungFu内核是芯旺微电子自主研发的基于精简指令集的CPU内核,拥有独立知识产权和完善的工具链系统,包含8位处理器内核KungFu8、32位通用处理器内核KungFu32、数字信号控制器内核KungFu32D、以及多核系统KungFu32DA。

KungFu8
KungFu8特点
* KF8系列与当前的8位单片机相比,KF8通过结构的改进,提高了代码密度并简化程序设计
* 提供兼容当前流行的Eclipse开发环境,利于用户快速的开发需求
* 提供丰富的数字外设和模拟外设,众多细分的型号便于用户选择最适合需求的器件

结构
* 具有典型的RISC架构,程序存储器和数据存储器分开
* 具有8个8位寄存器组成的寄存器组堆
* SFR无需分组,简化程序设计

16bit指令编码
* 支持寄存器-寄存器操作指令
* 支持任意寄存器和特殊寄存器,数据RAM之间操作指令(寄存器--之间寻址)
* 指令支持8K Byte范围内之间跳转,函数调用
* 大部分指令为单机器周期执行

软件开发
* 常用的便于**的汇编指令助记符(如MOV,INC,DEC等)
* 兼容ANSI C99的通用C语法
* 符合Eclipse的开发环境,便于用户熟悉和后续升级

实现
* 丰富而独特的模拟和数字外设,如带有内部参考源的ADC,多个外部中断
* 高性能的单时钟周期结构


KungFu32
KungFu 32 内核
* 自主KungFu32内核,3级流水线,基于KF32/ KF32D指令集,支持16/32位混合指令
* 支持程序CACHE
* 支持最高256级中断优先级中断
* 支持两线在线调试和编程
* 支持ISP模式串口编程,支持IAP模式应用编程
* 支持存储器加密访问

KF32指令集
* KF32支持16/32位混合指令,KF32指令集共130条指令
* 指令含传送指令、存储指令、数学指令、逻辑指令、位操作指令、循环/移位指令、比较/跳过指令、程序流指令、堆栈/出栈指令、控制指令
* 支持bit位操作指令,支持间接寻址位操作
* 支持32×32单周期乘法;支持32÷32多周期除法

KF32D特色指令
* KF32D 是KungFung32 系列DSP扩展指令集,增加了浮点指令、音频像素处理指令、乘加指令、64位累加指令、数**算指令等指令功能,支持饱和和舍入操作
* KF32D 支持32个通用寄存器,其中16个通用寄存器可以组合成8个64位累加器(ACC)使用

MAC类指令
* 支持MAC类指令,共47条
* 支持双乘加/减累加、支持双乘加/减操作、支持乘累加/减操作、支持累加运算操作
* 支持累加器存储/传送操作
* 支持饱和和舍入操作

SIMD类指令
* 支持SIMD类指令,主要针对音频/像素处理
* SIMD类指令支持饱和和舍入操作
* 支持硬件DO循环指令

FPU类指令
* 浮点指令共56条,含存储指令、比较/跳过指令、堆栈指令、格式转换指令、数学指令
* 支持单精度和半精度浮点运算
* 支持32个独立的浮点通用寄存器

MATH类指令
* 支持三角函数类指令
* 支持指数/对数运算


使用特权

评论回复
沙发
onlycook| | 2022-6-8 10:51 | 只看该作者
这资料整合的挺好的,希望以后能一直这样

使用特权

评论回复
板凳
daichaodai| | 2022-6-9 08:32 | 只看该作者
独家资料值得收藏啊

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

137

主题

675

帖子

23

粉丝