问答

汇集网友智慧,解决技术难题

szt1993

TA的家园币:2893  

  • 关于STM32固件和代码移植的问题……

    对于基本pin2pin的STM32芯片,比如F765到H753,或H743,是否可以不需要重新编译,就可以将过去的代码烧录并运行在新的处理器上?尤其是对于使用了OS的固件?如果不行的话,需要对代码的哪些部分进行修改?其实我觉得应该是不能直接烧进去使用的。但是听到有人说固件可以不经修改直接使用,但是手头没有能验证的硬件……多谢啦!

  • 使用stm32mp157进行软件模式spi通讯,无法设置为四线模式

    本帖最后由七呀嘛七于2024-9-1810:10编辑目前使用stm32mp157芯片进行软件模式的spi通讯,设备树内对使用的gpio口定义如下:gpio_spi1:spi@1{compatible="spi-gpio";#address-cells=;#size-cells=;status="okay";sck-gpios=;mosi-gpios=;miso-gpios=;cs-gpios=,;//drv:i0dac:e6num-chipselects=;/*Clients*/spidev@0{reg=;compatible="linux,spidev";spi-max-frequency=;};spidev@1{reg=;compatible="linux,spidev";spi-max-frequency=;};};在使用read或ioctl函数,通过miso线进行读取时,发现读取到的都是mosi线的数据,也就是运行在三线模式。尝试使用ioctl(fd,SPI_IOC_WR_MODE,&mode)关闭三线模式,但没有产生效果。程序中spi读取的相关代码如下:intmyspi2_write_then_read(intfd,constuint8_t*tx_buf,size_tlen_tx,uint8_t*rx_buf,size_tlen_rx){structspi_ioc_transfertransfer[2];//两个传输结构,一个用于写入,一个用于读取memset(transfer,0,sizeof(transfer));//清空结构体//第一个传输,用于写入transfer[0].tx_buf=(unsignedlong)tx_buf;//发送缓冲区transfer[0].rx_buf=0;//不接收数据transfer[0].len=len_tx;//写入数据长度transfer[0].speed_hz=0;//使用当前SPI设备的默认速度transfer[0].cs_change=0;//在结束时不改变片选状态//第二个传输,用于读取transfer[1].tx_buf=0;//不发送数据transfer[1].rx_buf=(unsignedlong)rx_buf;//接收缓冲区transfer[1].len=len_rx;//读取数据长度transfer[1].speed_hz=0;//使用当前SPI设备的默认速度transfer[1].cs_change=0;//完成读写后释放片选//使用ioctl进行双向传输(写入+读取)intret=ioctl(fd,SPI_IOC_MESSAGE(2),transfer);printf("Wrote%zubytesandread%zubytesfromSPI\n",len_tx,len_rx);return0;}intspi_read(intfd,intread_length){uint8_tbuf[read_length];ssize_tret=read(fd,buf,sizeof(buf));printf("ReadfromSPI:");for(inti=0;i<ret;i++){printf(

  • eclipse代码中的乱码影响编译,怎么消除?

    如图:

  • gd32f450 lwip DMA失败

    ErrStatusenet_software_reset(void){uint32_ttimeout=0U;ErrStatusenet_state=ERROR;uint32_tdma_flag;/*resetallcoreinternalregisterslocatedinCLK_TXandCLK_RX*/ENET_DMA_BCTL|=ENET_DMA_BCTL_SWR;/*waitforresetoperationcomplete*/do{dma_flag=(ENET_DMA_BCTL&ENET_DMA_BCTL_SWR);timeout++;}while((RESET!=dma_flag)&&(ENET_DELAY_TO!=timeout));/*resetoperationcomplete*/if(RESET==(ENET_DMA_BCTL&ENET_DMA_BCTL_SWR)){enet_state=SUCCESS;}returnenet_state;}gd32f4xx_enet.c这个老是失败,led闪灯例程没有毛病

  • 请问GD32 Embedded Builder是否支持J-Link进行调试

    本来想试试用GD32EmbeddedBuilder来开发GD32的,研究了半天不知道怎么用J-Link下载调试

  • 有谁知道HC32L136复位到执行第一条代码的时间

    有谁知道HC32L136复位到执行第一条代码的时间,数据手册和用户手册都没找到。

  • CW32L083 IAP跳转后中断无响应

    最近做一个项目,需要IAP。按照官方的教程一切顺利,软件APP跳转一切正常,但是跳转后中断没有响应。搜索了一堆资料,APP在mian中找开了中断,在不同地方设置VROT,都没能解决,查了数据手册,也只说支持向量偏移,没有其它介绍。请问哪位大神做过IAP中断处理的,指点一下,是不是还需要设置哪里。我用仿真器测试,只要是带中断的,跳转后,中断全部无响应。

    软件 介绍 AN App CW32L083 iap

    2024-06-08 10
  • APM32F003F6 J-LINK烧录

    使用J-LINK进行烧录,在KEIL5中显示连接是正常的,但是在线烧录时显示如下错误:使用JFflashLite进行离线下载时,可以烧录,但是擦除很慢,超过100s。显示如下:

  • hc32f460串口接收不到数据

    用的串口3进行通讯,用示波器看收发都有正确的波形,但RDR寄存器一直是0,接收不到数据,一直再发送中断和接收超时中断,定时器周期我设置的是20ms,而且示波器看数据收发间隔不到2ms,请问这是怎么回事

  • PSOC4 硬件I2C(主机)在做群脉冲实验时故障(无数据输出)

    本帖最后由善水789于2024-1-2220:31编辑如题,4126通过硬件I2C与LED驱动芯片通信控制背光灯(写数据到LED驱动芯片,通信距离2-3cm),正常情况下数据通信正常,做群脉冲实验时主机无数据输出,无CLK输出;异常情况的截图如下,有没有好的应对措施,谢谢。

    2024-01-22 12
  • CW32F030 LIN通信参考代码

    如题,谁那可以分享下这个LIN参考代码

    MCU

    2024-01-15 2
  • 有没有用过TLE5012B的大佬 想请教下角速度的计算方法

    能够从寄存器中读取到数据默认值应该是0的正转增大翻转由7FFF开始减小但是就算把寄存器值为1时带入手册的公式算出来也是128°/s,我觉得这个值应该不是正确的想请教一下这方面的计算方法

  • 多字节SPI从机接收

    单片机作为从机要接收一个24bit的SPI总线数据,CS信号宽度24bit,能用硬件SPI实现吗?

    MCU spi

    2023-12-25 10
  • CW32L083 开发板的LCD出厂示例在哪里下载。

    我想学习LCD段码屏的显示案例,出厂示例在哪里可以找得到。

    2023-06-17 7
12下一页