hujj

  • 2020-12-04
  • 回复了主题帖: 开关电源兴趣小组 第15次任务

        1、从本文图(05)我们知道:图(05)那样的电路会产生超前的相移。那么为了使开关电源反馈的开环特性在穿越频率上具有45°的相位裕量,能否用图(05)那样的电路使得穿越频率上实现足够的相位裕量?   答:可以。  2、本文图(08) 复制于康华光《电子技术基础 模拟部分》第五版434页开始的一段话,那段话说得很清楚:该框图就是一个反馈放大器。我们又说过:图(08)中的框图和本文图(02)框图是一回事。那么本文图(01)那样的开关电源以及其它拓扑的开关电源是否也可以看成一个放大器?如果本文图(01)是一个反馈放大器,那么其输入信号在哪里?   答:输入信号在EA的负输入端。  

  • 2020-11-27
  • 回复了主题帖: 管管又从乐鑫那边申请到好玩的板子拉~~有小伙伴想玩的吗??快进贴一探究竟哦~~

    六个按键加十二个类似发光管的元件,实在猜不出来。

  • 回复了主题帖: 【GD32F307E-START】+语音识别的实现

    本帖最后由 hujj 于 2020-11-27 09:06 编辑
    dwdsp 发表于 2020-11-27 06:33 有核心代码共享哦!赞! 楼主买的LD3320语音识别模块多少钱呢?
        谢谢夸奖!     我的许多代码都是抄别人的,或者在别人代码的基础上修改,所以我自己写的代码也会无偿共享给大家,就算是回报吧。     当初买LD3320模块好象是花了58元左右,不记得是否包邮,因为同时还买了其他元件。

  • 2020-11-26
  • 回复了主题帖: 开关电源兴趣小组 第14次任务

    本帖最后由 hujj 于 2020-11-26 21:20 编辑 1、图(06)是UC1525A说明书中典型应用电路,变压器T1有两个次级绕组,用于驱动半桥电路。如果要驱动全桥电路,显然变压器应该有四个互相绝缘的次级绕组。这四个次级绕组的相位关系应该是怎样的? 答:两对角线的绕组相位相同。 2、图(08)是IR2104芯片说明书中典型应用电路,该芯片用于驱动半桥电路。用两片IR2104,其信号输入端IN联接在一起,能否驱动四个功率MOS管组成的全桥电路? 答:因为两片IR2104的信号输入端联接在一起,其输出是相同的,所以无法驱动全桥电路。

  • 回复了主题帖: 【GD32F307E-START】+语音识别的实现

        开始买了一个LD3320语音识别模块,花了60多元,这个是最近买的,推广价19.9元。这个实现起来更简单,但命令词固定,无法自己修改。

  • 2020-11-25
  • 回复了主题帖: 【GD32F307E-START】+语音识别的实现

    终于完成了视频压缩,现在将测试的视频上传:

  • 2020-11-24
  • 回复了主题帖: 【GD32F307E-START】+语音识别的实现

        重新录制过了几段小视频,因为之前录制过程中手机摄像头有故障,所以没有图像,文件也仅有几M,重启手机后录制的视频,文件都超过20M,压缩之后也不低于20M,超过限制无法上传,可我又不会编辑视频,本来可以适当减少点分辨率就可以减小文件长度。

  • 回复了主题帖: 【GD32F307E-START】+语音识别的实现

        不知怎么回事,录制的视频竟然只有声音,没有图像,我再重新录制试试。

  • 发表了主题帖: 【GD32F307E-START】+语音识别的实现

    本帖最后由 hujj 于 2020-11-25 09:54 编辑     语音控制家庭电器设备是智慧家庭的一个重要组成部分,也是我本次测试的一个重点。最初是准备使用GD32F307E-START开发板来驱动LD3320语音识别模块,后来发现有更便宜而且方便实验的HLK-V01语音识别模块,厂家已经内置了不少固定的语音命令,可以自动识别并通过串口输出信息,这样可以大幅度减轻实验的难度。不过使用这个模块不能自定义语音词组,实用时有局限性,但不影响测试。下图是在测试中的语音识别模块,这个模块的语音识别率还是不错的:       为简化实验,我并没有实际连接继电器去控制家电,而是直接在屏幕上显示出相应的字符,因为只要能够正确识别出语音命令并显示在屏幕上,以后若要通过GPIO去控制继电器就没有什么难度了,下面是实验过程的照片:       这是LCD显示屏:       在发出语音命令时,相应的回应会显示在屏幕中:       这是测试过程的动画,由于没有声音,展示的效果比较差:       由于视频文件太大,只好录制了几个小段分别显示: 视频文件补充在4楼       下面是本次测试项目的压缩包:       至此,本次测试已经基本完成,下一步将继续测试硬件I2C,尝试建立与EEPROM和其他设备的通讯。  

  • 回复了主题帖: GD32307E-START 硬件IIC点亮0.96‘’OLED(05)

        非常抱歉没有及时回应您!     我在调试硬件I2C受挫之后,迫不得已改用软件模拟I2C勉强实现了I2C通讯。现在看来当时选择的i2c引脚是PB6和PB7(是从EVAL板范例中复制过来的),而在START板子上这两个引脚是被USART0使用,也许是这个原因所致,目前还没有进一步去测试。     感谢您的关注!  

  • 2020-11-23
  • 回复了主题帖: 【GD32F307E-START】+又飞了一根电源线

    蓝雨夜 发表于 2020-11-23 13:49 HLK_20
    应该是一个厂家的,我的扩展板上标是HLK-V01-KIT-V2.0

  • 回复了主题帖: 【GD32F307E-START】+又飞了一根电源线

    蓝雨夜 发表于 2020-11-23 12:38 这个语音模块我直接用3。3v
        哦,我特地测试了一下,3.3V供电时工作不太正常,5V供电时才行。也许是我的模块与您的不一样。     另外这个模块耗电可能比较大,播放声音时LCD屏幕背光会降低,看来还是得单独供电。

  • 回复了主题帖: 【GD32F307E-START】+串口通讯测试

    w494143467 发表于 2020-11-23 09:01 那也厉害,我基本都是用杜邦线弄,要不就洞洞板做个扩展板。
        我开始也是用杜邦线加洞洞板,但飞线太多不易排查连接错误,后来陆续自己画板打样,这样做测试比较方便,可以减少杜邦线连接错误或因接触不良造成硬件故障,下面是我陆续打样的部分板子:  

  • 发表了主题帖: 【GD32F307E-START】+又飞了一根电源线

        我准备测试的语音模块使用的是5V电源,可是开发板上唯一的VCC引脚却是连通DC电源插座的,也就是给开发板供电用的,参见下图:     从开发板的背面也可以清楚的看到线路的走向:     我又不愿意模块另外单独供电,所以只好对开发板供电线路进行小修改,首先用小刀割断VCC排针座的连接铜箔(见下图):     然后再飞一根线连接到5V转3.3V电源芯片引脚上:     这样修改后,就可以从这里取得5V电源了:

  • 回复了主题帖: 【GD32F307E-START】+串口通讯测试

    w494143467 发表于 2020-11-22 20:22 老哥开发板可真多!羡慕ing。一看就是大佬级别的。
        过奖了,我最多才算是刚入门,照片上的基本上是自己制作的扩展板,可以方便进行各种实验,避免用杜邦线的不方便。

  • 2020-11-22
  • 回复了主题帖: 【GD32F307E-START】+串口通讯测试

        我添加了下列代码,开始设置参数为16,后来改为2,测试发现长度没有变化: usart_block_length_config(USART0,2);     下面代码的截图:     这是串口调试助手的截图,窗口上部分是设置长度为16的测试结果,下部分是设置长度为2的结果,均与原来没有设置相同,看来不是使用这个函数改变设置。  

  • 发表了主题帖: 【GD32F307E-START】+串口通讯测试

        这两天时行了串口通讯的测试,开始我在原来测试平台上添加从厂家范例中复制过来的代码,串口通讯助手毫无反映情况,反复查阅之前各位老师的帖子并逐行代码对照也未发现差异,但运行就是不成功,直接编译厂家的范例,测试也是不行,最后才发现我使用的是GD32F307C_EVAL的范例,与GD32F307_START板子有细微的差别,下图是开始使用的范例,这引起范例是配合EVAL板子的:     配合START板子的范例在这里:     START板子只有两个范例:     经过对比,原来是使用的引脚不同,START板子USART0使用B6和B7两个引脚:     而EVAL板子USART0使用A9和A10两个引脚:     只怪我粗心大意,没仔细分辨。     范例中只有发送的代码,没看到接收的代码,参照大家的帖子介绍以及EVAL板子的范例,我尝试写了接收并转发的代码: if(RESET != usart_interrupt_flag_get(USART0, USART_INT_FLAG_RBNE)){ // read one byte from the receive data register 从接收数据寄存器读取一个字节 rx_buffer[rx_counter] = (uint8_t)usart_data_receive(USART0); printf("\r\n %d ",rx_buffer[rx_counter++]); if(rx_counter >= nbr_data_to_read) { // disable the USART0 receive interrupt 禁用USART0接收中断 usart_interrupt_disable(USART0, USART_INT_RBNE); } LCD_write_ASCII(30,6,1,rx_buffer); }     同时还写了键按下就发送当前日期时间的代码: if(RESET == gd_eval_key_state_get(KEY_WAKEUP)){ delay_1ms(100); if(RESET == gd_eval_key_state_get(KEY_WAKEUP)){ /* turn on LED1 */ gd_eval_led_on(LED1); /* output a message on hyperterminal using printf function */ printf("\r\n 当前时间是%d年%d月%d日%d时%d分 \r\n", year, month, day, hour, minute); printf("\r\n %s \r\n",Text); /* wait for completion of USART transmission */ while(RESET == usart_flag_get(EVAL_COM1, USART_FLAG_TC)){ } } }     测试时发现发送正常,但接收不到全部数据,下图是测试的过程:     这是串口调试助手接收到的完整数据:     但串口调试助手向单片机发送数据,接收到的却不完整:     接着测试中断模式,中断处理的代码如下: void USART0_IRQHandler(void) { if(RESET != usart_interrupt_flag_get(USART0, USART_INT_FLAG_RBNE)){ /* read one byte from the receive data register 从接收数据寄存器读取一个字节*/ rx_buffer[rx_counter] = (uint8_t)usart_data_receive(USART0); printf("\r\n %d ",rx_buffer[rx_counter++]); if(rx_counter >= nbr_data_to_read) { /* disable the USART0 receive interrupt 禁用USART0接收中断*/ usart_interrupt_disable(USART0, USART_INT_RBNE); } } if(RESET != usart_interrupt_flag_get(USART0, USART_INT_FLAG_TBE)){ /* write one byte to the transmit data register 向传输数据寄存器写入一个字节*/ usart_data_transmit(USART0, tx_buffer[tx_counter++]); if(tx_counter >= nbr_data_to_send) { /* disable the USART0 transmit interrupt 禁用USART0传输中断*/ usart_interrupt_disable(USART0, USART_INT_TBE); printf("\r\n %d ",rx_buffer[rx_counter++]); LCD_write_ASCII(30,6,1,rx_buffer); } } }       测试结果仍是没有接收到完整的数据:     看来还需要设定每次接收的字节数才行。  

  • 2020-11-21
  • 回复了主题帖: 【GD32F307E-START】+连通UASRT接口电源

    w494143467 发表于 2020-11-21 15:26 哈哈,飞线小能手,不错不错,动手能力极强!
    谢谢夸奖!这是在放大镜下面操作的,否则不敢动手,眼睛看不清。

  • 发表了主题帖: 【GD32F307E-START】+连通UASRT接口电源

        之前就有帖子反映在进行UART测试的时候,由于板子上的UART接口并不向开发板提供电源,导致需要两根USB线,一根通讯,另一根提供电源,非常不方便,尤其是象我这样电脑USB接口几乎占满,每次都要拔下其他暂时不用的USB设备。我曾经用万用表测过两个USBmini接口,是共地的,但电源端不相通,一直想加根导线将其连接起来,但没有找到其线路图,不敢贸然动手。今天仔细观看申小林老师帖子中的原厂机械图,确定USB接口的电源端是空的,完全可以利用(详见下图红线所示):     于是我将两个接口的电源端用飞线小心翼翼地焊接好,测试毫无问题,这下测试UART通讯时就用不着两根USB连线了。

  • 回复了主题帖: 【GD32F307E-START】+软件I2C驱动DS1307日历模块

    w494143467 发表于 2020-11-20 19:41 楼主这IIC通信之路真是非常坎坷啊,不过能看出楼主的毅力!!!
    关键问题是还没有找到不成功的原因。

统计信息

已有293人来访过

  • 芯币:1353
  • 好友:4
  • 主题:122
  • 回复:669
  • 课时:7
  • 资源:3

留言

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


现在还没有留言