※ IIC有两条线 时钟线SCL/数据线SDA ※ 速率: 普通模式:100k bit/s 快速模式:400k bit/s 高速模式:3.4M bit/s ※ 一个主机 n个从机 ※ 发送到SDA数据线上每个字节为8位 高位在前 ※ 8位数据后跟着一个答应位ACK 发送和读取响应信号 起始位和停止位 ...
分类:
其他好文 时间:
2019-10-01 14:09:30
阅读次数:
158
复用功能分复用输入,复用输出,STM32芯片内部集成多种模块,如GPIO、串口、i2c等,为使IO端口支持这些模块,厂家对IO端口进行扩展,同一个端口通过设置寄存器会有不同的功能。如下图IO结构图: STM32的复用功能由两个高、低的均为32位的寄存器组成: (1) GPIO 复用功能低位寄存器 ( ...
分类:
其他好文 时间:
2019-10-01 11:49:58
阅读次数:
311
中小型企业通用自动化运维架构 python发送邮件 ...
分类:
其他好文 时间:
2019-09-30 22:07:17
阅读次数:
102
1、中断 STM8的外部中断和STM32不一样,每个端口PX只有1个中断 2、ADC 1)Additional AIN12 analog input is not selectable in ADC scan mode or with analog watchdog. Values converte ...
分类:
其他好文 时间:
2019-09-30 14:27:47
阅读次数:
116
以下分享17种单片机常用电路设计模块,包括:双路232通信电路3线连接方式,三极管串口通信,单路232通信电路,USB转232电路等。 1、双路232通信电路3线连接方式,对应的是母头,工作电压5V,可以使用MAX202或MAX232. 2、三极管串口通信 本电路是用三极管搭的,电路简单,成本低,但 ...
分类:
其他好文 时间:
2019-09-29 14:26:13
阅读次数:
104
在串口数据发送操作中,代码一般是这样写的: 今天我们就来探讨一下——while(USART_GetFlagStatus(USARTx, USART_FLAG_TXE) == RESET); 到底有什么作用 首先看一个标准库文件:stm32l1xx_usart.c中对这个函数的描述: 暂且不管函数的内 ...
分类:
其他好文 时间:
2019-09-28 17:38:33
阅读次数:
134
1、 SYSCLK时钟源有三个来源:HSI RC、HSE OSC、PLL; 2、 MCO[2:0]可以提供4源不同的时钟同步信号; 3、 GPIO口貌似有两个反向串联的二极管用作钳位二极管; 4、 总线矩阵采用轮换算法对系统总线和DMA进行仲裁 5、 ICode总线,DCode总线、系统总线、DMA ...
分类:
其他好文 时间:
2019-09-27 15:09:54
阅读次数:
169
端口复用: STM32有很多的内置外设,这些外设的外部引脚都是与GPIO复用的。也就是说,一个GPIO如果可以复用为内置外设的功能引脚,那么当这个内置外设使用的时候,此时是不可以作为外部外设使用的,此时这个端口就叫做被复用了。 比如一个端口可以作为输入输出(使能端口时钟),同时它也可以作为串口使用( ...
分类:
其他好文 时间:
2019-09-27 15:03:29
阅读次数:
91
修改使用 heap_size 增大其实就是堆栈的不足。好好分析下程序堆栈,如下:函数的局部变量,都是存放在"栈"里面,栈的英文是:STACK.STACK的大小,我们可以在stm32的启动文件里面设置,以战舰stm32开发板为例,在startup_stm32f10x_hd.s里面,开头就有:Stack... ...
分类:
其他好文 时间:
2019-09-24 10:16:53
阅读次数:
181
使用 stm32f4 调试uart 接收, 使用 空闲中断,dma 双缓冲模式,有以下几点需要注意的。 1. 调试的时候断点不要打在 if (USART_GetITStatus(USART6, USART_IT_IDLE) != RESET) 这种语句上面,要打在 if 的代码块里面。mdk 调试的 ...
分类:
其他好文 时间:
2019-09-21 21:41:39
阅读次数:
136