想与各位探讨有关AVR的内部RC振荡器校准及补偿问题 (www.ourdev.cn)
你尚未登录 |登录 |快速注册 |退出 首页 酷贴 搜索 在线 本网站由阿莫电子邮购独家赞助
AVR (原ourAVR.com) 技术论坛 -> 分类清单 -> 想与各位探讨有关AVR的内部RC振荡器校准及补偿问题 跳转至: 未登录
↓↓ 想与各位探讨有关AVR的内部RC振荡器校准及补偿问题 回复数:57,点击数:15893
抱歉本贴的回复数太多,为了减轻网络流量,只显示帖子正文的前后各10个回复。本贴的正文内容中间隐藏了37个回复。你需要 点击此处 才能查看全部内容。
对为你带来的访问不便表示歉意。不过我们仍会坚持即使没有登录,仍能共享我们网站的所有资料。你没有 登录后就能消除这个访问上的不便(可增加到显示60个回复)。
如果你是新用户请先 注册。注册是免费的,并且手续简单只需要填写用户名与口令。
↓↓↓↓↓↓↓↓↓↓↓↓
【楼主位】 hotpower 菜农

积分:2136
派别:
等级:------
来自:西安大雁塔村
近日对M8L进行了一些演练,感觉比51---味道好极了...虽然PIC也...

但是由于系统的要求及M8L的特点,我在用RTC后,也只好用内部RC振荡器了.

当然内部RC振荡器确实对系统的稳定有一定的帮助,但频率漂移确实是件头痛的大事!!!

首害者就数串口了!!!

在5V系统下波特率为19200时,可以说不错,UBRR基本稳定在25.OSCCAL由SLISP校准.

但在3.3V系统下,保持OSCCAL不变时,随着外部条件的变化,UBRR从24(比5V的小)可以飘到21.

请大家探讨有关AVR的内部RC振荡器校准及补偿问题,能否找出一个简单可行之方法???

我琢磨了一个方法,正在验证中,先请各位发表高见...

-----此内容被hotpower于2005-01-09,00:42:34编辑过
 
2005-01-08,23:45:33
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【1楼】 machao
积分:5240
派别:
等级:------
来自:
  请做点好事,把官方提供的资料先整理告诉大家。
点击此处打开armok0127582.pdf
点击此处打开armok0127583.pdf
点击此处下载armok0127584.zip
点击此处下载armok0127585.zip
 
2005-01-09,00:47:33
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【2楼】 hotpower 菜农

积分:2136
派别:
等级:------
来自:西安大雁塔村
谢谢马老师...


今天大概看了一下,思路应该与波特率自动校准技术雷同吧...


-----此内容被hotpower于2005-01-10,00:11:56编辑过
 
2005-01-09,02:52:21
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【3楼】 hotpower 菜农

积分:2136
派别:
等级:------
来自:西安大雁塔村
马老师:

    学生我已实现AVR的内部RC振荡器自动校准及补偿...

实际上,在我第1次为RC郁闷时,就立即将INT0接RXD,...因为我搞过几年仪表计量...

我现在也只看了"一眼"您给的ATMEL官方提供的资料...因为我要自己从郁闷中走出来...

您自称是"另类",学生我肯定是"异类"了...

现在我不需要"外部激励RXD"来校准AVR的内部RC振荡器...

正在"烤机"和优化"算法"..."误人子弟"我也是做不出来的...
 
2005-01-09,19:44:23
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【4楼】 hotpower 菜农

积分:2136
派别:
等级:------
来自:西安大雁塔村
这是串口的"调节记录",准备优化算法,使其迅速逼近正确点...
从下面可以看出调节用了00:01:05....

软件测试设定:
/* UART初始化 */
void uart_init(void)
{
// OSCCAL = pgm_read_byte(osc_address);
// OSCCAL = 0xb1;//双龙校准值
 OSCCAL = 0xf0;//瞎写值
 UCSRB=(1<<RXEN)|(1<<TXEN)|(1<<RXCIE);//允许发送和接收
// UBRR=fosc/16/(baud+1);
// UBRRL=(fosc/16/(baud+1))%256;
// UBRRH=(fosc/16/(baud+1))/256;
// UBRRL = 21;//3.3V的漂移测定值
 UBRRL = 25;//标准值
 UBRRH = 0;
 UCSRC=(1<<URSEL)|(1<<UCSZ1)|(1<<UCSZ0);//8位数据+1位STOP位
}


?庺幚膹?巰庺幚?幤尷庼幚?幥尷庼梧D幦汤庼凄F庨睦析青f晤睦悟G?物睦悟G`"勿睦乞gp????乞gp?凄胬乞cp????F?F?DF俐?GzFzdG@FzG{凣@?G{G{ @?G{G{ 腉@?GyG{ 鬐@?gyGy 睦gyGy 4睦g=?g=G`?#=?'=?' ?#忇DDg1??#忇DDg寑#忇DDg2??D'8?? ?D'8?? ?D#8?? ?d#8?忄d#8?忄d#?#?d#?#?d#?d#?ddtt忄ddt?蜞d$t?蜞$$4?蜞$$4?蜞&$4蜞&$6筻$$?骮?骮?&骮仸6馺仸F馺仸V馺仸f馺仸v馺仸?鵣仸?鵣仸鵣仸鵣仮"鵣立2鵣立B鵣立R鵣`r?b㤘`z``reg@``z``zex@``z``zey@``zpazp`@ppzpqzpq@ppzpqzpr`ppzpqzps`00zp1:0t`00:01:05 00:01:06 00:01:07 00:01:08 00:01:09 00:01:10 00:01:11 00:01:12 00:01:13 00:01:14 00:01:15 00:01:16 00:01:17 00:01:18 00:01:19 00:01:20 00:01:21 
 
2005-01-09,20:07:49
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【5楼】 hotpower 菜农

积分:2136
派别:
等级:------
来自:西安大雁塔村
再给一组测试值,可以看出5V和3.3V的差异...

软件测试设定:

/* UART初始化 */
void uart_init(void)
{
// OSCCAL = pgm_read_byte(osc_address);
 OSCCAL = 0xb1;//双龙校准值
// OSCCAL = 0xf0;//瞎写值
 UCSRB=(1<<RXEN)|(1<<TXEN)|(1<<RXCIE);//允许发送和接收
// UBRR=fosc/16/(baud+1);
// UBRRL=(fosc/16/(baud+1))%256;
// UBRRH=(fosc/16/(baud+1))/256;
// UBRRL = 21;//3.3V的漂移测定值
 UBRRL = 25;//标准值
 UBRRH = 0;
 UCSRC=(1<<URSEL)|(1<<UCSZ1)|(1<<UCSZ0);//8位数据+1位STOP位
}



?庺幚膹?巰庺幚膹滥巰庼幚D幥尷庼梧D幦汤析凄F伍睦析青f晤睦悟G?物睦悟G`"勿睦乞gp????乞gp?凄胬F?cp????F?F?DF俐?GzFzdF@G{Gz凣@G{G{ 碐@?G{G{ 腉@?GyG{ 鬐@?gyG{ 睦gyGy 4睦g=?g=g`?g=?#=?' ?#忇DDg1??#忇DDg寑#忇DDg2??D'8?? ?D'8?? ?D#8?? ?d#8?忄d#8?忄d#?#?d#?#?d#?d#?ddt@?ddt?蜞d$t?蜞$$4?蜞$$4?蜞$$4蜞&$4筻$$?筻?骮儰$骮仸6馺仸F馺仸V馺仸f馺仸v馺仸?鵣仸?鵣仸鵣仮鵣仮&鵣立2鵣立B鵣立R鵣敛b鵣`r``zmg@``z``zex@``z``zey@p`zpqz`p@ppzpqzpq@ppzpqzpr`ppzpqzps`pp:01zp4 00:01:05 00:01:06 00:01:07 00:01:08 00:01:09 00:01:10 00:01:11 00:01:12 00:01:13 00:01:14 00:01:15 00:01:16 00:01:17 00:01:18 
-----此内容被hotpower于2005-01-09,20:13:46编辑过
 
2005-01-09,20:13:16
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【6楼】 hotpower 菜农

积分:2136
派别:
等级:------
来自:西安大雁塔村
再给一组测试值,可以看出好像都要经过1分零5秒后才能调节到正确值... 

马老师:
    从实验结果来看,中途调节OSCCAL是需要一定的时间才行???

软件测试设定: 



/* UART初始化 */
void uart_init(void)
{
// OSCCAL = pgm_read_byte(osc_address);
// OSCCAL = 0xb1;//双龙校准值
 OSCCAL = 0x80;//瞎写值
 UCSRB=(1<<RXEN)|(1<<TXEN)|(1<<RXCIE);//允许发送和接收
// UBRR=fosc/16/(baud+1);
// UBRRL=(fosc/16/(baud+1))%256;
// UBRRH=(fosc/16/(baud+1))/256;
// UBRRL = 21;//3.3V的漂移测定值
 UBRRL = 25;//标准值
 UBRRH = 0;
 UCSRC=(1<<URSEL)|(1<<UCSZ1)|(1<<UCSZ0);//8位数据+1位STOP位
}


徖$巰庺幚膹滥巰庼幚?幥尷庼卫D幦汤庼凄F庨睦析青f晤睦悟G?物睦悟G`"勿睦乞gp????乞gp?凄胬乞cp????F?F?DF俐?GzFzdG@G{Gz凣@G{G{ @?G{G{ 腉@?GyG{ 鬐@?GyGy 睦gyGy 4睦g=gyg`?'=?'=?' ?#忇DDg1??#忇DDg寑#忇DDg2??D'8?? ?D#8?? ?D#8?? ?d#8?忄d#8?忄d#?#?d#?#?d#?d#?ddtt忄ddt?蜞d$t?蜞$$4?蜞$$4?蜞$$4蜞&$4筻$&?骮?骮儲&骮仸6馺仸F馺仸V馺仸f馺仸v馺仸?馺仸?鵣仸鵣仮鵣仮&鵣立2鵣立B鵣立R鵣敛b鵣`z``zeg@``z``zex@``z``zey@``zpazp`@ppzpqzpq@ppzpqzpr@ppzpqzps`p0:0qz04 00:01:05 00:01:06 00:01:07 00:01:08 00:01:09 00:01:10 00:01:11 00:01:12 00:01:13 00:01:14 00:01:15 00:01:16 00:01:17 00:01:18 00:01:19 00:01:20 00:01:21 
 
2005-01-09,20:23:22
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【7楼】 hotpower 菜农

积分:2136
派别:
等级:------
来自:西安大雁塔村
再给一组测试值,可以看出如果在写入时就写OSCCAL = 0xc8该多好呀...
但本程序是"全天候自动调节",无须再为内部RC振荡器"忧愁烦恼"了...

哈哈...我该做个"美梦"了...


软件测试设定:
/* UART初始化 */
void uart_init(void)
{
 OSCCAL = 0xc8;//本程序测出的自动校准值(真正的漂移值)
// OSCCAL = pgm_read_byte(osc_address);
// OSCCAL = 0xb1;//双龙校准值
// OSCCAL = 0x80;//瞎写值
 UCSRB=(1<<RXEN)|(1<<TXEN)|(1<<RXCIE);//允许发送和接收
// UBRR=fosc/16/(baud+1);
// UBRRL=(fosc/16/(baud+1))%256;
// UBRRH=(fosc/16/(baud+1))/256;
// UBRRL = 21;//3.3V的漂移测定值
 UBRRL = 25;//标准值
 UBRRH = 0;
 UCSRC=(1<<URSEL)|(1<<UCSZ1)|(1<<UCSZ0);//8位数据+1位STOP位
}



00:00:01 00:00:02 00:00:03 00:00:04 00:00:05 00:00:06 00:00:07 00:00:08 00:00:09 00:00:10 00:00:11 00:00:12 00:00:13 00:00:14 00:00:15 00:00:16 00:00:17 00:00:18 00:00:19 00:00:20 00:00:21 00:00:22 00:00:23 00:00:24 00:00:25 00:00:26 00:00:27 00:00:28 00:00:29 00:00:30 00:00:31 00:00:32 00:00:33 00:00:34 00:00:35 00:00:36 00:00:37 00:00:38 00:00:39 00:00:40 00:00:41 00:00:42 00:00:43 00:00:44 00:00:45 00:00:46 00:00:47 00:00:48 00:00:49 00:00:50 00:00:51 00:00:52 00:00:53 00:00:54 00:00:55 00:00:56 00:00:57 00:00:58 
 
2005-01-09,20:38:45
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【8楼】 hotpower 菜农

积分:2136
派别:
等级:------
来自:西安大雁塔村
实际的OSCCAL逼近"曲线"...可以看出波特率不对时的"情况"...

软件测试设定:

/* UART初始化 */
void uart_init(void)
{
// OSCCAL = 0xc7;//本程序测出的自动校准值(真正的漂移值)
// OSCCAL = pgm_read_byte(osc_address);
// OSCCAL = 0xb1;//双龙校准值
 OSCCAL = 0x80;//瞎写值
 UCSRB=(1<<RXEN)|(1<<TXEN)|(1<<RXCIE);//允许发送和接收
// UBRR=fosc/16/(baud+1);
// UBRRL=(fosc/16/(baud+1))%256;
// UBRRH=(fosc/16/(baud+1))/256;
// UBRRL = 21;//3.3V的漂移测定值
 UBRRL = 25;//标准值
 UBRRH = 0;
 UCSRC=(1<<URSEL)|(1<<UCSZ1)|(1<<UCSZ0);//8位数据+1位STOP位
}

OSCCAL逼近"曲线":

00 00 02 FE 04 FE 06 FE 18 FE 1B FE 1C FE 1F FE 20 FE 23 FE 24 FE 27 FF 38 FF 3B FF 3C FF 3F FF 40 FF 43 FF 44 FF 47 FF 48 FF 4B FF 4C FF 4F FF 70 FF 73 FF 74 FF 77 FF 78 FF 7B FF 7C FF 7F 80 C3 C4 C7 C8 CB CE CF 50 51 56 57 58 59 5E 5F 60 61 62 63 6C 6D 6E 6F 78 79 7A 7B 7C 7D 7E BF C0 C1 C2 C3 C4 C5 C6 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 

由于初始化OSCCAL = 0x80即内部RC振荡器设置的发生频率很低,故头2个数据0x00实际为

OSCCAL = 0x80的启始位+0x80的低位...到倒数第3行的0xBF时,即OSCCAL = 0xbf时,串口刚能接收到正确

的数据,所以,OSCCAL = 0xbf是临界值(在UBRRL = 25时)...

但本程序还是要继续逼近真值OSCCAL = 0xc7!!!!!!!!

-----此内容被hotpower于2005-01-09,21:12:58编辑过
 
2005-01-09,21:08:27
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【9楼】 hotpower 菜农

积分:2136
派别:
等级:------
来自:西安大雁塔村
再给出测试报告的最后一页...等马老师给AVR菜鸟批改"作业"...

软件测试设定: 

/*         UART初始化            */    
void uart_init(void) 

// OSCCAL = 0xc7;//本程序测出的自动校准值(真正的漂移值) 
// OSCCAL = pgm_read_byte(osc_address); 
// OSCCAL = 0xb1;//双龙校准值 
 OSCCAL = 0xff;//瞎写值 
 UCSRB=(1<<RXEN)|(1<<TXEN)|(1<<RXCIE);//允许发送和接收 
// UBRR=fosc/16/(baud+1); 
// UBRRL=(fosc/16/(baud+1))%256; 
// UBRRH=(fosc/16/(baud+1))/256; 
// UBRRL = 21;//3.3V的漂移测定值 
 UBRRL = 25;//标准值 
 UBRRH = 0; 
 UCSRC=(1<<URSEL)|(1<<UCSZ1)|(1<<UCSZ0);//8位数据+1位STOP位 


OSCCAL逼近"曲线": 

FF FF FF FE FE FD FD FC FC FB FB FA FA F9 F8 F9 F8 F7 F6 F7 F6 F5 F4 F5 F4 F3 F2 F3 F0 F3 F2 F1 F0 EF EE ED EC EB EA E9 E8 E7 F6 F5 D4 D3 D2 D1 D0 CF CE CD CC CB CA C9 C8 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 
 
2005-01-09,21:16:27
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【10楼】 hotpower 菜农

积分:2136
派别:
等级:------
来自:西安大雁塔村
快速逼近算法"曲线"...

测试值:
OSCCAL = 0x00;

00 00 00 00 00 81 C8 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7

测试值:
OSCCAL = 0x80;

00 00 00 00 80 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7

测试值:
OSCCAL = 0xb1;

61 B1 CF C4 C8 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7

测试值:
OSCCAL = 0xc7;

C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7


测试值:
OSCCAL = 0xff;
FF FF 7F C8 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7 C7
 
2005-01-09,22:50:42
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
↑↑↑↑↑↑↑↑↑↑↑↑
抱歉本贴的回复数太多,为了减轻网络流量,只显示帖子正文的前后各10个回复。本贴的正文内容中间隐藏了37个回复。你需要 点击此处 才能查看全部内容。
对为你带来的访问不便表示歉意。不过我们仍会坚持即使没有登录,仍能共享我们网站的所有资料。你没有 登录后就能消除这个访问上的不便(可增加到显示60个回复)。
如果你是新用户请先 注册。注册是免费的,并且手续简单只需要填写用户名与口令。
↓↓↓↓↓↓↓↓↓↓↓↓
【48楼】 skyman
积分:30
派别:
等级:------
来自:
讨论这个东西真得很无聊,有那个闲心多用在实际的东西上吧,如果就少两个脚没办法用,扩充一下或者干脆换一颗大片,没必要那么烧包,况且校正后也还是有温漂等问题存在。晶振多便宜,几毛钱的东西要在这里积极外外讨论半天,累不累。
 
2007-05-11,13:10:33
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【49楼】 luole700

积分:15
派别:
等级:------
来自:杭州
有些场合对体积也有要求,而且一个晶振是便宜,一万个就不便宜了,楼主好帖!~
 
2008-01-14,20:33:27
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【50楼】 why777
积分:1
派别:
等级:------
来自:
05年的贴,现在08年了,都三年了楼主的“防火墙”在哪呢,发帖子要厚道啊~~
问题本来很简单,干嘛弄得那么神神秘秘的

本贴被 why777 编辑过,最后修改时间:2008-04-30,14:10:00.
 
2008-04-30,13:52:16
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【51楼】 trueboy
积分:169
派别:
等级:------
来自:
现在09年了
 
2009-05-31,20:14:09
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【52楼】 wuqiyang
积分:16
派别:
等级:------
来自:
明年2010年了
 
2009-08-06,16:02:50
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【53楼】 xukaiming
积分:323
派别:
等级:------
来自:湖南长沙
MARK
 
2009-08-07,14:56:00
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【54楼】 snailchen 箫寒客

积分:92
派别:
等级:------
来自:杭州
已经2010了..
 
2010-01-08,17:42:22
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【55楼】 wangsidongcx

积分:70
派别:
等级:------
来自:
真正的2010年了,唉,……
 
2010-01-15,16:45:08
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【56楼】 liliuqun
积分:134
派别:
等级:------
来自:
记号
 
2010-04-21,06:59:02
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
【57楼】 gdmfq 小马哥

积分:435
派别:
等级:------
来自:广东广州
__________________________
人生在高潮时享受成就,人生在低潮时享受生活!
2010-04-21,08:46:05
资料 邮件 回复 引用回复   ↑↑   ↓↓ 编辑 删除
↑↑↑↑↑↑↑↑↑↑↑↑
抱歉本贴的回复数太多,为了减轻网络流量,只显示帖子正文的前后各10个回复。本贴的正文内容中间隐藏了37个回复。你需要 点击此处 才能查看全部内容。
对为你带来的访问不便表示歉意。不过我们仍会坚持即使没有登录,仍能共享我们网站的所有资料。你没有 登录后就能消除这个访问上的不便(可增加到显示60个回复)。
如果你是新用户请先 注册。注册是免费的,并且手续简单只需要填写用户名与口令。
↑↑  快速回复帖子主题:想与各位探讨有关AVR的内部RC振荡器校准及补偿问题
你尚未登录,不能回复以上帖子。
AVR (原ourAVR.com) 技术论坛 -> 分类清单 -> 想与各位探讨有关AVR的内部RC振荡器校准及补偿问题 跳转至: 未登录
任何建议或投诉,欢迎随时与我们联系。 ourDEV.cn 我们的电子开发网,友好交流气氛,乐于开源共享,“这里远比混乱的现实世界美好”。
网站负责人:  阿莫(armok),手机:13433056000,电邮:armok ourdev.cn(请将空格改成@)
地址与电话:  东莞市东城八一路同沙工业园内,0769-22298000,传真请按4
 阿莫邮购门市与雕刻机展示厅:东莞市莞城区莞太路和生文具礼品批发市场A2018,A2035 杨小姐 13711915767
 雕刻机的技术咨询、订单查询、生产进度,可查询:13600266008吴先生(雕刻机设计人员kaif_w)
声明:  本网站由东莞科士通(Infostone)科技有限公司属下的阿莫电子邮购部提供独家赞助。
 有正式的工商注册与网站备案。详情可到东莞工商局查询。
 本网站(ourDEV.cn)原名称为ourAVR.com(我们的AVR),自2007-09-01起从专业的AVR网转成综合电子网站。
 本网站系统由armok Using Oracle + Java/JSP + WebLogic + Linux 2001/12/20 -- 2007/09/13
 本BBS所有代码均为原创,版权归 armok 所有。本网站自:2004-10-03,16:31:17 起开始运行。
法律顾问:  本网站尊重知识产权,自2007年08月15日起,魏龙律师担任ourDEV.cn(原ourAVR.com)常年法律顾问。

本网站已经通过了东莞市公安局安全认证许可,请大家遵守国家法律法规。粤ICP备09047143号