lujun723
lujun723

注册于 8 years ago

回答
0
文章
0
关注者
0

主要槽点还是在scons,接触过linux的话,不是应该很习惯不用ide了吗?

How to run it?
register---->fork---->WebIDE---->进入WebIDE,然后根据熊大的readme即可

adc.c内容如下,这里是做强转的那个线程:


#include
#include "adc.h"

ALIGN(RT_ALIGN_SIZE)
static char adc_thread_stack[1024];
static struct rt_thread adc_thread;

static void adc_thread_entry(void *parameter)
{
rt_time_t next_delay;
uint16_t press_val_data=0;
float press_val_in_mmHg=0.0;

while(1)
{

press_val_data=(uint16_t)(press_val_in_mmHg*10);

next_delay=100;//10ms update
rt_thread_delay(next_delay);
}
}

int cmb_hw_adc_init(void)
{
rt_thread_init(&adc_thread,
"adc",
adc_thread_entry,
RT_NULL,
&adc_thread_stack[0],
sizeof(adc_thread_stack),16,20);
rt_thread_startup(&adc_thread);

return 0;
}


相当于platform的文件内容如下:

#include
#include "stm32f4xx.h"
#include "stdio.h"


/* Global variables -----------------------------------------------*/

extern int cmb_hw_adc_init(void);
extern int cmb_hw_wifi_module_init(void);

void cmb_platform_init(void)
{
cmb_hw_wifi_module_init();//5
cmb_hw_adc_init();//16

}


空线程文件内容如下:

#include
#include "wifi_module.h"
#include


ALIGN(RT_ALIGN_SIZE)
static char wifi_module_stack[1024];
struct rt_thread wifi_module_thread;
static void wifi_module_thread_entry(void *param)
{

while(1)
{

rt_thread_delay(100);
}
}

int cmb_hw_wifi_module_init(void)
{

rt_thread_init(&wifi_module_thread,"wifi_module",
wifi_module_thread_entry,RT_NULL,
&wifi_module_stack[0],
sizeof(wifi_module_stack),5,10);
rt_thread_startup(&wifi_module_thread);

return 0;
}

把浮点运算打开了,工程精简到2个线程,一个空线程(只有rt_thread_delay),一个线程里面做了一个浮点数强转成uint16_t类型,运行就hard fault,
关掉任意一个线程,不死
去掉强转那条语句,不死
关闭工程的浮点运算,不死

程序一共3个文件,如下
下载附件[test_files.zip]

RTT是一个比较开放的心态,申请不申请不用太纠结,当然如果你的产品够牛x,希望你能够在产品中加入RTT的logo,或者说明书中声明一下用了RTT

我试过用DMA,然后写一个回调函数,当发送完成时切换485方向,但是485貌似反应没有这么快,会导致收发不完全,好像DMA完成标志置位时,串口并没有发送完;后来又用串口发送完成标志,也没成功;
结论是,以后不会再用485了。。。

哈哈,来吧,小可爱~~~快到碗里来!

自力更生,是大学生首要学习的一课。当然,你也可以用你所学来赚钱

突然想到一句话:“嵌入式系统哪家强,中国上海**翔”,挺顺口的有木有 [s:154] [s:154] [s:154]

哈哈哈,歪楼的来了。。。

1. 现在来看,realtouch是个不错的项目,比现在的realboard好,因为realtouch后续的例程比较到位,同时可以很明显地感觉到这俩项目投入的精力不是一个数量级的。。。
2. 现在我们要的,不是一个简单的板子,而是有一些比较有意思的甚至觉得自己做不到的应用案例,纯例程往往和实际使用还是有一定的差距,一些小规模的综合实例可能更有借鉴意义,也可以让初学者获得更高的技术成就感,从而进入更深一层的研究。
3. 个人觉得arduino和RTT本身就存在一定的冲突,用arduino的人估计不会考虑线程和系统的一些问题,他们只是要一个简单就能干活的硬件而已。
4. 我想作为RTT官方的话,肯定看得更全面,也希望让更多的人能够用起来RTT,所以才有了ART这个其实很吊的产品。
5. RTT是一个实时操作系统,主要应用个人觉得是代替ucos等系统,而不是android,所以,我甚至觉得官方在RTGUI上面的投入稍微有点多,量入为出,我觉得用RTT的人,真正用GUI的应该不是太多,即便我们的一些功能比ucGUI牛X很多。
6. 那么关于RTT官方的板子,我觉得还是要找到真正的需求切入点,甚至可以做一些市调,很有必要:比如主芯片的选择,选择NXP注定不会太火,就像Ti的代理商告诉我们,Ti已经基本放弃M3核了一样,关于各芯片厂家的博弈,希望不要影响到RTT,反正我选择,还是ST。另外,宣传和文案要有特点,今天看了一个“3000月薪与30000月薪文案的区别!!!”的段子,确实觉得这些也非常重要。
最后,我和我的团队现在开始在公司推广RTT,我们几个用着感觉很爽,真心希望RTT能够尽快推出一个专业的,价格不超过300元的,可扩展的(自由组合,另外收费),平台式的(各种独立的开源项目),拥有友好文档的(用5~10分钟就能让人完全明白的,而不是手把手地贴图跟我做),外观漂亮的(比如丝印层颜色比较有特点),系统应用广泛的(别用TI或者飞思的了。。。),这么一个新的ART产品(RTT板子的命名可以借鉴大公司,比如RT-mini,RT-base,RT-pro什么的),啰嗦很多,不好意思

发布
问题