# master_control **Repository Path**: giteesnail/master_control ## Basic Information - **Project Name**: master_control - **Description**: 无刷三相电机,步进电机,直流电机 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2024-05-15 - **Last Updated**: 2024-06-17 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # master_control #### 介绍 三相无刷电机,步进电机,直流电机,总线舵机,MPU6050,驱动板子 ![输入图片说明](https://foruda.gitee.com/images/1716381823592678303/7baf4844_10267769.jpeg "正面.jpg") ![输入图片说明](https://foruda.gitee.com/images/1716381838558661818/bcb9e495_10267769.jpeg "背面.jpg") #### 调试过程 add 20240522 目前 直流电机,总线舵机,三相无刷电机,两相四线步进电机 已经调试OK,剩余mpu6050 还未来得及测试 存在问题: 1,3225封装8M晶振,引脚13脚24脚反了,需要竖着焊接,才能正常使用 2,板子背面,有4个二极管,二极管封装12引脚反了,所以二极管需要反着焊接,否则三相无刷电机不转 #### 调试过程 add 20240523 MPU6050调试OK,这里还是比较坑的,淘宝买的芯片不能用,读取0x75寄存器读取不到数据,最后把模块上的芯片拆了,换上去可以了。 目前用的软件i2c驱动,试了HAL库的i2c但是没调通,可能是板子没有加入上拉电阻。 第二个坑来了,因为原始数据是没法使用的,所以要移植了eMPL库,将原始数据转换为航向角(yaw)、横滚角(roll)和俯仰角(pitch),才能用,这里原始数据可以得到,但移植eMPL库后,调用mpu_dmp_get_data获取欧拉角,返回值错误,那么大概率是移植库问题,设置断点单步调试,发现是fifo溢出,返回的,又百度了半天,发现是mpu_dmp_get_data函数调用频率要和初始化设置的采样率同步,while(1)循环20ms读取一次,终于可以了。但是这也太捞了吧,之前看手册注意到是可以中断的,又一顿百度,手册一顿看,发现 0X38这个中断寄存器设置0x01,在陀螺仪数据就绪后触发中断,在中断里面mpu_dmp_get_data获取欧拉角即可。 存在问题: 3,MPU6050 加入上拉电阻,之后测试硬件i2c是否可以