2020年九月第一周学习内容
- C8T6J-link下载及软件配置
- USB转TTL接线
- stm32唯一ID读取
- 浮动清除注意事项
j-link下载连线,及软件配置
连线:
软件配置
将startup_stm32f10x_hd.s换成startup_stm32f10x_md.s,然后配置目标选项。
由于这个用的是C8T6所以选C8。
将HD改为MD。
这个选J-link下载。
这里选SW模式。
这里要设置成128k,高频率下载可能不通过。
USB转TTL接线
A9 --RXD
A10 --TXD
VCC --VCC(V3.3)
GND --GND
stm32唯一ID读取
#include "sys.h"
#include "usart.h"
#include "delay.h"
#include "key.h"
u32 get_ID[3];
//读取ID号,每次读取32位
void GetSTM32MCUID()
{
get_ID[0]=*(vu32*)(0x1FFFF7E8);
get_ID[1]=*(vu32*)(0x1FFFF7EC);
get_ID[2]=*(vu32*)(0x1FFFF7F0);
}
int main(void)
{
u16 times=0;
Stm32_Clock_Init(9); //系统时钟设置
delay_init(72); //延时初始化
uart_init(72,9600); //串口初始化为9600
GetSTM32MCUID();
while(1)
{
//发送任意数据给串口时,返回ID号 高位 --- 低位
if(USART_RX_STA&0x8000)
{
printf("ID : ");
printf("%X ,",get_ID[2]);
printf("%X ,",get_ID[1]);
printf("%X ,",get_ID[0]);
USART_RX_STA = 0 ;
}else
{
//循环输出,显示程序运行中
times++;
if(times%500==0)printf("请输入数据,以回车键结束\r\n");
delay_ms(10);
}
}
}
输出结构显示:
最后一组数据是七位,猜测最后一组的高四位为0,数字输出的时候不显示。
浮动清除注意事项
上一个盒子使用浮动且未设置高度,一定要注意继续写盒子的时候,先清除上一个的浮动。
.clearfix:after,
.clearfix:before {
content: "";
display: table;
}
.clearfix:after {
clear: both;
}
.clearfix {
/* IE6、7专有 */
*zoom: 1;
}
在需要清除浮动的盒子上加入clearfix类名。
不要将全局盒子都浮动来达到布局的目的,注意使用标准流和浮动相结合。