
STM32/STM8/KEIL
文章平均质量分 78
单片机使用
达则兼济天下SEU
这个作者很懒,什么都没留下…
展开
-
使用STM32CubeMX创建一个STM32工程
如何使用STM32cubeMX建立一个工程_渣渣池的博客-优快云博客_stm32cubemx创建工程对于新手 个人不建议使用STM32cubeMX去建立工程进入主题 工欲善其事必先利其器,1、先下载安装一个STM32cubeMX(ST官网www.st.com,各大电子社区也有,或者给我留邮箱我发你)2、安装好后打开,点击 “New Project”注:如果有弹出类似需要连接(connect)的提示,就进入连接一下,不然等一下生不成工程和库,3、选择你的开发的芯片系列型号...https://blog.c.原创 2022-03-04 09:32:55 · 347 阅读 · 0 评论 -
STM32的BOOT0和BOOT1
STM32一共有三种启动模式,在ST官网上下载的RM0008中,可找到启动相关的配置说明:翻译为中文:STM32三种启动模式对应的存储介质均是芯片内置的,它们是:1)用户闪存 = 芯片内置的Flash。2)SRAM = 芯片内置的RAM区,就是内存啦。3)系统存储器 = 芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段Bootloader,就是通常说的ISP程序。这个区域的内容在芯片出厂后没有人能够修改或擦除,即它是一个ROM区。在每个STM32的芯片上都有两个管脚BO..转载 2022-03-03 15:35:50 · 5919 阅读 · 3 评论 -
STM32F103的时钟配置源码学习记录
本文记录下看完正点原子战舰版的时钟配置视频后的理解,仅用作备忘。 时钟的配置源码在文件system_stm32f10x.c中。程序先通过判断使用的f10芯片的种类,选择你要的系统时钟频率SYSCLK。我用的芯片系统频率最高为72Mhz,芯片容量为大容量型,所以预编译后选择的是SYSCLK_FREQ_72MHz 72000000。 下面这段代码在时钟配置中没什么用,只是在以后的程序中可以通过SystemCoreClock来读出系统时钟的频率。 ...转载 2022-02-25 09:40:32 · 424 阅读 · 0 评论 -
stm32 ST-Link V2下载出现 No target connected问题
根据自己使用和其他工程师情况总结。开发环境:MDK5.26本来一直都很正常,突然就冒出这个问题系统:WIN10/WIN7显示“NO target connected“ 但是驱动没有问题,在设备管理器中显示出有stlink原因是配置了GPIOA的 14 13这两个口了 ”GPIOA_MODER复位后的值为:0x2800 0000,即将GPIO13\14配置为复用模式,但为什么在程序配置了GPIO13\14为输出,并且在目标芯片有复位的情况下也会引起SWD无法仿真、下载的问题。”解决.原创 2021-09-06 14:03:20 · 21333 阅读 · 6 评论 -
STM32用USART发送字符串,以USART_FLAG_TXE和USART_FLAG_TC怎么用
一:STM32用USART发送字符串void UART_Send_Message(u8 *Data){ while(*Data!='\0') { USART_SendData(USART1, *Data); while(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == RESET);//读取串口状态 Data++; }}void main(void){ u8 str_buf[500]; ...转载 2021-08-29 14:37:56 · 9241 阅读 · 4 评论 -
STM32F1的JTAG、SWJ作为普通IO引脚使用。禁用JTAG、SWJ。
STM32F1的JTAG、SWJ引脚,为 PA13/PA14/PA15/PB3/PB4。单片机复位后,默认功能为 JTAG、SWJ。而实际使用中,一般只使用 SWCLK、SWDIO这两个引脚做 Debug。其余的引脚可以空出来,重新定义为普通的 IO 来使用。PA13/PA14/PA15/PB3/PB4 想要定义为 普通IO,需要进行一些额外的重定义配置。1. 手册对JTAG、SWJ管脚的定义2. 引脚重映射分为以下几种情况#define GPIO_Remap_SWJ_No.转载 2021-04-12 11:41:34 · 3015 阅读 · 0 评论 -
STM32的IO端口高8位或低8位单独操作方法
stm32的IO端口都是16位的, 如果要单独操作某高8位或低8位, 则不是那么简单, 先看两张BSRR/BRR寄存器的图:据官方数据手册上面说, 这两个寄存器用于专门对ODR进行原子操作的位操作, 都是在置1的时候对某位有影响.举例说下怎么对IO端口赋值:1.对高8位/低8位/全部清零很明显, 这个只需要操作BRR寄存器即可: 对高8位清零:GPIOA->BRR = 0xFF00 对低8位清零:GPIOA->BRR = 0x00FF 全部...原创 2021-04-12 11:32:59 · 4870 阅读 · 0 评论 -
新手分享:MDK5.26新建工程步骤
转载于http://www.stmcu.org/module/forum/thread-600249-1-1.html https://blog.youkuaiyun.com/android_lover2014/article/details/59482431 本人也是接触stm32没多久,之前用的MDK是5.1,现在用的是5.13,MDK5.0之前的版本(本人简称旧版)和之后的版本...转载 2019-01-12 17:54:56 · 1677 阅读 · 0 评论 -
固件和微码区别
固件一般指运行在Host内非主CPU上的其他部件中的可执行机器码,其可以是裸程序,也可以是操作系统+程序。如果是后者的话,OS可以是Linux这种,也可以是一些实时操作系统(Realtime OS,RTOS)。“非主CPU的其他部件”,典型比如IO HBA卡比如SCSI、SAS、FC卡,以及以太网卡、显卡、光驱、硬盘。这些设备内,都会有一个或者多个嵌入式CPU核心在运行固件从而发...转载 2018-05-24 19:55:33 · 10803 阅读 · 2 评论