打印

RTThread+物体侵入检测报警系统(下位机部分)

[复制链接]
2405|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
guangods|  楼主 | 2020-5-11 20:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 guangods 于 2020-7-3 12:44 编辑

     在四月底时,在RTT官网上看到有活动,也许是自己也正在用RTT做项目,也没多想就报名了。起初也不是奔的开发板去的,只是用自己项目的PCB想实现类似于雷达侵入检测报警的功能,算是一种技术的累积吧!后来才发现,原来雅特力的开发板与自己所用的STM32的核是一样,自此就产生了,是否能同样移植到雅特力的开发板上呢,在五一节后,向21IC版主说了自己的想法,很快就是同意,在此说声“谢谢!"     自己的项目也是第一次用RTT,虽说硬件设计已经完成,电路还要面临调试,RTT虽说能跑起来,但至少官方的编程手册,还只是看了几个部分,心里也没有太多底气。版主鼓励再三,最终打消了退赛或不要开发板的想法!一天自己打算抽一到两个小时,搞下雅特力的开发板!其间会夹杂一些遇到的问题及与STM32L4项目的一些联系!
     开篇先说下吧,今天刚发出开发板,算了下时间到7月5日前,要实现提方案时所列的功能还是挺紧张的;方案包括平时项目所涉及到的几乎所有模块,硬件有些是成熟的方案,也有些是新开发的,软件全新!只能说做到哪里算哪里了,但一定会认真对待每一次的发帖!
     在此,再次感谢,版主及RTT举报办次活动!也希望以后多一些这样的活动!非常支持,即学到知识,又开拓视野,还能实战项目,技术累积!
后记:
一个多月了,只是写了些分块的驱动程序,及顺了遍RTT编程手册。实在是没有时间全部弄完计划里的功能,只用雅特力的板实现了部分功能,眼见就要提交作品了,跟举办方沟通了下,只能是以后再慢慢补全了!只上传部分实现的功能了。

物体侵入检测报警系统.pdf

361.07 KB

使用特权

评论回复

相关帖子

沙发
pangkitty| | 2020-5-12 10:37 | 只看该作者
加油加油~持续关注中!

使用特权

评论回复
板凳
guangods|  楼主 | 2020-5-13 22:08 | 只看该作者

RE: RTOS+RTT+雅特力开发板

今晚只做了一点点的工作,再次熟悉了下ENV下脚本编写与配置,没有加上想加的设备,但RTT已经跑起来了!上个图吧!还不太会用21IC的编辑器,图片放大不了,放到附件一张。会陆续写驱动,加设备。

微信图片_20200513220301.jpg (179.24 KB )

微信图片_20200513220301.jpg

微信图片_20200513220301.jpg (179.24 KB )

微信图片_20200513220301.jpg

使用特权

评论回复
地板
21ic小喇叭| | 2020-5-14 15:27 | 只看该作者
感谢您分享帖子,送您1000家园币

我们的工作人员也会联系您,为您寄出小礼物

大大加油,继续更新,帖子完成还有奖励哦!

使用特权

评论回复
5
guangods|  楼主 | 2020-5-15 21:46 | 只看该作者
21ic小喇叭 发表于 2020-5-14 15:27
感谢您分享帖子,送您1000家园币

我们的工作人员也会联系您,为您寄出小礼物

谢谢!

使用特权

评论回复
6
guangods|  楼主 | 2020-5-17 14:41 | 只看该作者
接上帖吧!完成了添加MP3模块的驱动程序,完成了测试MP3的命令!开始时是遇到在STM32L431下LPUART1,open串口出现问题,还是太粗心了,竟然没有看底层串口初始化,同时也变相说明,虽说RTT使用起来很方便,但遇到问题时,还是要看明白底层的代码的。
另外,移植到雅特力板子时,便顺利了很多,但也发现些问题
1、雅特力只能写了三个串口的底层代码。如下图:


不够用的小伙伴,只能是自己添加了。
2、调用rt_thread_delay()时,速度要比STM32下慢不少,大体看了下应该是时钟配置的原因,还在具体研究中,期待有更多收获!如果大家遇到相似的问题,也可以留言。

3、添加的MP3设备,其实就是一个串口,按命令发送指令即可。借用了开发板的USER_KEY,这个KEY触发时是高电平的,大家写程序时要注意!
实现的思路时,按一下按键,发送播放下一首的指令!同时,按下按键时指示灯亮,松开时,指示灯灭!附代码。
#include <rtthread.h>
#include <rtdevice.h>
#include "board.h"
#include "drv_gpio.h"
#include "app_uart.h"

/* defined the LED2 pin: PD13 */
#define LED2_PIN    GET_PIN(D, 13)
/* defined the LED3 pin: PD14 */
#define LED3_PIN    GET_PIN(D, 14)
/* defined the LED4 pin: PD15 */
#define LED4_PIN    GET_PIN(D, 15)
#define TEST_KEY    GET_PIN(A,0)


extern void Spk_SendCMD(unsigned char CMD, unsigned char feedback, unsigned short dat);

int main(void)
{
//    uint32_t Speed = 50;
    int count = 1;    /* set LED0 pin mode to output */

    /* set LED2 pin mode to output */
    rt_pin_mode(LED2_PIN, PIN_MODE_OUTPUT);
    /* set LED3 pin mode to output */
    rt_pin_mode(LED3_PIN, PIN_MODE_OUTPUT);
    /* set LED4 pin mode to output */
    rt_pin_mode(LED4_PIN, PIN_MODE_OUTPUT);
    rt_pin_mode(TEST_KEY,PIN_MODE_INPUT);
    if (uart_open("uart2") != RT_EOK)
    {
        rt_kprintf("uart open error.\n");
        while (1)
        {
            rt_thread_delay(10);
        }
    }
    rt_thread_delay(500);
    Spk_SendCMD(0x0F, 0, 0x0101);

    while (1)
    {
//        rt_pin_write(LED2_PIN, PIN_LOW);
//        rt_thread_mdelay(Speed);
//        rt_pin_write(LED3_PIN, PIN_LOW);
//        rt_thread_mdelay(Speed);
//        rt_pin_write(LED4_PIN, PIN_LOW);
//        rt_thread_mdelay(Speed);
//        rt_pin_write(LED2_PIN, PIN_HIGH);
//        rt_thread_mdelay(Speed);
//        rt_pin_write(LED3_PIN, PIN_HIGH);
//        rt_thread_mdelay(Speed);
//        rt_pin_write(LED4_PIN, PIN_HIGH);
//        rt_thread_mdelay(Speed);
        /* 读取按键 KEY0 的引脚状态 */
        if (rt_pin_read(TEST_KEY) == PIN_HIGH)
        {
            rt_thread_mdelay(100);
            if (rt_pin_read(TEST_KEY) == PIN_HIGH)
            {
                /* 按键已被按下,输出 log,点亮 LED 灯 */
                rt_pin_write(LED2_PIN, PIN_LOW);
                Spk_SendCMD(0x01, 0, 0x0000);
            }
        }
        else
        {
            /* 按键没被按下,熄灭 LED 灯 */
            rt_pin_write(LED2_PIN, PIN_HIGH);
        }
        rt_thread_mdelay(10);
        count++;
    }
}






使用特权

评论回复
7
guangods|  楼主 | 2020-5-17 14:49 | 只看该作者
21ic小喇叭 发表于 2020-5-14 15:27
感谢您分享帖子,送您1000家园币

我们的工作人员也会联系您,为您寄出小礼物

请问,如何修改帖子的名称?刚发了回复贴,但发现帖子名称没加项目,应该是RTThread+物体侵入检测报警系统(下位机部分)

使用特权

评论回复
评论
21ic小喇叭 2020-5-18 09:29 回复TA
您好,您打开自己的帖子,在帖子下面有个【编辑】,您自己就能修改哦 
8
nvjwiciw659| | 2020-5-20 15:49 | 只看该作者
期待大神的作品了

使用特权

评论回复
9
21ic小喇叭| | 2020-6-5 11:13 | 只看该作者
大大,我看您写的非常专业,您如果完成了作品,千万别忘记按比赛要求,做成文档,上传到论坛

文档模板在咱们参赛群里有,如果没找到,联系大掌柜单独发给您

提交作品以后,大掌柜给您寄礼品

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

177

帖子

0

粉丝