完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我将发烧友战舰板的FreeRTOS例程【任务的动态创建与删除】移植到C8T6上,程序可以跑,但阻塞时间不对,即串口打印的周期与战舰板差别很大。我设置阻塞时间为vTaskDelay(1000),结果我大概需要等10s才打印。请问大伙知道如何解决吗?
|
|
相关推荐
14个回答
|
|
解决了,,在论坛发了几次疑问,每次最后都是自己找到答案。自问自答,有点可笑
不多说了,说下怎么解决的问题 由于FreeRTOS系统的阻塞时间不对,所以最先可以考虑系统的晶振,延时函数啥的有没有错,经过耐心地比对发现没有错误 最后我想到可能是启动文件的问题,看了下启动文件,找到了答案... 把注释掉的内容加进去后,一切就变得正常了... 原因是 寄存器版本代码,因为没有用到SystemInit函数,所以注释掉以下代码为防止报错! 库函数版本代码,建议加上这里(外部必须实现SystemInit函数),以初始化stm32时钟等 |
|
|
|
|
|
老铁只要内部晶振吧??
|
|
|
|
不太明白你的意思。我用的是网上买的C8T6最小系统板带外部晶振的
|
|
|
|
传工程
|
|
|
|
|
|
|
|
外部晶振没有起振,把8M的晶振两端电容摘掉试试
|
|
|
|
好的,谢谢。今晚我回去试试
|
|
|
|
应该可以排除外部晶振的问题吧了。我换了另外一块最小系统板,依然一样的结果。应该就是软件的问题了,,但我不知道怎么解决
|
|
|
|
谢谢分享 可以尝试
|
|
|
|
你工程下载 了是最新的吗??
|
|
|
|
能否说一下怎么从战舰版程序移植到C8T6的工程的,我移植了之后,提示 :
Rebuild target 'FreeRTOS' compiling main.c... compiling stm32f10x_it.c... compiling system_stm32f10x.c... compiling led.c... compiling delay.c... compiling sys.c... compiling usart.c... compiling core_cm3.c... assembling startup_stm32f10x_md.s... compiling misc.c... compiling stm32f10x_gpio.c... compiling stm32f10x_rcc.c... compiling stm32f10x_usart.c... compiling croutine.c... compiling event_groups.c... compiling list.c... compiling queue.c... compiling tasks.c... compiling timers.c... compiling port.c... compiling heap_4.c... linking... ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching startup_stm32f10x_md.o(STACK). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching tasks.o(.bss). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching startup_stm32f10x_md.o(HEAP). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching usart.o(.bss). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching libspace.o(.bss). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching queue.o(.bss). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching tasks.o(.data). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching timers.o(.bss). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching heap_4.o(.data). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching system_stm32f10x.o(.data). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching stm32f10x_rcc.o(.data). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching timers.o(.data). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching main.o(.data). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching port.o(.data). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching delay.o(.data). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching usart.o(.data). ..OBJLED.axf: Error: L6406E: No space in execution regions with .ANY selector matching usart.o(.data). ..OBJLED.axf: Error: L6407E: Sections of aggregate size 0xb28 bytes could not fit into .ANY selector(s). Not enough information to list image symbols. Not enough information to list the image map. Finished: 2 information, 0 warning and 18 error messages. "..OBJLED.axf" - 18 Error(s), 0 Warning(s). Target not created. Build Time Elapsed: 00:00:38 醉了。。。 |
|
|
|
目测你应该是芯片或者堆栈大小没有修改
|
|
|
|
还真是,谢谢,已经改了。。
|
|
|
|
只有小组成员才能发言,加入小组>>
772 浏览 0 评论
1148 浏览 1 评论
2527 浏览 5 评论
2858 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2709 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1065浏览 3评论
190浏览 2评论
453浏览 2评论
366浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
453浏览 1评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-19 23:49 , Processed in 1.244151 second(s), Total 105, Slave 85 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号