标题: 关于单片机+霍尔传感器的测速程序问题 [打印本页]
作者: 2844304776 时间: 2020-5-23 19:49
标题: 关于单片机+霍尔传感器的测速程序问题
以下这部分是霍尔传感器测速,想请教大家帮我改成汇编。
void EXINT0() interrupt 0
{
count++;
}
void time0() interrupt 1
{
uchar m;
TH0=0x3c;
TL0=0xb0; //50ms
m++;
if(m>=10)
{
m=0;
Mileage=Mileage+Velocity*500/36; //里程m=速度km/h*1000*5/3.6
Velocity=count/5;//将100ms内的脉冲数
count=0;
}
}
作者: f556 时间: 2020-5-29 15:28
就用C很清晰,或者把这个嵌入到你的汇编中
作者: TTQ001 时间: 2020-5-30 01:51
为什么必须使用汇编语言进行编码? C语言可能更易于修改和审查。
作者: 顾全gq 时间: 2020-5-30 08:56
可以反汇编一下
作者: 烈火 时间: 2020-5-30 10:45
P4SW=0xff;
TMOD=0x01;
TH0 = 0xee;
TL0 = 0x00;
EA = 1;
ET0 = 1;
PT0=1;
PX0=0;
PX1=0;
EX0=1;
IT0=0;
EX1=1;
IT1=1;
TR0 = 1;
作者: 2844304776 时间: 2020-6-6 11:50
啥意思啊,大哥解释一下
作者: 1020344535 时间: 2020-6-16 23:30
懂debug反汇编叭
作者: hxhxss 时间: 2020-6-23 08:48
嵌入可能可以‘
作者: Andersonliu 时间: 2020-6-23 15:19
C语言多清晰啊,你这段代码很吃运行速度么?
作者: 阿羊 时间: 2020-12-9 20:37
大哥您这个单片机+霍尔传感器的测速程序可以都分享出来吗,或者您有没有做仿真,小弟最近在做相关的DIY小玩意,谢谢大哥了
作者: suncat0504 时间: 2020-12-10 10:29
改成汇编的时候,需要你考虑数据类型。这里就是要考虑定时周期内(100ms)采集的计数值,如果超过了一个字节表达的最大值,就需要考虑用几个单元计算的问题了。这一点尤其要注意。涉及除法和小数了,就更得注意了。
与其手写,还真不如参照Keilc中编译时产生的汇编代码。
使keilc编译产生汇编代码的选项,在target的Option页中Listing选项Tab中有一个“Assembly Code”,勾选后,确定、关闭这个设置页,重新编译工程。然后在这个工程所在的目录下,用文本编辑器打开扩展名为LST的文件,你会看到keilc为你生成的整个工程的汇编代码。有和C语言代码行号对应的说明,很方便的。
欢迎光临 (http://www.51hei.com/bbs/) |
Powered by Discuz! X3.1 |