切换到宽版
  • 8921阅读
  • 17回复

[C51]AD7705测试程序串口输出 [复制链接]

上一主题 下一主题
离线lbq691477940
 

发帖
732
M币
1869
专家
11
粉丝
61
只看楼主 倒序阅读 使用道具 楼主  发表于: 2012-06-03
AD7705测试程序串口输出,直接读取出来的线性还算可以,上图






labview通过串口通信控制和读取端口及AD转换

/******************************************************************************************************
        通过串口通信控制和读取端口
上位机发送十六进制的FF55(协议头)加如下对应操作码:
1>端口操作方式写:
     0xAA + 端口号可将对应的端口置低
     0xAB + 端口号可将对应的端口置高
2>寄存器操作方式写:
     0xA0 + 立即数可对P0所有口输出对应的立即数
     0xA1 + 立即数可对P1所有口输出对应的立即数
     0xA2 + 立即数可对P2所有口输出对应的立即数
     0xA3 + 立即数可对P3所有口输出对应的立即数
1>端口操作方式读:
     0xAC + 端口号可将对应的端口高低读回上位机
     当该为低会收到十六进制的00
     当该为高会收到十六进制的01
2>寄存器操作方式读:
     0xAD + 0xA0可对P0所有口的读并以十六进制返回P0所有端口的值
     0xAD + 0xA1可对P1所有口的读并以十六进制返回P1所有端口的值
     0xAD + 0xA2可对P2所有口的读并以十六进制返回P2所有端口的值
     0xAD + 0xA3可对P3所有口的读并以十六进制返回P3所有端口的值
2>AD7705进行AD转换:
     0xAD + 0xDA则从串口上返回被测量的值
     AD7705会占用4个I/O口及串口通信故P3端口,故剩1个I/O口了不进行其他操作
/******************************************************************************************************
   端口号定义:(P3.0与P3.1不能控制)
   P0.0 = 00  P1.0 = 10  P2.0 = 20  
   P0.1 = 01  P1.1 = 11  P2.1 = 21  
   P0.2 = 02  P1.2 = 12  P2.2 = 20  
   P0.3 = 03  P1.3 = 13  P2.3 = 23  
   P0.4 = 04  P1.4 = 14  P2.4 = 24  
   P0.5 = 05  P1.5 = 15  P2.5 = 25  
   P0.6 = 06  P1.6 = 16  P2.6 = 26  
   P0.7 = 07  P1.7 = 17  P2.7 = 27  
  MCU = STC12C5A60S2   晶振 = 11.0592MHZ  波特率 = 57600  
  MCU = STC12C5A60S2   晶振 = 22.1184MHZ  波特率 = 115200  22-03-2012
升级记录:
   1.取消对P3端口操作并增加AD转换      
                  04-06-2012
/******************************************************************************************************/
HEX文件
[ 此帖被lbq691477940在2012-06-04 19:35重新编辑 ]
本文内容包含图片或附件,获取更多资讯,请 登录 后查看;或者 注册 成为会员获得更多权限
本帖最近打赏记录:共2条打赏M币+10
liqiaofeng M币 +5 謝謝分享 2012-06-03
xrsxrs M币 +5 謝謝分享 2012-06-03
离线ranfei37

发帖
6505
M币
17838
专家
1
粉丝
35
只看该作者 1楼 发表于: 2012-06-03
看看,顶了· ·
离线Ω囿圉Ω

发帖
10026
M币
7576
专家
10
粉丝
189
只看该作者 2楼 发表于: 2012-06-04
用AD7707的路过。。。。。。。。。。
精确到0.1mV
离线国泰科技

发帖
57577
M币
695
专家
301
粉丝
1001
只看该作者 3楼 发表于: 2012-06-05
正在學習這個。樓主技術很好啊。學習了。
离线lbq691477940

发帖
732
M币
1869
专家
11
粉丝
61
只看该作者 4楼 发表于: 2012-06-18
引用第2楼Ω囿圉Ω于2012-06-04 21:56发表的  :
用AD7707的路过。。。。。。。。。。
精确到0.1mV

AD7707好像也是16BIT的做到0.1mv??请问你的量程是多少?采样速度又是多少?
离线meteor2003x

发帖
607
M币
3085
专家
-1
粉丝
24
只看该作者 5楼 发表于: 2013-05-03
单片机串行读取还没学会的来顶下,羡慕啊
在线jdsuchen

发帖
189
M币
290
专家
0
粉丝
3
只看该作者 6楼 发表于: 2013-12-31
买了几片TM7705,也准备弄个玩玩
离线林树琪
发帖
1
M币
-200
专家
0
粉丝
0
只看该作者 7楼 发表于: 2015-07-20
学习了!!!!
离线dijiadijia
发帖
1
M币
-497
专家
0
粉丝
0
只看该作者 8楼 发表于: 2015-07-23
谢谢分享,希望能够有用
离线13974945509
发帖
1
M币
-494
专家
0
粉丝
0
只看该作者 9楼 发表于: 2015-08-01
谢谢分享 。   很不错
快速回复
限80 字节
“新手上路”发帖需审核后才能显示(请认真发帖),达到数码9级后取消此限制
 
上一个 下一个