一开始安装的keil5是可以写STM32代码的,今天想让他也兼容以下C51,按照网上的方法设置完以后,keil图标就变白了,试了一下不影响运行,但是看着好难受啊,有啥方法复原原先的图标吗?
1条回答 默认 最新
关注 【相关推荐】
- 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/7760027
- 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:使keil5同时支持STM32与C51
- 您还可以看一下 Abel小智老师的嵌入式开发系统学习路线 从基础到项目 精品教程 工程师必备课程 物联网课程中的 STM32如何使用定时器?小节, 巩固相关知识点
- 除此之外, 这篇博客: 毕业论文 | 基于STM32的双轮平衡小车设计(基于Keil5的完整注释版代码工程,原器件清单)中的 部分代码 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
MPU6050
/************************************************************************** º¯Êý¹¦ÄÜ£ºMPU6050ÄÚÖÃDMPµÄ³õʼ»¯ Èë¿Ú²ÎÊý£ºÎÞ ·µ»Ø Öµ£ºÎÞ ×÷ Õߣº **************************************************************************/ void DMP_Init(void) { u8 temp[1]={0}; i2cRead(0x68,0x75,1,temp); Flag_Show=1; printf("mpu_set_sensor complete ......\r\n"); if(temp[0]!=0x68)NVIC_SystemReset(); if(!mpu_init()) { if(!mpu_set_sensors(INV_XYZ_GYRO | INV_XYZ_ACCEL)) printf("mpu_set_sensor complete ......\r\n"); if(!mpu_configure_fifo(INV_XYZ_GYRO | INV_XYZ_ACCEL)) printf("mpu_configure_fifo complete ......\r\n"); if(!mpu_set_sample_rate(DEFAULT_MPU_HZ)) printf("mpu_set_sample_rate complete ......\r\n"); if(!dmp_load_motion_driver_firmware()) printf("dmp_load_motion_driver_firmware complete ......\r\n"); if(!dmp_set_orientation(inv_orientation_matrix_to_scalar(gyro_orientation))) printf("dmp_set_orientation complete ......\r\n"); if(!dmp_enable_feature(DMP_FEATURE_6X_LP_QUAT | DMP_FEATURE_TAP | DMP_FEATURE_ANDROID_ORIENT | DMP_FEATURE_SEND_RAW_ACCEL | DMP_FEATURE_SEND_CAL_GYRO | DMP_FEATURE_GYRO_CAL)) printf("dmp_enable_feature complete ......\r\n"); if(!dmp_set_fifo_rate(DEFAULT_MPU_HZ)) printf("dmp_set_fifo_rate complete ......\r\n"); run_self_test(); if(!mpu_set_dmp_state(1)) printf("mpu_set_dmp_state complete ......\r\n"); } Flag_Show=0; } /************************************************************************** º¯Êý¹¦ÄÜ£º¶ÁÈ¡MPU6050ÄÚÖÃDMPµÄ×Ë̬ÐÅÏ¢ Èë¿Ú²ÎÊý£ºÎÞ ·µ»Ø Öµ£ºÎÞ ×÷ Õߣº **************************************************************************/ void Read_DMP(void) { unsigned long sensor_timestamp; unsigned char more; long quat[4]; dmp_read_fifo(gyro, accel, quat, &sensor_timestamp, &sensors, &more); if (sensors & INV_WXYZ_QUAT ) { q0=quat[0] / q30; q1=quat[1] / q30; q2=quat[2] / q30; q3=quat[3] / q30; Pitch = asin(-2 * q1 * q3 + 2 * q0* q2)* 57.3; Roll= atan2(2 * q2 * q3 + 2 * q0 * q1, -2 * q1 * q1 - 2 * q2* q2 + 1)* 57.3; // roll } } /************************************************************************** º¯Êý¹¦ÄÜ£º¶ÁÈ¡MPU6050ÄÚÖÃζȴ«¸ÐÆ÷Êý¾Ý Èë¿Ú²ÎÊý£ºÎÞ ·µ»Ø Öµ£ºÉãÊÏÎÂ¶È ×÷ Õߣº **************************************************************************/ int Read_Temperature(void) { float Temp; Temp=(I2C_ReadOneByte(devAddr,MPU6050_RA_TEMP_OUT_H)<<8)+I2C_ReadOneByte(devAddr,MPU6050_RA_TEMP_OUT_L); if(Temp>32768) Temp-=65536; Temp=(36.53+Temp/340)*10; return (int)Temp; }
如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^解决 无用评论 打赏 举报
悬赏问题
- ¥15 在不同的执行界面调用同一个页面
- ¥20 基于51单片机的数字频率计
- ¥50 M3T长焦相机如何标定以及正射影像拼接问题
- ¥15 keepalived的虚拟VIP地址 ping -s 发包测试,只能通过1472字节以下的数据包(相关搜索:静态路由)
- ¥20 关于#stm32#的问题:STM32串口发送问题,偶校验(even),发送5A 41 FB 20.烧录程序后发现串口助手读到的是5A 41 7B A0
- ¥15 C++map释放不掉
- ¥15 Mabatis查询数据
- ¥15 想知道lingo目标函数中求和公式上标是变量情况如何求解
- ¥15 关于E22-400T22S的LORA模块的通信问题
- ¥15 求用二阶有源低通滤波将3khz方波转为正弦波的电路