-
N32WB452CEQ6单片机I2C异常
在多次使用I2C和从机通信中,发现经常会有单片机I2C开始条件执行过后,状态寄存器为0的异常情况,经抓过波形发现单片机确实没有发出开始条件,各位大佬,帮忙看看代码是不会有什么问题uint8_ti2c_master_recv(u8*pBuffer,uint8_tReadAddr,uint16_tNumByteToRead){if(NumByteToRead>1){/**DisableAcknowledgement*/I2C_ConfigAck(I2C2,ENABLE);}I2CTimeout=I2CT_LONG_TIMEOUT;while(I2C_GetFlag(I2C2,I2C_FLAG_BUSY)){if((I2CTimeout--)==0){I2C_TIMEOUT_UserCallback(MASTER_BUSY);return0;}}/**SendSTARTcondition*///sendstart//I2C_Enable(I2C2,DISABLE);//I2C_Enable(I2C2,ENABLE);I2C_GenerateStart(I2C2,ENABLE);I2CTimeout=I2CT_LONG_TIMEOUT;/**TestonEV5andclearit*/while(!I2C_CheckEvent(I2C2,I2C_EVT_MASTER_MODE_FLAG)){if((I2CTimeout--)==0){I2C_TIMEOUT_UserCallback(MASTER_MODE);return0;}}/**Sendwriteaddressforwrite*/I2C_SendAddr7bit(I2C2,0x40,I2C_DIRECTION_SEND);/**TestonEV6andclearit*/I2CTimeout=I2CT_LONG_TIMEOUT;while(!I2C_CheckEvent(I2C2,I2C_EVT_MASTER_TXMODE_FLAG)){if((I2CTimeout--)==0){I2C_TIMEOUT_UserCallback(MASTER_TXMODE);return0;}}I2C_Enable(I2C2,ENABLE);I2C_SendData(I2C2,ReadAddr);///**TestonEV8andclearit*/I2CTimeout=I2CT_LONG_TIMEOUT;while(!I2C_CheckEvent(I2C2,I2C_EVT_MASTER_DATA_SENDED)){if((I2CTimeout--)==0){I2C_TIMEOUT_UserCallback(MASTER_SENDING);return0;}}/**SendSTRATconditionasecondtime*/I2C_GenerateStart(I2C2,ENABLE);///**TestonEV5andclearit*/I2CTimeout=I2CT_LONG_TIMEOUT;while(!I2C_CheckEvent(I2C2,I2C_EVT_MASTER_MODE_FLAG)){if((I2CTimeout--)==0){I2C_TIMEOUT_UserCallback(MASTER_MODE);return0;}}///**SendEEPROMaddressforread*/I2C_SendAddr7bit(I2C2,0x41,I2C_DIRECTION_RECV);/*TestonEV6andclearit*/I2CTimeout
2025-04-24 12 -
求HC32L136K8 单脉冲输出的程序示例
官网下载DDL的没有这个程序示例,那位大神有这个示例吗?
2025-02-17 12 -
HC32F460的软件看门狗WDT如何停止计数,或者关闭
,执行WFI指令进入睡眠模式好像并没有起作用,CPU仍然在运行
2025-02-12 10 -
推挽输出IC,只使用推挽的下臂,作为OC输出,可否正常使用
我请教一下,类似如此的驱动IC:tlp350、TF0227-TAH之类芯片,只使用NMOS的下臂,是否可以正常作为OC输出使用,
2025-02-03 12 -
RST引脚如何复用成普通IO
LKS07RST手册上可以复用成P0.2,配置了复用寄存器,实际控制IO翻转没效果;还需要配置其他寄存器么SYS_IO_CFG|=BIT5;//RSTconfigP0.2
2024-11-30 11 -
凌鸥LKS08X & LKS07X 如何读取芯片的唯一ID?
凌鸥LKS08X&LKS07X如何读取芯片的唯一ID?
2024-11-26 11 -
国民技术官方DFU驱动在哪下载
N32G43XRL_STB_V1.1把NS-LINK程序给刷掉了,查半天论坛说要连上DFU,用国民技术下载工具重新烧写一个,现在卡在DFU了,找半天只从论坛里找到一个驱动,安装提示没有数字签名,咱也不敢安,只能来论坛求助
2024-11-14 6 -
rtthread 驱动 hc32f4a0 开发板上tf卡的问题。。
本帖最后由yqzq101于2024-10-1609:44编辑hello立创上请了一块谅山派的F4A0开发板。。发现rt-studio里面居然有这个开发板的支持试着创建了工程,闪了个灯一切OK想测试一下tf卡,按照网上搜的例子,打开了SDIOC1,加了fatfs,下载后,总提示如下:msh/>[E/drv.sdio]clockdivisionerror[E/drv.sdio]clockdivisionerror[E/drv.sdio][_sdio_wait_completedtimeout]sta=0x1FFE82A0,cmd0,arg:0x00000000[E/drv.sdio]clockdivisionerror[E/drv.sdio][_sdio_wait_completedtimeout]sta=0x1FFE82A0,cmd8,arg:0x000001AAclockdivisionerror[E/drv.sdio][_sdio_wait_completedtimeout]sta=0x1FFE82A0,cmd5,arg:0x00000000[E/drv.sdio][_sdio_wait_completedtimeout]sta=0x1FFE82A0,cmd55,arg:0x00000000[E/drv.sdio][_sdio_wait_completedtimeout]sta=0x1FFE82A0,cmd55,arg:0x00000000[E/drv.sdio][_sdio_wait_completedtimeout]sta=0x1FFE82A0,cmd55,arg:0x00000000[E/drv.sdio][_sdio_wait_completedtimeout]sta=0x1FFE82A0,cmd55,arg:0x00000000[E/drv.sdio][_sdio_wait_completedtimeout]sta=0x1FFE82A0,cmd1,arg:0x00000000[E/drv.sdio][_sdio_wait_completedtimeout]sta=0x1FFE82A0,cmd1,arg:0x00000000[E/drv.sdio][_sdio_wait_completedtimeout]sta=0x1FFE82A0,cmd1,arg:0x00000000请问这是为啥。。是我哪里没改好吗谢谢
2024-10-16 7 -
关于HC32F460定时器捕获问题请教
关于用HC32F460,timerA定时器进行PWM捕获,同一块板子上自己输出自己捕获结果看起来没有问题,但是通过一块板子输出,另一块板子捕获,得到的结果就相差甚远,但是看输出的PWM占空比波形,又好像没有问题,而且其中某一块板子复位,得到的值趋向于一定的随机性,但是获取得到的值之后,又是一个稳定值。
2024-07-17 13