Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
线程
柿饼_PersimmonUI
persimon m3 sdk 线程启动问题
发布于 2021-05-18 11:30:31 浏览:662
订阅该版
我使用persimon sdk 编写了如下线程 : ```c #include
#include
#include
#include
#include "FileItemComusition_js.h" #include "Kernel_object_pey.h" #include
#define FileInfoThread_PRIORITY 25 #define FileInfoTimeSlicy 10 //ALIGN(RT_ALIGN_SIZE) static char FileInfoThread_stack [1024*10]; static struct rt_thread FileInfoThread_handle; void FileInfo_entry(void *param) { int fd,size; js_char_t buf[4096]; struct Message_x Message_data; while(1) { rt_sem_take(&Sem_waitReadFile,RT_WAITING_FOREVER); fd=open("mnt/sd0/media/data/bus/1/1S.csv",O_RDONLY); if (fd>=0) { size=read(fd,buf,sizeof(buf)); close(fd); rt_kprintf("Read from File is Length:%d, is buf item is :%s\n",size,buf); Message_data.bufptr=buf; Message_data.Msg_Length=size; rt_mq_send(mq,(void*)&Message_data,sizeof (struct Message_x)); rt_thread_mdelay(100); } } } void FileInfoThread_sample(void) { rt_err_t res; rt_thread_init(&FileInfoThread_handle, "FileInfo", FileInfo_entry,RT_NULL, &FileInfoThread_stack[0],sizeof (FileInfoThread_stack), FileInfoThread_PRIORITY,FileInfoTimeSlicy); res=rt_thread_startup(&FileInfoThread_handle); if (res!=RT_EOK) { rt_kprintf("create the FileInfoThread fail \n"); } //return 0; } MSH_CMD_EXPORT (FileInfoThread_sample,FileInfoThread sample); ``` main 函数如下: ```c int main(int argc, char **argv) { easyflash_init(); player_system_init(); Kernel_object_config(); FileInfoThread_sample(); FileItem_Comusition_js_Thread_handle_sample (); return 0; } int Kernel_object_config(void) { rt_err_t res; rt_sem_init(&Sem_waitReadFile,"SemReadFile",1,RT_IPC_FLAG_FIFO); mq=rt_mq_create("mq",Msg_size,Max_msg,RT_IPC_FLAG_FIFO); if (mq==RT_NULL) { rt_kprintf("create the mq failed\n"); return -1; } } ``` 当使用MSH 命令启动FileInfoThread_sample() 时可以正常运行, 当把`FileInfoThread_sample()`; 函数放在main 函数中 在串口终端使用ps 命令可以看到有此线程, 但是 entry 函数中的串口输出语句不能执行
查看更多
2
个回答
默认排序
按发布时间排序
aozima
2021-05-18
调网络不抓包,调I2C等时序不上逻辑分析仪,就像电工不用万用表!多用整理的好的文字,比截图更省流量,还能在整理过程中思考。
可以使用 list_sem 来查看信号量状态,以定位是因为什么原因阻塞住了。 也可以添加更多的日志来定位,如果代码本身没问题,那一般问题是环境和时机的改变造成的。 提醒下:不需要也不能调用ff.h中的接口,虽然没用,但还是建议删除这行。
zhkag
2021-06-05
这家伙很懒,什么也没写!
不能执行是指没有输出?程序能正常运行 还是直接就卡死了,导致后面的输出没有执行?
撰写答案
登录
注册新账号
关注者
0
被浏览
662
关于作者
kingchunhai
这家伙很懒,什么也没写!
提问
20
回答
3
被采纳
1
关注TA
发私信
相关问题
1
【PersimmonUI柿饼学习营】+ A Byte of China + 环境搭建&20W年薪广告
2
【柿饼学习营】+werrysuzhen+20W年薪作业
3
【PersimmonUI柿饼学习营】+ meetwit + 20W年薪广告&lesson01
4
【PersimmonUI柿饼学习营】+ DaZhou + 20W年薪作业+视频有彩蛋
5
【PersimmonUI柿饼学习营】+ DMY+ lesson01 20W年薪广告
6
【PersimmonUI柿饼学习营】+ Bigmagic+20W年薪广告&day01
7
【PersimmonUI柿饼学习营】+ chowguohua+年薪广告
8
【柿饼学习营】+werrysuzhen+脚本及事件学习
9
【PersimmonUI柿饼学习营】+ DaZhou+ 手把手教你做计算器
10
【PersimmonUI柿饼学习营】+ A Byte of China + 2048游戏
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
简单两步配置RTT源码阅读环境 vsc+clangd
2
恩智浦[FRDM-MCXN947]初探 之 ADC与DAC
3
LVGL使用字库IC芯片显示中文
4
基于STM32H750和Rt-Thread的CANFD通信实现的记录(一)
5
freemodbus主机在freertos的适配,参考rtthread例程
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
UART
WIZnet_W5500
ota在线升级
PWM
cubemx
freemodbus
flash
packages_软件包
BSP
潘多拉开发板_Pandora
定时器
ADC
GD32
flashDB
socket
中断
编译报错
Debug
SFUD
msh
rt_mq_消息队列_msg_queue
keil_MDK
ulog
MicroPython
C++_cpp
本月问答贡献
出出啊
1517
个答案
342
次被采纳
小小李sunny
1443
个答案
289
次被采纳
张世争
805
个答案
174
次被采纳
crystal266
547
个答案
161
次被采纳
whj467467222
1222
个答案
148
次被采纳
本月文章贡献
出出啊
1
篇文章
4
次点赞
小小李sunny
1
篇文章
1
次点赞
张世争
1
篇文章
1
次点赞
crystal266
2
篇文章
2
次点赞
whj467467222
2
篇文章
1
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部