力洪
获得 2 次赞
帮助过252人
想问问大家有没有做过51通过串口与PC端的通信鸭?串口中断是不是可以理解成定时中断差不多啊?可是定时器中断到一定时间就触发中断,但是串口中断怎么才能触发,我看了好像说什么接收或发送一定的数据格式就能触发中断,但是数据已经接收或发送了,触发中断还有什么意义么?
比较好用的。 51hei图片20201231103211.jpg (69.53 KB 下载次数: 0) 下载附件 保存到相册 2020-12-31 10:33 上
ADC + DMA进行多通道采样,现在是用同一个ADC不通通道按顺序进行采集,也就是不是同步采样。 那么ADC + DMA是否可以进行同步采样,比如用两个ADC+DMA进行同步采样。
b59270e97691234c96dddc4e0f175b2.png (73.92 KB, 下载次数: 0) 下载附件 昨天 09:49 上传 我在网上下载程序后,这边注释怎么是乱码,我已经设置中文了,在他后面打字能显示,但是原先的字怎么不能显示出来,想问问大家有没有解决方法
普中板,led灯4种不同的闪烁模式,按键按一次,数码管显示一,以此类推,但是led灯是P2脚,数码管也是P2的234脚控制,有什么办法能分开控制???
初始化函数 void SSD2828_Init(void) { SSD2828_QSPI_Init(); //Packet Write Configuration SSD2828_Write_REG(0xB80x0000); //VC(Virtual ChannelID) Control Register SSD2828_Write_REG(0xB90x0000); //PLL Disable //PLL Configure //FR: bit15~14 //00 ?62.5 < OUT f < 125 //01 ?126 < OUT f < 250 //10 ?251 < OUT f < 500 //11 ?501 < OUT f < 1000 SSD2828_Write_REG(0x00BA0xC050); //Fout = Fin * 0x14 / 1 = 10M * 80 /1 = 800M SSD2828_Write_REG(0x00BB0x0009); //LP(Low Power) Clock = Fout /10/8 = 10M SSD2828_Write_REG(0x00B90x0001); //PLL ENABLE HAL_Delay(100); //RGB Input Interface Control SSD2828_Write_REG(0x00B1(SSD2828_VSYNC<<8)+SSD2828_HSYNC); SSD2828_Write_REG(0x00B2(SSD2828_VBP<<8)+SSD2828_HBP); SSD2828_Write_REG(0x00B3(SSD2828_VFP<<8)+SSD2828_HFP); SSD2828_Write_REG(0x00B4SSD2828_WIDTH); SSD2828_Write_REG(0x00B5SSD2828_HEIGHT); SSD2828_Write_REG(0x00B60x0003); //HSVSPCLK=0 Bit[1:0]=11=24bpp //Delay Timeing //SSD2828_Write_REG(0x00C40x0001); //Enable BTA SSD2828_Write_REG(0xC90x2302); //p1: HS-Data-zero p2: HS-Data- prepare --> 8031 issue HAL_Delay(5); SSD2828_Write_REG(0xCA0x2302); SSD2828_Write_REG(0xCB0x0510); SSD2828_Write_REG(0xCC0x1005); //0x100A????0A???? HAL_Delay(5); SSD2828_Write_REG(0xD00x0000); //HS TX Timer=0?????=0x0010 //MIPI Lane Configure //00 - 1 lane mode //01 - 2 lane mode //10 - 3 lane mode //11 - 4 lane mode SSD2828_Write_REG(0xDE0x0003); //2 Data Lane11=4LANE 10=3LANE 01=2LANE 00=1LANE SSD2828_Write_REG(0xD60x0005); //Bit[7:2]:Send X(now=1) Packet in Blanking Period Bit[0]:1=R.G.B/0=B.G.R SSD2828_Write_REG(0xB70x024B); //0x024B选择TX_CLK作为MIPI时钟0x026B选择RGB的PCLK作为MIPI时钟 HAL_Delay(100); } 读取ID函数 void SPI5_READ_ID(void) { SSD2828_Write_REG(0xd4 0x00FA); printf("2828 ID: 0x%x\n"SPI_READ()); }