1. 51单片机怎样从一个非常大的数字里面提取个十百千万位等......
下面举例说明万千百十个的表示方法。其实很简单,用除法取余就行。
i=a/b ;//取商
i=a%b;//取余
方法很多,以下是一例:
unsigned int wan,qian,,shi ,ge,
wan=i/10000;//除一万取商,是万位。
qian=(i/1000)%10;//先除1000,取商,商的个位是千位,所以再除10 取余。
=(i%100)/10%10;//先除100,取商,商的个位是百位,所以再除10 取余。
shi=(i%100)/10;//先除100,取余,商再除10 取余。
ge==(i%10;//除10取余。
不过阁下要知道整形量最大是65535,假如你的数据达到999999,你就要定义长整形量了。
unsigned long int i=999999;
如当I<10的时候 P0=table[i/10]; 个位
这样的算法 我写的不行 ,请高手写下 ,我看下我的出错在什么地方
i/10是取商啊,怎么可能是个位呢?是十位。I<10的话,一定是0了。
移位的方法不行,移位是2进制运算。你这个是十进制。
2. 在编单片机C语言的时候,怎么提取某一时刻定时器的当前值
随时读定时器就是提取了,问题是提取的当前值,怎么能看到啊,什么时候提取呀,要有什么条件?
提取方法很简单,以T0为例
设变量x为16位整型
x=0;
x=TH0;
x<<=8;
x=x+TL0;
提取结果在x中,是16位的。
3. 写入单片机的程序能否提取出来,我说的是51如果如果能具体怎么做
51系列的单片机如果没有写入保护的话是可以的,需要使用并口的编程线也就是ISP线连接,然后读取芯片到缓存中,再另存为***.hex文件,最后找个反编译软件翻译成汇编,如果要弄成C只能靠人工一点一点来了。
4. 如何获取第三方单片机上的数据
你想读取第三方单片机数据控制别的外围电路,这个不可行的,除非你有第三方单片机源程序,在源程序基础上增加功能,如果你想使用第三方硬件和APP软件,找人解密单片机程序把二进制文件提取出来,可以山寨别人产品,如果产品有序列号加密,这样连接APP就不成功了,这种产品一般APP和单片机通讯数据都是加密的,如果没有加密,破解协议自己做过单片机程序,如果加密了可以按照功能重新开发。
5. 单片机字符串怎么提取你需要的数据
如果01恰好是一个字节,FF恰好是一个字节,将数据存储到数组中,确定偏移量直接读取啊。
6. 写入单片机内部的程序 可以提取出来吗
51系列的单片机如果没有写入保护的话是可以的,需要使用并口的编程线也就是isp线连接,然后读取芯片到缓存中,再另存为***.hex文件,最后找个反编译软件翻译成汇编,如果要弄成c只能靠人工一点一点来了。
7. 用单片机用串口提取一帧数据
通过 串口 读数据会否??
会的话,那就是 不知道 如何 判断 符不符合 AA____BB 的格式咯:
if(RecData & UserCode == UserCode) {符合格式执行内容},其中,RecData 是接收到的数据,UserCode 是 AA0000BB 的值,比如 A=1,B=0,那UserCode 就是 0xC0(最好使用 宏定义);
格式符合后,读取中间 的代码值:
comm=(RecData &0x3c)>>2; 其中 0x3c 是 屏蔽 AA、BB位的值(0011 1100);左移2位是将 代码值 放到最低位(0000 DDDD)。
8. 如何用单片机从外部存储设备提取数据
汽车发动机本身有一路信号可以识别发动机是否正在工作,
但不是从电瓶正负极上得到
9. 51单片机如何存储和提取信息
STC51单片机自带flash数据存储,芯片文档有很详细的使用说明。
10. 单片机里面的数据能提取出来吗
我以前试过,51单片机里float和double储存的只到小数点后6位,就像你说的5123456789在51单片机里是以5.123456e+9储存的,也就是5123456000,后边的都丢失了,所以简单的程序应该是不可能算到你说的精度的。在32位单片机上用long
long
可以储存差不多20位的整数,但是keil
51是不支持的。
你用这么大的数干什么?不行就换一种方法吧。