jinglixixi

  • 2025-01-18
  • 回复了主题帖: 【翌创ET6001测评】初识篇

    这块板子的确不错,现在又要推出ET6002,值得期待!

  • 回复了主题帖: 【泰坦触觉 TITAN Core开发套件】定时闹钟功能的实现

    的确是这样

  • 2025-01-17
  • 发表了主题帖: 【泰坦触觉 TITAN Core开发套件】定时闹钟功能的实现

    本帖最后由 jinglixixi 于 2025-1-17 15:53 编辑 在不清楚开发板硬件设计的情况下,要实现定时闹钟功能的稳妥办法是用外部的开发板进行控制处理,将泰坦触觉开发套件作为振动器件来使用,两种的中间桥梁则为 串口通讯。 这里作为外部控制的是ETEB-6001DPX-V1开发板,它负责RTC计时及显示驱动等功能,显示器件为串行数码管。 数码管与开发板的连接关系为: CLK----P2.2 DIN----P2.3 CS ----P2.4 输出高低电平的语句定义为: #define CLK_SetLow   GPIO_WritePin(GPIO2, GPIO_PIN_02, RESET) #define CLK_SetHigh  GPIO_WritePin(GPIO2, GPIO_PIN_02, SET)   #define DIN_SetLow   GPIO_WritePin(GPIO2, GPIO_PIN_03, RESET) #define DIN_SetHigh  GPIO_WritePin(GPIO2, GPIO_PIN_03, SET)   #define CS_SetLow    GPIO_WritePin(GPIO2, GPIO_PIN_04, RESET) #define CS_SetHigh   GPIO_WritePin(GPIO2, GPIO_PIN_04, SET)   为进行串口通讯,使用串口为 UART0,其使用的引脚如图1所示。   图1 串口使用引脚   UART0的初识化函数为: static void UART0_printf_init(void) { UART_InitTypeDef init; init.baudRate = 115200; init.wordLength = UART_WORDLENGTH_8B; init.stopBits = UART_STOPBITS_1; init.parity = UART_PARITY_NONE; init.mode = UART_MODE_NORMAL; init.DMAMode = UART_DMA_MULTI_MODE; init.irqEnableFlag = UART_IT_NONE; init.hwFlowCtl = UART_HWFLOW_DISABLE; init.TXFIFOThreshold = UART_TXFIFO_THRESHOLD_0BYTES; init.RXFIFOThreshold = UART_RXFIFO_THRESHOLD_1BYTES; UART_Init(UART0, &init); }   使用的RTC初始化函数为: static void RTC_Calendar_init(void) { RTC_InitTypeDef init; rtcDatetime time; /* set default RTC parameter */ RTC_StructInit(&init); /* init RTC peripheral */ RTC_Init(&init); /* set start calendar time */ time.year = 2025; time.month =1; time.day = 16; time.hour = 7; time.minute = 4; time.second = 50; if(RTC_SetDatetime(&time) != DRV_OK) { while(1); } /* start count */ RTC_Enable(); }   以触觉马达振动实现电子闹钟功能的主程序为: int main(void) { rtcDatetime calendar; uint8_t tick = 0; RTC_Calendar_init(); UART0_printf_init(); EVB_LEDInit(); Init_MAX7219(); Write_Max7219(1,1); Write_Max7219(2,0); Write_Max7219(3,10); Write_Max7219(4,0); Write_Max7219(5,0); Write_Max7219(6,10); Write_Max7219(7,0); Write_Max7219(8,0); while (1) { /* get current date time */ RTC_GetDatetime(&calendar); if(tick != calendar.second) { tick = calendar.second; Write_Max7219(1,calendar.second%10); Write_Max7219(2,calendar.second/10); Write_Max7219(4,calendar.minute%10); Write_Max7219(5,calendar.minute/10); Write_Max7219(7,calendar.hour%10); Write_Max7219(8,calendar.hour/10); if((calendar.hour==7)&&(calendar.minute==5)&&(calendar.second==0)) { printf("vibrate 150 0.5 1000 0.5 0.5;"); printf("\nCurrent time is %02d:%02d:%02d\n",calendar.hour, calendar.minute, calendar.second); } } } }   整体的电路连接如图2所示,经程序的编译与调试运行,串口的输出信息如图3所示,即在得到设置时间时,会发出控制触觉马达的振动指令。   图2 电路连接     图3 输出信息   演示视频: [localvideo]6b49a9879853429abe7525f2c073adc9[/localvideo]  

  • 回复了主题帖: 【新年新挑战,任务打卡赢好礼!】第一批获奖名单公布

    已确认

  • 回复了主题帖: 《计算机视觉之PyTorch数字图像处理》----“目标检测与模型部署”的学习

    宜城龙山 发表于 2025-1-17 09:27 《计算机视觉之PyTorch数字图像处理》相关文章介绍很详细,对学习PyTorch数字图像处理有较大的帮助 感谢支持!!!

  • 2025-01-16
  • 回复了主题帖: 【泰坦触觉 TITAN Core开发套件】蓝牙音乐播放测试

    wangerxian 发表于 2025-1-16 16:39 声音还不错,应该放在一个软的地方,声音就比较好吧。 主要是需要产生共振,用手按住要比自由跳动的音质和音量好。当然用胶粘上比较好,只是怕取下时有麻烦。

  • 回复了主题帖: 新年新挑战,任务打卡赢好礼!

                               

  • 加入了学习《十天学会单片机和C语言编程》,观看 第一课(2)

  • 加入了学习《十天学会单片机和C语言编程》,观看 第一课(3)

  • 发表了主题帖: 【泰坦触觉 TITAN Core开发套件】蓝牙音乐播放测试

    参照网页https://bbs.eeworld.com.cn/thread-1304563-1-1.html的介绍,终于复现了通过蓝牙通讯实现的音乐播放功能。   实现的方法有2种,即通过手机来控制和通过电脑来控制。   在测试前的必要准备工作是将开发板设置在蓝牙工作模式,即按图1所示来进行短接。   图1 模式设置   然后按图2所示来连接触觉马达,经测试连接触觉马达数量多,则声音强。此外,应将触觉马达粘附在纸板上以增强播放效果。   图2 连接方法   1. 电脑方式 先在电脑上搜寻蓝牙设备,见图3所示,其中VHDevice10756即是所用的开发板设备名。   图3 搜寻蓝牙设备   在进行配对连接后,其状态如图4所示。   图4 完成连接   随后,选取相应的歌曲进行播放测试,见图5所示。   图5 播放测试   演示视频: [localvideo]c0fbdd26770a13ed86e92afc4b705cd3[/localvideo]   2.手机方式 该方式与电脑方式类似,也是先搜寻相应的蓝牙设备连接连接,然后再播放播放的歌曲以进行测试,其测试效果如图6所示。   图6 测试效果   演示视频: [localvideo]b75df58e3031b8b42b21115a10495d90[/localvideo]   经测试,其使用方式与预想的略有差别,它是以传送数据流的方式来控制触觉马达振动发声。 当初则是设想的是,它会以蓝牙透传的方式由指令来控制开发板,那样会更便于用外部的感知体系来作出相应的处理措施,以不同的振动效果来提示使用者外部正在发生事件。  

  • 2025-01-14
  • 回复了主题帖: 【泰坦触觉 TITAN Core开发套件】原来还可以这样测

    HonestQiao 发表于 2025-1-14 15:28 蓝牙的来啦:【泰坦触觉 TITAN Core开发套件】触觉马达小身材大能量:蓝牙播放,振出声音 - DIY/开源硬件 ... 好的马上去学习!

  • 回复了主题帖: 【泰坦触觉 TITAN Core开发套件】原来还可以这样测

    HonestQiao 发表于 2025-1-13 22:25 无线指什么?   指的是蓝牙吗? 应该是蓝牙吧,也没说其设备是啥,无法确定和谁连。

  • 2025-01-13
  • 回复了主题帖: 【泰坦触觉 TITAN Core开发套件】原来还可以这样测

    HonestQiao 发表于 2025-1-13 18:11 那个跳线帽很神奇的,左跳右跳,跳与不跳,能够激活多种不同的玩法。 无线那个咋搞定呀?

  • 回复了主题帖: 【泰坦触觉 TITAN Core开发套件】找回串口及功能测试

    HonestQiao 发表于 2025-1-13 18:09 无巧不成书。   一定是经验丰富,才能这么巧的解决这个问题。 过奖了!!!

  • 发表了主题帖: 【MCXA156开发板测评】+串口通讯及其应用

    本帖最后由 jinglixixi 于 2025-1-15 22:53 编辑 MCXA156开发板提供了串口通讯功能,利用它可实现数据的收发及串口设备的控制。 进行数据发送的函数为: status_t LPUART_WriteBlocking(LPUART_Type *base, const uint8_t *data, size_t length) { assert(NULL != data); const uint8_t *dataAddress = data; size_t transferSize = length; #if UART_RETRY_TIMES uint32_t waitTimes; #endif while (0U != transferSize) { #if UART_RETRY_TIMES waitTimes = UART_RETRY_TIMES; while ((0U == (base->STAT & LPUART_STAT_TDRE_MASK)) && (0U != --waitTimes)) #else while (0U == (base->STAT & LPUART_STAT_TDRE_MASK)) #endif { } #if UART_RETRY_TIMES if (0U == waitTimes) { return kStatus_LPUART_Timeout; } #endif base->DATA = *(dataAddress); dataAddress++; transferSize--; } #if UART_RETRY_TIMES waitTimes = UART_RETRY_TIMES; while ((0U == (base->STAT & LPUART_STAT_TC_MASK)) && (0U != --waitTimes)) #else while (0U == (base->STAT & LPUART_STAT_TC_MASK)) #endif { } #if UART_RETRY_TIMES if (0U == waitTimes) { return kStatus_LPUART_Timeout; } #endif return kStatus_Success; } 实现串口0收发功能测试的主程序为: int main(void) { uint8_t ch; lpuart_config_t config; BOARD_InitPins(); BOARD_InitBootClocks(); BOARD_InitDebugConsole(); LPUART_GetDefaultConfig(&config); config.baudRate_Bps = BOARD_DEBUG_UART_BAUDRATE; config.enableTx = true; config.enableRx = true; LPUART_Init(DEMO_LPUART, &config, DEMO_LPUART_CLK_FREQ); LPUART_WriteBlocking(DEMO_LPUART, txbuff, sizeof(txbuff) - 1); while (1) { LPUART_ReadBlocking(DEMO_LPUART, &ch, 1); LPUART_WriteBlocking(DEMO_LPUART, &ch, 1); } } 该程序的功能为以115200的波特率进行收发测试,每接收一个字节的数据就原样进行回馈性发送。 在使用串口调试工具的情况下,其测试效果如图1所示,由此可见收发内容完全一致,可用来字节数据的传送。   图1 收发测试   将波特率设为9600bps的情况下,则可控制MP3语音模块的播放,其控制指令是存放在数组中,即: uint8_t cmd3[] = {0X7E, 0xFF, 0x06, 0X03, 00, 00, 01, 0xFE, 0xF7, 0XEF}; 在注销掉接收语句后,将发送语句改为: LPUART_WriteBlocking(DEMO_LPUART, cmd3, 10); 这样,就可实现对MP3语音模块的播放控制。 修改后的主程序为: int main(void) { uint8_t ch; uint8_t cmd3[] = {0X7E, 0xFF, 0x06, 0X03, 00, 00, 01, 0xFE, 0xF7, 0XEF}; lpuart_config_t config; BOARD_InitPins(); BOARD_InitBootClocks(); BOARD_InitDebugConsole(); LPUART_GetDefaultConfig(&config); config.baudRate_Bps = 9600U; config.enableTx = true; config.enableRx = true; LPUART_Init(DEMO_LPUART, &config, DEMO_LPUART_CLK_FREQ); LPUART_WriteBlocking(DEMO_LPUART, cmd3, 10); while (1); } 经测试,其效果如图2所示。   图2 控制测试   此外,由于开发板具有PWM调节功能,本打算用来进行云台控制,可很难设置到双轴云台的工作频率。为此,改为用带串口控制功能的PWM模块来实现。 该模块是通过串口来接收控制指令,以控制2个通道的PWM输出。在连接舵机的情况下,可顺利地实现双轴云台的调节控制。 该模块工作的通讯波特率为9600bps,舵机工作的频率为 50Hz。 为便于调节控制,是将指令存放于指令数组中,其格式为: uint8_t MLF[7]={'S','1','F','0','5','0','T'};  uint8_t MLP[7]={'S','1','D','0','0','4','T'};    其中,数组MLF[]用于存放工作频率的设置指令,数组MLP[]则用于存放转动角度的设置指令。 指令中S1用于指定通道1的参数,S21用于指定通道2的参数。 在特定的连接情况下,通道1是控制云台的上下俯仰角度,通道2是控制云台在水平上的旋转角度。 由于所用的串口0是供虚拟串口来使用的,要进行使用必须通过迷你型的调试口J24来引出。   图3  所用接口   在完成整体电路连接的情况下,其调节效果如图4和图5所示。   图4 姿态1     图5  姿态2   以触摸ISP按键调节舵机角度为例,设置工作频率的语句为: LPUART_WriteBlocking(DEMO_LPUART, MLF, 7); 实现按键调节舵机角度的程序为: i=3; while(1) {       if ((GPIO_PinRead(BOARD_SW_GPIO, BOARD_SW_GPIO_PIN))==0)       {             MLP[4]=i/10+'0';             MLP[5]=i%10+'0';                                                       LPUART_WriteBlocking(DEMO_LPUART, MLP, 7);             delay_2();             i=(i+1)%13;             if(i==0) i=3;             while (((GPIO_PinRead(BOARD_SW_GPIO, BOARD_SW_GPIO_PIN))==0));       } }     图6  串口引脚分配  

  • 回复了主题帖: 【泰坦触觉 TITAN Core开发套件】使用触觉马达播放小星星歌曲

    有新意,赞!!!

  • 回复了主题帖: 【泰坦触觉 TITAN Core开发套件】原来还可以这样测

    秦天qintian0303 发表于 2025-1-13 08:54 可能是后面的跳线帽没有取下来,启动方式就变了,我还找这个跳线帽呢,原来在板子上了 是,这个跳线帽一直放在那。

  • 回复了主题帖: 【泰坦触觉 TITAN Core开发套件】找回串口及功能测试

    HonestQiao 发表于 2025-1-12 22:53 学习了,以后遇到问题,可以这么解决了。 哈哈,也是赶巧了。

  • 回复了主题帖: 【泰坦触觉 TITAN Core开发套件】咋没有PDF原理图

    HonestQiao 发表于 2025-1-12 22:53 多谢大佬提供 感谢支持!!!

  • 回复了主题帖: 【泰坦触觉 TITAN Core开发套件】初识篇

    HonestQiao 发表于 2025-1-12 22:52 官方网站上,有一些文档资料 后来又找到些,但还是略感不足。

统计信息

已有954人来访过

  • 芯积分:2507
  • 好友:6
  • 主题:454
  • 回复:1055

留言

你需要登录后才可以留言 登录 | 注册


okhxyyo 2020-7-21
jinglixixi: 我的测评HT32F1653开发板一直没收到呀!
还没寄出去哦。你的收件信息是对的吧?明天会给寄出去
jinglixixi 2020-7-21
我的测评HT32F1653开发板一直没收到呀!
okhxyyo 2016-12-14
jinglixixi: 开发板已收到。
好的哈,那我等着你的测评文章拉
查看全部