打印
[国产单片机]

松翰单片机C语言RollingCode怎么用?

[复制链接]
7047|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
老鱼探戈|  楼主 | 2010-10-9 18:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 老鱼探戈 于 2010-10-9 19:46 编辑

我想用Sonix 的RoolingCode来做器件ID,用于自动对码,这样的话就外面不用做硬件ID了。
     现在用C的话,可以写进去但是不知怎么读出来?
     用 汇编可以通过查表的方式读写得到RoolingCode以运用。


    求大侠指点,谢!



2楼的这个贴讲的是汇编和烧录是的注意点。
我要的是在C语言时,怎么再程序中读取RollingCode。

相关帖子

沙发
McuPlayer| | 2010-10-9 19:05 | 只看该作者

使用特权

评论回复
板凳
老鱼探戈|  楼主 | 2010-10-9 19:45 | 只看该作者
此贴可参考:
https://bbs.21ic.com/icview-198913-1-1.html
McuPlayer 发表于 2010-10-9 19:05


这个贴讲的是汇编和烧录是的注意点。
我要的是在C语言时,怎么再程序中读取RollingCode。

使用特权

评论回复
地板
McuPlayer| | 2010-10-9 21:17 | 只看该作者
C和汇编是一个道理的

使用特权

评论回复
5
谈的元| | 2010-10-9 22:35 | 只看该作者
本帖最后由 谈的元 于 2010-10-9 22:40 编辑

滚动码的目的就是得到不同的程序而已,

关键烧写滚动的地址设置,你C写好后,看汇编,想程序哪个变量变化,就将烧写地址设置在那里
比如:
void main()
{
     s1=0x11;
     if(s1==s2)  //假设s2的大小为无线接收到的 数据,代码略
     {
             s3=1;
        }
     
     
   
}

使用特权

评论回复
6
谈的元| | 2010-10-9 22:38 | 只看该作者
你找到S1=0X11的汇编在的行,找到 该句MOV  A,@0X11;的地址,烧写滚动地址就设置在此,并且设置滚动为加1,那么烧写下一个芯片的 程序实际就为
void main()
{
         
     s1=0x12;
     
     if(s1==s2)  //假设s2的大小为无线接收到的 数据,代码略
     {
             s3=1;
     }
     
     
   
}

使用特权

评论回复
7
老鱼探戈|  楼主 | 2010-10-11 12:46 | 只看该作者
汇编的写法:
写入:
        ORG         781H
Rlling:
        .Rolling_Code  0x02        //TURE
读取的时候就直接查表:
ReadRoolingCode:
         _MOVC  Rling,#0
         mov        Temp0,a
         _movm        Temp1,R
         _MOVC  Rling,#1
         mov        Temp2,a
         _movm        Temp3,R
         ret


但是C语言的时候:
写:
#pragma RollingCode(0x781,0x02)

在读取的时候要嵌入汇编直接读取0x781的数据(试过不行)?

使用特权

评论回复
8
老鱼探戈|  楼主 | 2010-10-13 08:50 | 只看该作者
帮帮忙啊,现在做2.4G遥控类的东东,客户要求同频自动对码且没有硬件ID。重新上电不再对码。。

使用特权

评论回复
9
McuPlayer| | 2010-12-24 13:19 | 只看该作者
对码后要保存在EE中,这样掉电就不怕了

使用特权

评论回复
10
lsz198477| | 2011-1-3 17:34 | 只看该作者
同意楼上

使用特权

评论回复
11
zkn866| | 2011-6-9 12:38 | 只看该作者
同意楼上

使用特权

评论回复
12
cmyldd| | 2016-3-14 23:24 | 只看该作者
McuPlayer 发表于 2010-12-24 13:19
对码后要保存在EE中,这样掉电就不怕了

问题是,这单片机没有EEROM啊,外挂成本不允许

使用特权

评论回复
13
mzh1668| | 2016-3-23 15:03 | 只看该作者
加一个文件头,和两条指令就可以了

使用特权

评论回复
14
mzh1668| | 2016-3-23 15:04 | 只看该作者
加一个文件头,和两条指令就可以了

使用特权

评论回复
15
mzh1668| | 2016-3-23 15:05 | 只看该作者
加一个文件头,和两条指令就可以了

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

11

主题

5268

帖子

251

粉丝