问答

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

dcxq13

TA的家园币:108  

  • DMA同步普通采集ADC+TIMER触发同步抢占采集ADC 如何配置

    DMA同步普通采集ADC+TIMER触发同步抢占采集ADC如何配置,希望各位大哥不吝赐教。

  • 芯源的CW32F030可以使用JLINK进行开发调试吗?

    芯源的芯片CW32F030价格挺便宜的,看芯片手册,性能也不错,正打算试用一下,请问可以使用JLINK开发调试吗?

    2022-07-14 19
  • HC32F460JETA SPI+DMA驱动2.8寸TFT LCD非常慢!!

    大家好,最近我用HC32F460驱动一块2.8寸的SPITFT,分辨率320x240,但是发现TFT刷屏的速度非常非常慢!慢到大概5到6s才会刷完一屏!后来我开了DMA,也是几乎没有任何改善!我的SPI配置用的是官方例程,SPI时钟2分频,系统时钟使用的MCU内部自带时钟,我不知道自带时钟的PCLK1是多少,但PCLK1在2分频后总不能5,6s才刷完一次屏吧,我之前用过其他的国产MCU,仿STM32F030,主频只有48M,我拿来刷3.5寸480x320的屏都比这个快啊,调了好几天都找不到原因,后来打算换到外部时钟看看,结果换到外部时钟后,又出现新的问题了,下面是我使用这颗芯片的所有问题汇总,希望能得到专家的指点:1,刚开始,使用的是MCU自带内部时钟,用SPI+DMA驱动屏幕,SPI+DMA的配置用的是官方例程,SPI时钟2分频,屏幕可以正常初始化和点亮,但就是速度非常非常慢,如上所提到的,5,6s刷屏一次,简直无法忍受,检查了很多地方,实在是没辙了,因为从没遇到过这样的问题,之前用过的国产32位的单片机也很多,从未遇到这样的问题,感觉很奇怪。2,为了验证是不是内部时钟问题,我使用了外部时钟,在外面焊了一颗16M的晶振,然后用官方例程切换到外部时钟,奇怪的是切换过去之后,整个系统启动变得非常缓慢,大概2s左右,之前用内部时钟都是秒启动。而且使用这颗外部16M时钟还影响了我的timer0定时器,我明明是设置的1ms进一次中断,可是使用外部时钟后,变成大概6s进一次中断(期间也换过既可16M晶振验证,无改善)。外部时钟的时钟的配置按照官方例程,也检查了和修改了很多次,没有发现哪里有问题,所以我不知道到底外部时钟配置成功没有,从现象上看确实应该是配置成功了,但是没有按照预期运行,还影响了定时器时基。当然驱动屏幕的结果也是和使用内部时钟一样的,奇慢无比。以下是我的部分代码:SPI+DMA部分:voidLCD_SPI_INIT(void){stc_spi_init_tstcSpiInit;//定义结构变量MEM_ZERO_STRUCT(stcSpiInit);//清零结构变量PWC_Fcg1PeriphClockCmd(

    DMA hc32f460 spi TFT LCD ST tc

    2022-07-14 5
  • STC8G 串口2无法发送数据

    使用官方测试实例,串口2可以i接收数据,发送数据端口检测不到。程序如下:/*******************IO配置函数*******************/voidGPIO_config(void){GPIO_InitTypeDefGPIO_InitStructure;//结构定义GPIO_InitStructure.Pin=GPIO_Pin_1;//GPIO_Pin_6|GPIO_Pin_7;//指定要初始化的IO,GPIO_Pin_0~GPIO_Pin_7GPIO_InitStructure.Mode=GPIO_PullUp;//指定IO的输入或输出方式,GPIO_PullUp,GPIO_HighZ,GPIO_OUT_OD,GPIO_OUT_PPGPIO_Inilize(GPIO_P1,&GPIO_InitStructure);//初始化}/***************串口初始化函数*****************/voidUART_config(void){COMx_InitDefineCOMx_InitStructure;//结构定义COMx_InitStructure.UART_Mode=UART_8bit_BRTx;//模式,UART_ShiftRight,UART_8bit_BRTx,UART_9bit,UART_9bit_BRTxCOMx_InitStructure.UART_BaudRate=115200ul;//57600ul;//波特率,110~115200COMx_InitStructure.UART_RxEnable=ENABLE;//接收允许,ENABLE或DISABLECOMx_InitStructure.UART_Interrupt=ENABLE;//中断允许,ENABLE或DISABLECOMx_InitStructure.UART_Priority=Priority_0;//指定中断优先级(低到高)Priority_0,Priority_1,Priority_2,Priority_3COMx_InitStructure.UART_P_SW=UART2_SW_P10_P11;//UART2_SW_P46_P47;//切换端口,UART2_SW_P10_P11,UART2_SW_P46_P47UART_Configuration(UART2,&COMx_InitStructure);//初始化串口2UART1,UART2,UART3,UART4PrintString2("STC8UART2TestProgramme!\r\n");//UART2发送一个字符串}/**********************************************/voidmain(void){u8i;GPIO_config();UART_config();EA=1;while(1){delay_ms(1);if(COM2.RX_TimeOut>0)//超时计数{if(--COM2.RX_TimeOut==0){if(COM2.RX_Cnt>0){for(i=0;i

    串口 stc8g IO UART pi GPIO

    2021-09-21 11