您尚未登录。

楼主 # 2021-11-09 09:57:44

Aysi
会员
注册时间: 2019-04-03
已发帖子: 15
积分: 44.5

FreeRTOS移植到F1C100S, 含GCC和keil版本

FreeRTOS移植到F1C100S, 含GCC和keil版本
内含测试例程, 测试通过

按个人修改只需几个地方:
//开定时器
static void prvSetupTimerInterrupt(void)
{
    Timer_Init(TIMER1, 1000000 / configTICK_RATE_HZ, 1);
    request_irq(IRQ_TIMER1, vPreemptiveTick, 0); //register int
    Timer_enable(TIMER1);
}

//修改中断入口函数
_software_interrupt:
    .word vPortYieldProcessor    /*for freerots, if no os, this is software_interrupt */
_irq:
    .word vFreeRTOS_ISR    /*for freertos, if no os, this is irq */

>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

本人移植过程中发现了个问题:

当时参考例程的任务切换是汇编的:
        __asm volatile
        (
            "    bl xTaskIncrementTick    \t\n" \
            "    cmp r0, #0                \t\n" \
            "    beq SkipContextSwitch    \t\n" \
            "    bl vTaskSwitchContext    \t\n" \
            "SkipContextSwitch:            \t\n"
        );
编译通过, 但一运行就卡死

折腾一番后, 最后将上面的汇编译成C代码, 运行成功
(这里看两者意图是一样的, 不明白, 望有高人指点)
                if(xTaskIncrementTick()!=0)
        {
            vTaskSwitchContext();
        }

FreeRTOS-Kernel.zip

离线

#1 2021-11-09 19:57:05

flex-A
会员
注册时间: 2019-08-27
已发帖子: 33
积分: 58.5

Re: FreeRTOS移植到F1C100S, 含GCC和keil版本

好耶,感谢分享。等的就是这个

离线

#2 2021-11-10 14:33:54

mxfh
会员
注册时间: 2021-04-30
已发帖子: 6
积分: 2.5

Re: FreeRTOS移植到F1C100S, 含GCC和keil版本

该评论内容与本帖子无关,鼓励各位坑友积极发言讨论与帖子有关的内容!

离线

  • 不通过:其他

#3 2021-11-10 18:27:29

akinggw
会员
注册时间: 2020-04-02
已发帖子: 23
积分: 7.5

Re: FreeRTOS移植到F1C100S, 含GCC和keil版本

终于有人移植freertos了,看看怎么做的

离线

#4 2021-11-11 09:35:36

tianjjff
会员
注册时间: 2018-12-24
已发帖子: 115
积分: 63

Re: FreeRTOS移植到F1C100S, 含GCC和keil版本

该评论内容与本帖子无关,鼓励各位坑友积极发言讨论与帖子有关的内容!

离线

  • 不通过:其他

#6 2021-11-11 12:30:18

笔走天下
会员
注册时间: 2021-08-13
已发帖子: 60
积分: 4.5

Re: FreeRTOS移植到F1C100S, 含GCC和keil版本

[/quote=笔走天下]赶紧学习下,看看怎么实现的
不是完整的keil工程啊,只有c文件h文件

离线

#7 2021-11-20 01:37:54

wyhreg
会员
注册时间: 2019-11-14
已发帖子: 11
积分: 11

Re: FreeRTOS移植到F1C100S, 含GCC和keil版本

不是完整的工程,建议给出完整程序或参考的地址,方便大家研究。

离线

#8 2021-11-20 11:18:59

zzm24
会员
注册时间: 2018-05-07
已发帖子: 76
积分: 23

Re: FreeRTOS移植到F1C100S, 含GCC和keil版本

我觉得 f1c100s 缺的不是RTOS,而是各种外设裸机的驱动

离线

#9 2021-11-20 13:38:56

435788A
会员
注册时间: 2021-10-27
已发帖子: 9
积分: 35

Re: FreeRTOS移植到F1C100S, 含GCC和keil版本

到目前我找到可以在我的F1C100S板上运行起来的,只有荔枝派群里的xuyao2020-F1C100s_with_Keil_RTX4_emWin5-master
其他的能够烧录,烧录完成后重新上电无反映。

想用到双串口、TF卡、USB读写U盘,新手的我无从着手

离线

#10 2021-11-20 20:39:19

wyhreg
会员
注册时间: 2019-11-14
已发帖子: 11
积分: 11

Re: FreeRTOS移植到F1C100S, 含GCC和keil版本

今天参考F1C100s_with_Keil_RTX4_emWin5的程序,移除了操作系统和GUI,驱动在Xboot的程序里面有一些,要加入I2C和SPI,操作系统看到时用FREERTOS还是ThreadX,ThreadX的全家桶真是好用。

离线

#11 2021-11-29 18:14:45

akinggw
会员
注册时间: 2020-04-02
已发帖子: 23
积分: 7.5

Re: FreeRTOS移植到F1C100S, 含GCC和keil版本

楼主,能看下这两个文件是怎么实现的吗?
timer_f1c100s.h
irq_misc.h

离线

#12 2021-12-02 14:59:35

rim
会员
注册时间: 2021-12-02
已发帖子: 5
积分: 0

Re: FreeRTOS移植到F1C100S, 含GCC和keil版本

学习,这个芯片性能真的可以,STM32系列价格还是比较贵

离线

#13 2021-12-02 17:23:45

wyhreg
会员
注册时间: 2019-11-14
已发帖子: 11
积分: 11

Re: FreeRTOS移植到F1C100S, 含GCC和keil版本

芯片性能比cortex的要好不少,最好的是有内部的DRAM,FALSH的扩展使用SPI总线,PCB设计和生产都容易,就是资料太少,尤其是第三方的RTOS。

离线

#14 2021-12-03 10:26:10

bigbigcong
会员
注册时间: 2021-09-03
已发帖子: 5
积分: 4.5

Re: FreeRTOS移植到F1C100S, 含GCC和keil版本

啊,,居然还能跑FreeRTOS

离线

楼主 #15 2021-12-06 12:30:13

Aysi
会员
注册时间: 2019-04-03
已发帖子: 15
积分: 44.5

Re: FreeRTOS移植到F1C100S, 含GCC和keil版本

很少上线, 不好意思,
有人说想要完整工程, 但我没单独实验工程, 我的工程功能多比较大, 且交叉性强, 单独做工程麻烦,
工程是在 https://whycan.com/p_11825.html USB工程上添加的
移植有什么问题发出来吧!

离线

页脚

工信部备案:粤ICP备20025096号 Powered by FluxBB

感谢为中文互联网持续输出优质内容的各位老铁们。 QQ: 516333132, 微信(wechat): whycan_cn (哇酷网/挖坑网/填坑网) service@whycan.cn