stm32
宇宙379
C/C++,VC++
展开
-
排线太长导致数据不对
模拟SPI,DAC,输出波形有时有,有时木有。 示波器SCLK等 杂波太大。最后发现是排线太长的原因,无语。原创 2016-11-28 21:22:19 · 1597 阅读 · 0 评论 -
keil ucosiii工程改为 iar工程
用的是STM32F4探索者的 例6-1 UCOSIII任务创建和删除。 1. 第一步,新建iar工程并设置选项: device : ST STM32F407IG debugger: J-link 默认是Simulator. library config : Full 而非 Normal. 宏定义: USE_STDPERIPH_DRIVER原创 2017-08-01 10:27:33 · 778 阅读 · 0 评论 -
STM8 STM8S208MB 入门
1.下载安装IDE编译环境 stm8需要安装IAR for STM8而不是IAR for STM32。 IAR for STM8 v2.20.2破解版 http://www.ddooo.com/softdown/94457.htm 下载的是一个网盘地址,再次从网盘地址下载即可。 按照上面网址所说的按照破解即可。 2. 下载stm8固件库 en.stsw-stm8069.z原创 2017-08-30 16:35:36 · 4222 阅读 · 0 评论 -
AD5933使用
AD5933使用I2C配置寄存器,第一步确保i2c通讯正常。 参数设置: 起始频率,步进频率,频率点数。reg82-reg89等寄存器; 反馈电阻值、输出电压范围和增益PGA都需要合适的设置,不能超过ADC的线性范围。 系统时钟MCLK:可以选用内部和外部。默认内部是16.776 MHz, 选择外部需要编程。时钟的数值在编程中是需要使用的。reg8F是状态寄存器,有数据有效标志位和数据扫原创 2017-09-12 16:54:30 · 14569 阅读 · 7 评论 -
程序下载不运行,单步调试或复位运行正常
分析可能有以下原因: 1. 供电的问题(jlink) 排除; 2. boot引脚问题 暂时排除,手头没示波器没法测 3. 固件库的问题 老固件库一样的问题,排除! 4. 外部晶振的问题 8M还是25M,修改了一样? 改时钟配置代码。 5. 地址问题,dfu啥地址设置不对!并没有,排除。 6. 硬件问题。最后总结是硬件问题,可能是boot引脚(应该不是),也可能是晶振问题。 这原创 2017-11-07 16:48:05 · 2195 阅读 · 0 评论 -
Error[As001]: Invalid syntax
用了stm32f4xx 的最新1.8.0,在iar7上很多错误,改为iar8.11.1无误,原来是版本问题。 __STATIC_INLINE void NVIC_SetPriorityGrouping(uint32_t PriorityGroup)原创 2017-11-06 17:55:13 · 839 阅读 · 0 评论 -
stm32f4 HSE_VALUE修改
stm32f4xx.h默认25M外部晶振(HSE):#if !defined (HSE_VALUE) #define HSE_VALUE ((uint32_t)25000000) /*!< Value of the External oscillator in Hz25000000 */#endif /* HSE_VALUE */如果改为8M或其他值,需要修改此宏定义。 默认PLL原创 2017-12-20 13:39:25 · 4642 阅读 · 0 评论 -
Fatal Error[Pe1696]: cannot open source file "core_cmInstr.h"
keil5编译木有问题,iar7编译出现此错误。 stm32f10x.h 中:include “core_cm3.h”core_cm3.h 中:include “”core_cmInstr.h”发现keil按照目录下有:core_cmInstr.h 和 core_cmFunc.h两个头文件,拷到iar7目录即可。Error[Ta041]: Cannot call intrinsic func原创 2016-10-21 09:47:05 · 10781 阅读 · 1 评论 -
ADIS16448 配置
void ADIS16448_Init(void){ GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd( RCC_APB2Periph_GPIOB, ENABLE );//PORTB CLK //PB12 SENSOR_MPU_SPI_CSN 片选 GPIO_InitStructure.G原创 2017-12-14 09:43:07 · 2128 阅读 · 3 评论 -
IAR 菜单栏消失
iar8 拖动了菜单栏,再次打开工程够,菜单栏就丢失了。小bug。 删除settings目录下的wsdt文件即可。我可能是第一个发现此问题解决方法的人,百度,bing,google都没找到答案。 哈哈。原创 2021-01-11 15:03:22 · 16604 阅读 · 30 评论 -
Timeout while programming sector
iar8: May be too much breakpoints .原创 2018-02-06 16:22:20 · 1733 阅读 · 3 评论 -
stm32f407 mii
void ETH_GPIO_Config(void){ GPIO_InitTypeDef GPIO_InitStructure; /* Enable GPIOs clocks */ /* RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA | RCC_AHB1Periph_GPIOB | RCC_AHB1原创 2018-02-06 16:23:20 · 1407 阅读 · 1 评论 -
IAR Terminal I/O printf调试输出
1.设置#include <stdio.h>Options->GeneralOptions->LibraryConfiguration设置了semihosted 和via semihosting(swo). 2. Printf不能被重定向到串口,否则将导致Terminal I/O无数据输出。 3. 打开Terminal I/O窗口,查看输出 view ->Terminal I/O#ifdef原创 2018-02-28 13:53:14 · 6068 阅读 · 0 评论 -
CubeMX 笔记
1.下载更新代理设置 Help-UPdater Settings: 如果下载不了,可设置为Use System Proxy Parameters. 2. 步骤 创建工程-选择模块和功能(GPIO,i2c,spi,dac,tim…fatfs,freeertos,libjpeg,lwip…)-设置Clock。 默认是内部ISE-configuaration :设置dma,gpio,nvic原创 2018-02-28 14:22:53 · 412 阅读 · 0 评论 -
Hardware reset with strategy 0 was performed
外部osc频率和以前不一样。define HSE_VALUE ((uint32_t)25000000)define PLL_M 25define HSE_VALUE ((uint32_t)8000000)define PLL_M 8原创 2018-02-23 14:30:26 · 1533 阅读 · 1 评论 -
stm32 编码器配置
stm32f103void TIM4_Encoder_Config(void){ GPIO_InitTypeDef GPIO_InitStructure; TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure; TIM_ICInitTypeDef TIM_ICInitStructure; //PB6: A TMI4_原创 2018-02-23 15:41:06 · 4302 阅读 · 3 评论 -
the specified license key not be verified as belonging to this host
Iar 安装出现的: 1.破解时需要把hardware id 字母小写改为大写,改后模糊没关系,双击editbox就可以显示了。 2.需要以管理员身份运行破解包,不然hardware id 也是错误的。原创 2017-08-10 17:43:24 · 1256 阅读 · 1 评论 -
keil ucosiii工程改为 iar工程
用的是STM32F4探索者的 例6-1 UCOSIII任务创建和删除。 1. 第一步,新建iar工程并设置选项: device : ST STM32F407IG debugger: J-link 默认是Simulator. library config : Full 而非 Normal. 宏定义: USE_STDPERIPH_DRIVER原创 2017-07-20 16:37:43 · 641 阅读 · 0 评论 -
安装IAR for ARM 4.42a的问题
1.iarid.exe 需要以管理员身份运行,得到ID。不以管理员身份运行和以管理员身份运行结果不一样,很奇葩。 2.另外lic.txt中需要搜索arm关键字的一组。原创 2016-08-12 15:42:49 · 2283 阅读 · 0 评论 -
IAR fatal error:unknown exception in drier7
版本: IAR7.10.1.6735. 出现此问题后,iar就自动退出了。 不知道什么问题,可能是断点过多。 板子重新上电,拔插jlink,就可以了。原创 2017-06-30 10:18:01 · 1769 阅读 · 0 评论 -
mpu6500
1. First read the Register 117. Register 117 – Who Am I Reset value: 0x70 2. Reset mpu6500 0x6B,0x80,//Reset the internal registers and restores the de原创 2016-12-22 11:45:20 · 8818 阅读 · 0 评论 -
JTAG error:can not read register while CPU is running
拔插线缆 ,重新上电。 修改jtag为swd什么的都没用。最后单步调试发现CubeMX生成的工程调用了 /**DISABLE: JTAG-DP Disabled and SW-DP Disabled */ __HAL_AFIO_REMAP_SWJ_DISABLE(); 禁止了jtag的调试功能。无语啊。原创 2017-06-26 17:41:05 · 11980 阅读 · 5 评论 -
CubeMx SPI
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_4,GPIO_PIN_RESET);//CS PA4 HAL_SPI_Transmit(&hspi1,Data1,1,100); HAL_SPI_Receive(&hspi1,RxData,1,100); HAL_GPIO_WritePin(GPIOA,GPIO_PIN_4,GPIO_PIN_SET);、CubeMx H原创 2017-06-27 11:46:38 · 711 阅读 · 0 评论 -
stm32单步调试正确,全速运行错误
模拟i2c的时候出现的问题。 单步走延时较大(全速跑只有程序设置的时延),导致程序全速运行无输出。 加大时延即可。原创 2017-06-30 10:44:07 · 11212 阅读 · 2 评论 -
nRF52832
nRF52832 是BLE(Bluetooth low energy) 低功耗蓝牙 芯片中较好的一款。 nRF52832是CortexM4F内核的单片机,同stm32公司的产品类似,不过里面增加了一个蓝牙模块。 1. 网盘 https://pan.baidu.com/share/link?shareid=2024984391&uk=4228226257#list/path=%2FnRF52%2原创 2016-10-28 14:45:40 · 11378 阅读 · 4 评论 -
stm32f103 Flash 读写
const static uint32_t FLASH_START_ADDRESS = 0x0800FC00; //f103c8t6 The last page(63) 0x0800FC00-0x0800FFFF volatile FLASH_Status FLASHStatus = FLASH_COMPLETE; uint32_t ReadFlash(uint32_t offset) {原创 2016-08-30 17:55:21 · 4780 阅读 · 0 评论 -
IAR7 Warning: _vector_table symbol not found.
打钩即可!转载 2016-09-27 15:23:20 · 2558 阅读 · 0 评论 -
DFU 中断不进入app的问题
没有用按键进入DFU模式,直接在timer中定时几秒钟进入,如果app没有中断,一切正常。 但是有了中断,app就运行不正常了。 在dfu程序中断中不能直接跳入app程序,需要用一个标志来判断。一点要注意flash起始地址和中断向量地址的位置要改对,flash起始地址有没改对很简单,用J-Flash看下hex即可。中断向量地址对不对就不好判断了,可以写个简单的程序看中断进入没。程序中绝对不能原创 2016-09-28 20:03:20 · 981 阅读 · 0 评论 -
Flash loader: Failed to setup call to 'FlashInit'"
芯片木有选对,导致Flash loader文件不对。原创 2016-09-09 19:48:33 · 2377 阅读 · 1 评论 -
JTAG Timeout during adaptive clocking
网上说改速度什么的,没效。后来发现原因是我先用J-Flash连接了,而没有Disconnect. Disconnect后再下载就可以了。原创 2016-09-01 10:29:41 · 1271 阅读 · 0 评论 -
Could not write Ctrl/Stat register.
iar,keil混用的问题? 或者是程序问题,把jtag引脚当成了普通io引脚,第一次程序烧写进去成功,第二次以后都不可以烧写了(因为程序已经在运行,jtag引脚被占用)。 解决方法很多,可以设置boot重新烧写,或用串口烧写;或者用其他swd方式连接并擦除程序(J-Flash-arm)。原创 2016-08-24 13:54:21 · 1876 阅读 · 0 评论 -
sdo is constant hign
很久前下载STM32程序时发现这个问题,下载不进去。 估计下载线中哪根线出问题了,电压不支持。 解决方法1,2是网上的,3是自己乱摸索发现的,不是很好的方法。1. 重新上电或者拔下jlink的USB数据线再插上就好了;2. 启动更改方式,下载成功后改回即可;3. 出现问题,打开j-flash-target菜单-secure chip,unsecure chip,就可以了。原原创 2015-03-25 15:36:10 · 611 阅读 · 0 评论 -
STM32经验
1. STM32不过是一块芯片,一块原创 2014-10-21 23:07:21 · 1178 阅读 · 1 评论 -
JLink NO JLINK DEVICE FOUND
stm32下载程序发现错误: NO JLINK DEVICE FOUND搞了半天莫名其妙好了,也不知道怎么回事,不过应该是以下几种情况。1. 不要带电插拔2. 更新JLink驱动导致的3. 换个USB口试试4. 重新安装keil和Jlink驱动5. 重启原创 2013-10-01 09:09:34 · 41674 阅读 · 0 评论 -
Arm简介
最近想学学Arm,找了点资料,共享下。ARM简介1. ARM只卖知识产权,不卖(物理的,实质的)产品。2. 全世界100多家公司购买了ARM授权,包括三星,Freescale、NXP Semiconductors、STMicroelectronics、Texas Instruments ,Toshiba,Analog Device,atmel,microsemi...具体参看ARM原创 2013-08-14 19:11:03 · 1428 阅读 · 1 评论 -
could not write cpu register R15
iar: link-config-link command file error.TOOLKITDIRTOOLKIT_DIR\config\lnkarm.xcl PROJDIRPROJ_DIR\User\lnkarm_flash.xcl原创 2016-08-23 18:12:56 · 1127 阅读 · 0 评论 -
USB Class-Specific Requests
Set Report Allows the host to send a report to the device. Offset Field Size Value Description 0 bmRequestType 1 21h 4..0: Recipient …00001 Interface 6..5: Type .01….. ...原创 2018-05-04 16:10:23 · 1430 阅读 · 0 评论