標(biāo)題: tlc0838 8個通道AD采樣程序誰有 51單片機(jī) [打印本頁]
作者: apc123456 時間: 2016-6-23 13:04
標(biāo)題: tlc0838 8個通道AD采樣程序誰有 51單片機(jī)
tlc0838 8個通道AD采樣程序誰有 51單片機(jī)
作者: 969 時間: 2016-6-23 14:22
要匯編的 還是C語言的。
作者: 969 時間: 2016-6-23 14:22
ORG 0000H
LJMP SE11
ORG 0080H
SE11: MOV SP,#53H
mov p2,#0ffh
MOV A,#43H
MOV DPTR,#0FF20H
MOVX @DPTR,A
MOV 7EH,#00H
MOV 7DH,#08H
MOV 7CH,#00H
MOV 7BH,#09H
MOV 7AH,#10H
MOV 79H,#10H ;顯示緩沖區(qū)初值
LO18: LCALL SSEE ;調(diào)用顯示子程序
MOV A,#00H
MOV DPTR,#8000H
MOVX @DPTR,A ;0809的0通道采樣
MOV R7,#0FFH ;延時
LO17: DJNZ R7,LO17
MOVX A,@DPTR ;取出采樣值
MOV R0,#79H
LCALL PTDS
SJMP LO18 ;采樣值送顯示緩沖區(qū)
ORG 05D0H
PTDS: MOV R1,A
ACALL PTDS1
MOV A,R1
SWAP A
PTDS1: ANL A,#0FH
MOV @R0,A
INC R0
RET
作者: 969 時間: 2016-6-23 14:24
SSEE: SETB RS1 ;換工作區(qū)
MOV R5,#05H
SSE2: MOV 30H,#20H
MOV 31H,#7EH
MOV R7,#06H
SSE1: MOV A,30H
CPL A
MOV DPTR,#0FF21H ;字位送入
MOVX @DPTR,A
MOV R0,31H
MOV A,@R0
MOV DPTR,#DDFF
MOVC A,@A+DPTR ;取字形代碼
MOV DPTR,#0FF22H ;字形送入
MOVX @DPTR,A
MOV A,30H
RR A ;右移
MOV 30H,A
DEC 31H
MOV A,#0FFH
MOV DPTR,#0FF22H ;關(guān)顯示
MOVX @DPTR,A
DJNZ R7,SSE1 ;六位顯示完了嗎?
DJNZ R5,SSE2
CLR RS1
RETSSEE: SETB RS1 ;換工作區(qū)
MOV R5,#05H
SSE2: MOV 30H,#20H
MOV 31H,#7EH
MOV R7,#06H
SSE1: MOV A,30H
CPL A
MOV DPTR,#0FF21H ;字位送入
MOVX @DPTR,A
MOV R0,31H
MOV A,@R0
MOV DPTR,#DDFF
MOVC A,@A+DPTR ;取字形代碼
MOV DPTR,#0FF22H ;字形送入
MOVX @DPTR,A
MOV A,30H
RR A ;右移
MOV 30H,A
DEC 31H
MOV A,#0FFH
MOV DPTR,#0FF22H ;關(guān)顯示
MOVX @DPTR,A
DJNZ R7,SSE1 ;六位顯示完了嗎?
DJNZ R5,SSE2
CLR RS1
RET
作者: 969 時間: 2016-6-23 14:25
數(shù)表
DDFF: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
DB 88H,83H,0C6H,0A1H,86H,8EH,0FFH,0CH,89H,0DEH
END
作者: apc123456 時間: 2016-6-23 15:34
我想要C語言的吧 先謝謝了
作者: apc123456 時間: 2016-6-23 15:37
能給個C語言的嗎
作者: zhahan1990 時間: 2016-6-23 15:46
網(wǎng)上一找一片啊
作者: apc123456 時間: 2016-6-23 15:56
找了半天沒看到
作者: admin 時間: 2016-6-23 21:59
tlc0838程序:http://www.raoushi.com/bbs/dpj-52539-1.html
作者: zl2168 時間: 2016-6-23 22:31
本帖最后由 zl2168 于 2016-6-23 22:52 編輯
9.1.2 并行ADC0809及其接口電路
實例81 ADC0808中斷方式A-D(ALE輸出CLK)
實例81 ADC0808A-D( ALE輸出CLK,中斷方式).rar
(54.32 KB, 下載次數(shù): 13)
2016-6-23 22:33 上傳
點擊文件名下載附件
0809ad1.jpg (314.76 KB, 下載次數(shù): 116)
下載附件
2016-6-23 22:45 上傳
以上摘自張志良編著《單片機(jī)實驗實訓(xùn)100例》 ISBN 978-7-5124-1603-1,北航社出版
《單片機(jī)原理與控制技術(shù)——雙解匯編和C51》第3版ISBN 978-7-111-42393-5機(jī)械工業(yè)出版社
《80C51單片機(jī)實用教程——基于Keil C和Proteus》高等教育出版社ISBN 978-7-04-044532-9
書中電路和程序設(shè)計有詳細(xì)說明,程序語句條條有注解。
-
-
實例82 ADC0808A-D( ALE輸出CLK,查詢方式).rar
2016-6-23 22:33 上傳
點擊文件名下載附件
54.04 KB, 下載次數(shù): 11
-
-
實例83 ADC0808A-D( ALE輸出CLK,延時等待方式).rar
2016-6-23 22:34 上傳
點擊文件名下載附件
54.13 KB, 下載次數(shù): 7
-
-
實例84 ADC0808A-D(虛擬CLK).rar
2016-6-23 22:34 上傳
點擊文件名下載附件
35.75 KB, 下載次數(shù): 10
作者: 2589693655 時間: 2016-6-23 22:33
看看啊
作者: zl2168 時間: 2016-6-23 22:52
本帖最后由 zl2168 于 2016-6-23 22:54 編輯
實例82 ADC0808查詢方式A-D(ALE輸出CLK)
先Proteus仿真一下,確認(rèn)有效。
0809ad2.jpg (313.32 KB, 下載次數(shù): 135)
下載附件
2016-6-23 22:53 上傳
以上摘自張志良編著《單片機(jī)實驗實訓(xùn)100例》 ISBN 978-7-5124-1603-1,北航社出版
《單片機(jī)原理與控制技術(shù)——雙解匯編和C51》第3版ISBN 978-7-111-42393-5機(jī)械工業(yè)出版社
《80C51單片機(jī)實用教程——基于Keil C和Proteus》高等教育出版社ISBN 978-7-04-044532-9
書中電路和程序設(shè)計有詳細(xì)說明,程序語句條條有注解。
作者: zl2168 時間: 2016-6-23 22:55
本帖最后由 zl2168 于 2016-6-23 22:56 編輯
實例83 ADC0808延時方式A-D(ALE輸出CLK)
先Proteus仿真一下,確認(rèn)有效。
0809ad3.jpg (311 KB, 下載次數(shù): 126)
下載附件
2016-6-23 22:55 上傳
以上摘自張志良編著《單片機(jī)實驗實訓(xùn)100例》 ISBN 978-7-5124-1603-1,北航社出版
《單片機(jī)原理與控制技術(shù)——雙解匯編和C51》第3版ISBN 978-7-111-42393-5機(jī)械工業(yè)出版社
《80C51單片機(jī)實用教程——基于Keil C和Proteus》高等教育出版社ISBN 978-7-04-044532-9
書中電路和程序設(shè)計有詳細(xì)說明,程序語句條條有注解。
作者: zl2168 時間: 2016-6-23 22:56
本帖最后由 zl2168 于 2016-6-23 22:58 編輯
實例84 ADC0808并行A-D(虛擬CLK)
先Proteus仿真一下,確認(rèn)有效。
0809ad4.jpg (242.47 KB, 下載次數(shù): 124)
下載附件
2016-6-23 22:57 上傳
以上摘自張志良編著《單片機(jī)實驗實訓(xùn)100例》 ISBN 978-7-5124-1603-1,北航社出版
《單片機(jī)原理與控制技術(shù)——雙解匯編和C51》第3版ISBN 978-7-111-42393-5機(jī)械工業(yè)出版社
《80C51單片機(jī)實用教程——基于Keil C和Proteus》高等教育出版社ISBN 978-7-04-044532-9
書中電路和程序設(shè)計有詳細(xì)說明,程序語句條條有注解。
作者: zl2168 時間: 2016-6-23 22:59
以上都是8路AD,匯編和C51雙解。
作者: apc123456 時間: 2016-6-24 10:31
太感謝了 謝謝大家?guī)兔?hr noshade size="2" width="100%" color="#808080">
作者: apc123456 時間: 2016-6-24 10:31
感謝大家的幫忙
作者: apc123456 時間: 2016-6-25 10:31
這個程序檢查不過,那位大師看下
#include<reg51.h>
#include <intrins.h>
sbit ADCS1=P1^3 ;
sbit ADCS2=P1^0 ;
sbit ADCLK=P1^1 ;
sbit ADIO=P1^4 ;
Byte AD_0838(Byte TDZ,Byte Number);
void AD_0838_Pulse(void) ;
void main(void)
{
Byte data1;
data1=AD_0838(0,2);
while(1);
{
P0=AD_0838 ;
}
}
/**********************************************************
目的:運用TLC0838,輸入通道值,讀取AD轉(zhuǎn)換值
輸入?yún)?shù):1、通道值TDZ
輸出參數(shù):1、AD轉(zhuǎn)換結(jié)果AD_JG
相關(guān)管腳:1、ADCS1=P1^3 第一個0838-AD片選 2、ADCS2=P1^0 第二個0838-AD片選
3、ADCLK=P1^1 0832-AD時鐘 4 、ADIO=P1^4 0832-AD數(shù)據(jù)
*/
Byte AD_0838(Byte TDZ,Byte Number)
{
Byte Bit[8];
Byte TDZ_MID;
Byte i;
Byte AD_JG=0x00;
Bit[0]=0x01;
Bit[1]=0x02;
Bit[2]=0x04;
Bit[3]=0x08;
Bit[4]=0x10;
Bit[5]=0x20;
Bit[6]=0x40;
Bit[7]=0x80;
switch(TDZ)
{
case 0 :TDZ_MID=0x18;break;
case 1 :TDZ_MID=0x1c;break;
case 2 :TDZ_MID=0x19;break;
case 3 :TDZ_MID=0x1d;break;
case 4 :TDZ_MID=0x1a;break;
case 5 :TDZ_MID=0x1e;break;
case 6 :TDZ_MID=0x1b;break;
case 7 :TDZ_MID=0x1f;break;
}
switch(Number)
{
case 1:ADCS1=1;break;
case 2:ADCS2=1;break;
}
RS_ADIO=0;
CM8880CLK_ADCLK=0;
switch(Number)
{
case 1:ADCS1=0;break;
case 2:ADCS2=0;break;
}
for(i=5;i>0;i--)
{
RS_ADIO=TDZ_MID&Bit[i-1];
AD_0838_Pulse();
}
CM8880CLK_ADCLK=1;
for(i=8;i>0;i--)
{
AD_0838_Pulse();
if(RS_ADIO)AD_JG|=Bit[i-1];
}
switch(Number)
{
case 1:ADCS1=1;break;
case 2:ADCS2=1;break;
}
return AD_JG;
}
void AD_0838_Pulse(void)
{
Byte i;
CM8880CLK_ADCLK=1; //get a pulse about 52 us
for(i=0;i<4;i++)
{
_nop_();
}
CM8880CLK_ADCLK=0;
for(i=0;i<4;i++)
{
_nop_();
}
}
作者: apc123456 時間: 2016-6-25 10:46
C:\Users\Administrator\Desktop
作者: apc123456 時間: 2016-6-25 12:44
故障c129
作者: zl2168 時間: 2016-6-25 17:58
本帖最后由 zl2168 于 2016-6-25 18:05 編輯
實例85 ADC0832串行A-D(TXD輸出CLK)
ADC0832與0838串行A-D時序只差一位,0832是2路ad,4種方式,需2位選通;0838是8路ad,需3位選通。選通方式相同,讀A-D值方式也相同,完全可做參考。
先Proteus仿真一下,確認(rèn)有效。
txd-clk.jpg (205.49 KB, 下載次數(shù): 127)
下載附件
2016-6-25 17:58 上傳
以上摘自張志良編著《單片機(jī)實驗實訓(xùn)100例》 ISBN 978-7-5124-1603-1,北航社出版
書中電路和程序設(shè)計有詳細(xì)說明,程序語句條條有注解。
作者: zl2168 時間: 2016-6-25 18:06
本帖最后由 zl2168 于 2016-6-25 18:08 編輯
實例86 ADC0832串行A-D(虛擬CLK)
ADC0832與0838串行A-D時序只差一位,0832是2路ad,4種方式,需2位選通;0838是8路ad,需3位選通。選通方式相同,讀A-D值方式也相同,完全可做參考。
ADC 0832串行A-D既可用80C51串行口TXD和RXD控制操作,也可用P0~P3口中任一端線虛擬CLK時鐘脈沖,實現(xiàn)串行A-D轉(zhuǎn)換。
先Proteus仿真一下,確認(rèn)有效。
虛擬-clk.jpg (195.86 KB, 下載次數(shù): 125)
下載附件
2016-6-25 18:07 上傳
以上摘自張志良編著《單片機(jī)實驗實訓(xùn)100例》 ISBN 978-7-5124-1603-1,北航社出版
書中電路和程序設(shè)計有詳細(xì)說明,程序語句條條有注解。
作者: zl2168 時間: 2016-6-25 18:10
本帖最后由 zl2168 于 2016-6-25 18:17 編輯
網(wǎng)上下載的程序你看得懂嗎?還有錯呢!還是看張志良編著《單片機(jī)實驗實訓(xùn)100例》吧!書中電路和程序設(shè)計有詳細(xì)說明,程序語句條條有注解。有Proteus仿真確認(rèn)有效,編者還負(fù)責(zé)答疑。
作者: zl2168 時間: 2016-6-25 18:15
網(wǎng)上下載的那個程序是人家寫的論文,寫論文就是要讓人看了半懂不懂,才顯得有水平,大家都看懂了,這個論文還值錢嗎?再加上原文幾經(jīng)轉(zhuǎn)載,生成了許多錯誤誤,你就更看不懂了。
作者: zl2168 時間: 2016-6-25 18:19
假大師看不懂,真大師沒空看。
| 歡迎光臨 (http://www.raoushi.com/bbs/) |
Powered by Discuz! X3.1 |