久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费
標題:
STC12C5A60S2自帶AD與TL5615DA轉換芯片完成AD/DA轉換Keil程序(模擬串口發送)
[打印本頁]
作者:
awer
時間:
2019-1-12 10:19
標題:
STC12C5A60S2自帶AD與TL5615DA轉換芯片完成AD/DA轉換Keil程序(模擬串口發送)
/******************************************/
/************* 用戶系統配置 **************/
#define MAIN_Fosc 22118400L //定義主時鐘, 模擬串口和和延時會自動適應。5~35MHZ
/************* 以下宏定義用戶請勿修改 **************/
#include "reg51.H"
#define uchar unsigned char
#define uint unsigned int
/******************************************/
sfr P1ASF = 0x9D; //12C5204AD/S2系列模擬輸入(AD或LVD)選擇
sfr ADC_CONTR = 0xBC; //帶AD系列
sfr ADC_RES = 0xBD; //帶AD系列
sfr ADC_RESL = 0xBE; //帶AD系列
// 7 6 5 4 3 2 1 0 Reset Value
//sfr ADC_CONTR = 0xBC; ADC_POWER SPEED1 SPEED0 ADC_FLAG ADC_START CHS2 CHS1 CHS0 0000,0000 //AD 轉換控制寄存器
#define ADC_OFF() ADC_CONTR = 0
#define ADC_ON (1 << 7)
#define ADC_90T (3 << 5)
#define ADC_180T (2 << 5)
#define ADC_360T (1 << 5)
#define ADC_540T 0
#define ADC_FLAG (1 << 4) //軟件清0
#define ADC_START (1 << 3) //自動清0
#define ADC_CH0 0
#define ADC_CH1 1
#define ADC_CH2 2
#define ADC_CH3 3
#define ADC_CH4 4
#define ADC_CH5 5
#define ADC_CH6 6
#define ADC_CH7 7
/************* 本地變量聲明 **************/
sbit P_TXD1 = P3^1;
/************* 本地函數聲明 **************/
void Tx1Send(uchar dat);
void PrintString(unsigned char code *puts);
void delay_ms(unsigned char ms);
uchar GetAdc8(uchar channel); //channel = 0~7
void TX_ADC(uchar chn, uchar adc)
{
Tx1Send('A');
Tx1Send('D');
Tx1Send(chn+'0');
Tx1Send('=');
Tx1Send(adc / 100 + '0');
Tx1Send(adc % 100 / 10 + '0');
Tx1Send(adc % 10 + '0');
Tx1Send(0x0d);
Tx1Send(0x0a);
}
/********************* 主函數 *************************/
/********************* 做一次ADC轉換 *******************/
uchar GetAdc8(uchar channel) //channel = 0~7
{
uchar i;
ADC_RES = 0;
ADC_CONTR = (ADC_CONTR & 0xe0) | ADC_START | channel;
for(i=0; i<250; i++) //13T/loop, 40*13=520T=23.5us @ 22.1184M
{
if(ADC_CONTR & ADC_FLAG)
{
ADC_CONTR &= ~ADC_FLAG;
return ADC_RES;
}
}while(--i);
return 0; //錯誤
}
//========================================================================
// 函數: void delay_ms(unsigned char ms)
// 描述: 延時函數。
// 參數: ms,要延時的ms數.
// 返回: none.
// 版本: VER1.0
// 日期: 2010-12-15
// 備注:
//========================================================================
void delay_ms(unsigned char ms)
{
unsigned int i;
do{
i = MAIN_Fosc / 14000;
while(--i) ; //14T per loop
}while(--ms);
}
/********************** 模擬串口相關函數************************/
void BitTime(void) //位時間函數
{
uint i;
i = ((MAIN_Fosc / 100) * 104) / 140000L - 1; //根據主時鐘來計算位時間
while(--i);
}
//模擬串口發送
void Tx1Send(uchar dat) //9600,N,8,1 發送一個字節
{
uchar i;
EA = 0;
P_TXD1 = 0;
BitTime();
for(i=0; i<8; i++)
{
if(dat & 1) P_TXD1 = 1;
else P_TXD1 = 0;
dat >>= 1;
BitTime();
}
P_TXD1 = 1;
EA = 1;
BitTime();
BitTime();
}
void PrintString(unsigned char code *puts) //發送一串字符串
{
for (; *puts != 0; puts++) Tx1Send(*puts); //遇到停止符0結束
}
復制代碼
#include "ad.h"
#include "da.h"
#include <reg51.h>
void main(void)
{
double j;
PrintString("****** STC12C5204AD系列ADC程序 2011-02-27 ******\r\n"); //上電后串口發送一條提示信息
// P1ASF = ((1 << ADC_CH0) + (1 << ADC_CH1) + (1 << ADC_CH2)); //12C5204AD系列模擬輸入(AD)選擇
P1ASF = ((1 << ADC_CH0) + (1 << ADC_CH6) + (1 << ADC_CH7)); //12C5204AD系列模擬輸入(AD)選擇
ADC_CONTR = ADC_360T | ADC_ON;
while(1)
{
delay_ms(250); //1秒轉換1次
delay_ms(250);
delay_ms(250);
delay_ms(250);
/*
GetAdc8(0); // P1.0 ADC, 丟棄
j = GetAdc8(0); // P1.0 ADC
TX_ADC(0,j);
// GetAdc8(1); // P1.1 ADC, 丟棄
// j = GetAdc8(1); // P1.1 ADC
// TX_ADC(1,j);
GetAdc8(6); // P1.1 ADC, 丟棄
j = GetAdc8(6); // P1.1 ADC
TX_ADC(6,j);
// GetAdc8(2); // P1.2 ADC, 丟棄
// j = GetAdc8(2); // P1.2 ADC
// TX_ADC(2,j);
GetAdc8(7); // P1.1 ADC, 丟棄
j = GetAdc8(7); // P1.1 ADC
TX_ADC(7,j);
Tx1Send(0x0d);
Tx1Send(0x0a);
*/
GetAdc8(6); // P1.1 ADC, 丟棄
j = GetAdc8(6); // P1.1 ADC
j=j*5.0/256.0;
PLC5615_writeV(j);
}
}
這是主函數的部分,有字數限制,發不了那么多啊
全部資料51hei下載地址:
AD與DA直接轉.zip
(42.05 KB, 下載次數: 43)
2019-1-12 10:17 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
作者:
hxszrb
時間:
2020-2-13 22:05
學習來的,感謝分享
歡迎光臨 (http://www.zg4o1577.cn/bbs/)
Powered by Discuz! X3.1
主站蜘蛛池模板:
婷婷久久五月
|
成人高潮片免费视频欧美
|
亚洲欧美激情视频
|
欧美日日
|
日韩欧美1区2区
|
在线播放中文字幕
|
欧美成人视屏
|
成人在线一级片
|
91啪影院
|
国产成人啪免费观看软件
|
国产精品一区二区欧美
|
欧美国产日韩一区二区三区
|
免费黄色片在线观看
|
亚洲人成网亚洲欧洲无码
|
激情婷婷
|
久草视频在线播放
|
91看片在线观看
|
欧美中文一区
|
中文字幕在线视频免费视频
|
亚洲视频中文字幕
|
天堂三级
|
午夜国产一级片
|
久久欧美高清二区三区
|
视频一区二区在线观看
|
国产精品s色
|
亚洲天堂999
|
日日摸日日碰夜夜爽亚洲精品蜜乳
|
日韩欧美在线播放
|
国产丝袜一区二区三区免费视频
|
欧美精品在线一区
|
亚洲欧美中文字幕在线观看
|
欧美日韩一区精品
|
中文区中文字幕免费看
|
色综合久久久久
|
国产精品视频专区
|
欧美国产日韩一区二区三区
|
久久久99国产精品免费
|
成人av观看
|
亚洲自拍偷拍视频
|
精品粉嫩aⅴ一区二区三区四区
|
久久婷婷国产麻豆91
|