-
关于STM32固件和代码移植的问题……
对于基本pin2pin的STM32芯片,比如F765到H753,或H743,是否可以不需要重新编译,就可以将过去的代码烧录并运行在新的处理器上?尤其是对于使用了OS的固件?如果不行的话,需要对代码的哪些部分进行修改?其实我觉得应该是不能直接烧进去使用的。但是听到有人说固件可以不经修改直接使用,但是手头没有能验证的硬件……多谢啦!
2024-11-20 12 -
使用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(
2024-09-18 8 -
eclipse代码中的乱码影响编译,怎么消除?
如图:
2024-09-13 7 -
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闪灯例程没有毛病
2024-09-13 17 -
请问GD32 Embedded Builder是否支持J-Link进行调试
本来想试试用GD32EmbeddedBuilder来开发GD32的,研究了半天不知道怎么用J-Link下载调试
2024-09-11 6 -
有谁知道HC32L136复位到执行第一条代码的时间
有谁知道HC32L136复位到执行第一条代码的时间,数据手册和用户手册都没找到。
2024-06-16 4 -
CW32L083 IAP跳转后中断无响应
最近做一个项目,需要IAP。按照官方的教程一切顺利,软件APP跳转一切正常,但是跳转后中断没有响应。搜索了一堆资料,APP在mian中找开了中断,在不同地方设置VROT,都没能解决,查了数据手册,也只说支持向量偏移,没有其它介绍。请问哪位大神做过IAP中断处理的,指点一下,是不是还需要设置哪里。我用仿真器测试,只要是带中断的,跳转后,中断全部无响应。
2024-06-08 10 -
APM32F003F6 J-LINK烧录
使用J-LINK进行烧录,在KEIL5中显示连接是正常的,但是在线烧录时显示如下错误:使用JFflashLite进行离线下载时,可以烧录,但是擦除很慢,超过100s。显示如下:
2024-05-22 4 -
hc32f460串口接收不到数据
用的串口3进行通讯,用示波器看收发都有正确的波形,但RDR寄存器一直是0,接收不到数据,一直再发送中断和接收超时中断,定时器周期我设置的是20ms,而且示波器看数据收发间隔不到2ms,请问这是怎么回事
2024-05-06 16 -
PSOC4 硬件I2C(主机)在做群脉冲实验时故障(无数据输出)
本帖最后由善水789于2024-1-2220:31编辑如题,4126通过硬件I2C与LED驱动芯片通信控制背光灯(写数据到LED驱动芯片,通信距离2-3cm),正常情况下数据通信正常,做群脉冲实验时主机无数据输出,无CLK输出;异常情况的截图如下,有没有好的应对措施,谢谢。
2024-01-22 12 -
CW32F030 LIN通信参考代码
如题,谁那可以分享下这个LIN参考代码
2024-01-15 2 -
有没有用过TLE5012B的大佬 想请教下角速度的计算方法
能够从寄存器中读取到数据默认值应该是0的正转增大翻转由7FFF开始减小但是就算把寄存器值为1时带入手册的公式算出来也是128°/s,我觉得这个值应该不是正确的想请教一下这方面的计算方法
2024-01-05 17 -
多字节SPI从机接收
单片机作为从机要接收一个24bit的SPI总线数据,CS信号宽度24bit,能用硬件SPI实现吗?
2023-12-25 10 -
CW32L083 开发板的LCD出厂示例在哪里下载。
我想学习LCD段码屏的显示案例,出厂示例在哪里可以找得到。
2023-06-17 7