【RTOS】+ 东软载波 + RT-Thread + UCloud - 宠物定位装置
本帖最后由 nvjwiciw659 于 2020-5-14 22:14 编辑来迟了来迟了来迟了,我虽是第一批申请的,并且很早就收到了板子,可是之前申请的是RT-Thread的麻雀,小而美的麻雀确实让我感到惊艳,但是把玩一番之后发现,麻雀的特点在于wifi蓝牙双模以及多媒体功能,它的特点在我的项目中却基本用不上,害,因为申请时候比较激动,所以没有仔细选择,但又非常舍不得这个“小鸟”,不过在群里看到很多没有申请到麻雀的参赛选手感到遗憾,我就沟通小改改,问是否能更换板子,把麻雀留给更需要它的人,所以又选择了这款东软载波 ES32F0654 PDS开发板,支持国产芯片,国产UP!!!!
先拆个箱吧!
带了个烧录器,不错,但感觉有点大,按理说去除了烧录器体积会减小一点,不过不影响他的美!
本帖最后由 nvjwiciw659 于 2020-5-14 22:12 编辑
然后我们开始做准备工作咯!首先在设计大赛报名页下载RTT程序
不要积分等于大赚
接着我要使用生活小妙招了,真奔北哥(我的亲师兄)
跟着北哥教程一顿操作,此处应该手动@一路向北lm
结束准备,开始点灯
打开比赛页下载的工程
根据板子丝印可知LED为PC8,PC9,查看定义
简单增加差时点灯任务
#define LED0_PIN 39
#define LED1_PIN 40
static rt_thread_t led0_thread = RT_NULL;
static rt_thread_t led1_thread = RT_NULL;
/********************************************************************************************************
* led_init(void)
********************************************************************************************************/
void led_init(void)
{
rt_pin_mode(LED1_PIN, PIN_MODE_OUTPUT);
rt_pin_mode(LED0_PIN, PIN_MODE_OUTPUT);
}
/********************************************************************************************************
* led0_thread_entry(void)LED0任务初始化
********************************************************************************************************/
static void led0_thread_entry(void* parameter)
{
while (1)
{
rt_pin_write(LED0_PIN, PIN_HIGH);
rt_thread_delay(500); /* 延时500个tick */
rt_kprintf("led0_thread running,LED0_ON\r\n");
rt_pin_write(LED0_PIN, PIN_LOW);
rt_thread_delay(500); /* 延时500个tick */
rt_kprintf("led0_thread running,LED0_OFF\r\n");
}
}
/********************************************************************************************************
* led1_thread_entry(void)LED1任务初始化
********************************************************************************************************/
static void led1_thread_entry(void* parameter)
{
while (1)
{
rt_pin_write(LED1_PIN, PIN_HIGH);
rt_thread_delay(1000); /* 延时1000个tick */
rt_kprintf("led1_thread running,LED1_ON\r\n");
rt_pin_write(LED1_PIN, PIN_LOW);
rt_thread_delay(1000); /* 延时1000个tick */
rt_kprintf("led1_thread running,LED1_OFF\r\n");
}
}
/********************************************************************************************************
* led0_task(void)LED0任务
********************************************************************************************************/
void led0_task(void)
{
led0_thread = /* 线程控制块指针 */
rt_thread_create( "led0", /* 线程名字 */
led0_thread_entry, /* 线程入口函数 */
RT_NULL, /* 线程入口函数参数 */
512, /* 线程栈大小 */
2, /* 线程的优先级 */
20); /* 线程时间片 */
/* 启动线程,开启调度 */
if (led0_thread != RT_NULL)
rt_thread_startup(led0_thread);
}
/********************************************************************************************************
* led1_task(void)LED1任务
********************************************************************************************************/
void led1_task(void)
{
led1_thread = /* 线程控制块指针 */
rt_thread_create( "led1", /* 线程名字 */
led1_thread_entry, /* 线程入口函数 */
RT_NULL, /* 线程入口函数参数 */
512, /* 线程栈大小 */
3, /* 线程的优先级 */
20); /* 线程时间片 */
/* 启动线程,开启调度 */
if (led1_thread != RT_NULL)
rt_thread_startup(led1_thread);
}
int main(void)
{
led_init();
led0_task();
led1_task();
while (1)
{
}
}烧录
舒服了,之后的方案思路以及实现过程持续更新,敬请大家期待
感谢分享,期待您完成作品~
如果使用过程中遇到问题,您可以电话联系板子厂家的客服,或者我们帮您询问一下厂家
小喇叭提醒您:
现在起到6月底,在21ic提交作品(记得把方案文档,作为附件上传),每个人都可以兑换3次礼物。
最晚7月5号以前提交作品哦
页:
[1]