
1.STVD使用STM8S005K6T6C内部data eeprom进行数据写入操作,使用st-link V2(B2013 21)进行仿真调试,发现寄存器FLASH_CR2写入1是值仍为0x00,发现无法写入值;对data eeprom进行MASS KEY后,发现FLASH_IAPSR变为0x4a,按手册应为DUL置位,但PUL也同步变为1;对FLASH_IAPSR的PUL,DUL进行清零无效,仍为0x4a; 2.PB0口配置上拉输入做按键电平检测,按键按下变为低电平,弹起后IO口通过万用表测试为高电平,确认硬件电路无问题,但PB_IDR读此IO一直为低电平; |
请教下,STM8/STM32 products 有2D marking 和没有2D marking的工艺有差别吗?
IAR无法跳转定义,系统库文件文件名后有[RO]
初次接触STM8,请问在STVD中,为什么这个Struct会报错
正在使用stm8作为从机与esp32进行i2c通讯,但是发现主机扫描的i2c地址与stm8从机设置的i2c地址不一样,请问如何解决?
STMS005K6T6 如何采集内部参考电压。
stm8s003 adc中断和通道切换的问题
IAR代码编辑太费劲了,想问一下有没有好的方法,试了VScode但是头文件老是报错,调了很久也没调好,想换个方法了。
想问一下各位大佬,IAR下载调试代码时出现 warning: is an illegal data sample expression IAR是什么意思啊?
stm8s批量烧录问题
STM8S标准库TIM1编码器功能不计数,请大师帮我看看
stm8sfwlib2.31\STM8S_StdPeriph_Lib\Project\STM8S_StdPeriph_Examples\FLASH\FLASH_DataProgram
2. IO 读数建议仔细检查一下对应的顺序,包括寄存器观测的顺序,必要时可以换一块板对比验证一下。
FLASH->CR2|=(u8)0X40;//wpg set 1
FLASH->NCR2&=(u8)0XBF;//nwprg set 0,able word programing
do { FLASH_DUKR=0XAE; FLASH_DUKR=0X56; }while((!(FLASH->IAPSR&((u8)0X08)))&&(ee_write_time<10));//erase write-protection
ee_write_time=0;
for(write_times=0;write_times<4;write_times++) { ((u8 )(0X4000+write_times))= ((u8 )(data+write_times)); }
while((!(FLASH->IAPSR&((u8)0X04)))&&(ee_write_time<10));//write eeprom delay 100ms
FLASH->IAPSR &=(u8)0XF7;//Clear DUL flag bit,enter data write protection
FLASH->IAPSR &=(u8)0XFD;//Clear PUL flag bit,enter flash write protection (void)FLASH->IAPSR;
以上是EEPROM环节字写入,内存可以正确写入数据,但是调试时对应寄存器值异常如前文所述