欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

单片机与STM32问题及解决

时间:2023-04-25

1.单片机中汇编指令主要是通过地址找寻数据,对数据进行操作,因此汇编中数据与地址是分不开的。

2.multisim软件中没有找到常见三级管如9014.可以找到对应模型修改参数替代。

3.keil安装stm32 pack的时候出现报错:keil安装stm32显示no uvision systemviewer file created的解决方案是,在安装stm32packe,选择下载好的pack安装是要关闭keil的。在keil中pack图标中导入则不用关闭软件.

4.注意数组格式:DB与字节数之间没有逗号。

5 DB 的意思是声明字节

Num_Tab: DB 30H,31H,32H,33H,34H,35H,36H,37H,38H,39H,0AH,0DH

(Declare Byte)

6.堆栈作用:保护数据恢复现场,一般配合中断向量使用:

PUSH ACC JB RI,Is_Receive clr TI RETIIs_Receive: CLR RI MOV A,SBUF LCALL SendoneByte pop ACC RETI ;中断地址返回。

指令RLC:带进位左移,寄存器C存放数字最高位。左移后会补最低位 RLC:不进位左移即不补零。

7.堆栈理解:

MOV SP,#5FH ;SP指针指向5FHMOV A,#100 MOV B,#60 PUSH ACC ;入栈SP+1=60HPUSH B ;入栈SP+1+1=61HPOP B ;出栈SP-1=60HPOP ACC ;出栈SP-1=5FH;必须遵顼堆栈后进先出原则。如果变成:POP ACCPOP B ;则A与B的数值交换

8.ACC与A的区别

9.在进行调试时要先点击生成hex文件。否则会报错;*** error 56: can't open file

STM32:

1.安装STM32F3x系列存在的问题是安装没有成功。找不到头文件路径。

2打开keil的stm32项目时出现如下警告:

 解决方法:在对应的报错文件找到对应的行删除相关信息。

3.pack的安装在对应的pack下载安装即可。

4.出现错误:main222314.c(58): error:  #268: declaration may not appear after executable statement in block

即声明变量应该在可执行主函数前声明。

5.安装是stm32pack出现SVDC报错时可能是由于keil版本与pack不匹配。

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。